1 2 //--------------------------------------------------------------------------- 3 4 #include <vcl.h> 5 #include <Registry.hpp> 6 #pragma hdrstop 7 8 #include "Unit1.h" 9 //--------------------------------------------------------------------------- 10 #pragma package(smart_init) 11 #pragma resource "*.dfm" 12 TForm1 *Form1; 13 //--------------------------------------------------------------------------- 14 __fastcall TForm1::TForm1(TComponent* Owner) 15 : TForm(Owner) 16 { 17 } 18 //--------------------------------------------------------------------------- 19 20 AnsiString GetMSWordVersion(void){ 21 AnsiString sVersionStr; 22 char cVer; 23 TRegistry *Reg = new TRegistry(); 24 Reg->RootKey=HKEY_CLASSES_ROOT; 25 if (Reg->KeyExists("Word.Application\\CurVer")){ 26 if (Reg->OpenKey("Word.Application\\CurVer",false)){ 27 sVersionStr= Reg->ReadString(""); 28 sVersionStr= sVersionStr.SubString(LastDelimiter(".", sVersionStr)+1,4); 29 if (sVersionStr == "7"){ 30 sVersionStr ="MS Word 95"; 31 } 32 else if (sVersionStr == "8"){ 33 sVersionStr ="MS Word 97"; 34 } 35 else if (sVersionStr == "9"){ 36 sVersionStr ="MS Word 2000"; 37 } 38 else if (sVersionStr == "10"){ 39 sVersionStr ="MS Word 2002/XP"; 40 } 41 else if (sVersionStr == "11"){ 42 sVersionStr ="MS Word 2003/XP"; 43 } 44 else { 45 sVersionStr ="UNKNOWN!"; 46 } 47 } 48 } 49 else{ 50 sVersionStr="NOT Found!"; 51 } 52 Reg->Free(); 53 return sVersionStr; 54 } 55 56 57 58 void __fastcall TForm1::Button1Click(TObject *Sender) 59 { 60 ShowMessage(GetMSWordVersion()); 61 } 62 //--------------------------------------------------------------------------- 63