1.请问如何获取IE版本号和office版本号?
2.通过API函数可以获得系统一些信息,但是我还想获取windows版本的详细信息,如:GetVersionEx()只能分别win32,win95/98,win/nt这三种版本,可是我想能得到更详细的,就像查看‘我的电脑’的‘属性’那里看到的。
2.通过API函数可以获得系统一些信息,但是我还想获取windows版本的详细信息,如:GetVersionEx()只能分别win32,win95/98,win/nt这三种版本,可是我想能得到更详细的,就像查看‘我的电脑’的‘属性’那里看到的。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Version Vector
HKEY_CURRENT_USER\Software\Microsoft\Office\9.0 //9.0
IE
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Version Vector
PFixedFileInfo = ^TFixedFileInfo;
TFixedFileInfo = record
dwSignature : DWORD;
dwStrucVersion : DWORD;
wFileVersionMS : WORD; // 次版本号
wFileVersionLS : WORD; // 主版本号
wProductVersionMS : WORD; // 建立次数(build)
wProductVersionLS : WORD; // 发行次数(release)
dwFileFlagsMask : DWORD;
dwFileFlags : DWORD;
dwFileOS : DWORD;
dwFileType : DWORD;
dwFileSubtype : DWORD;
dwFileDateMS : DWORD;
dwFileDateLS : DWORD;
end;
function FileInfo( const FileName :String ) : TFixedFileInfo;
var
dwHandle, dwVersionSize : DWORD;
strSubBlock : String;
pTemp : Pointer;
pData : Pointer;
begin
strSubBlock := '\'; // 取得文件版本信息的大小
dwVersionSize := GetFileVersionInfoSize( PChar( FileName ), dwHandle );
if dwVersionSize <> 0 then
begin
GetMem( pTemp, dwVersionSize );
try
//取文件版本信息
if GetFileVersionInfo( PChar( FileName ),dwHandle,
dwVersionSize,pTemp ) then
//查询文件版本信息
if VerQueryValue( pTemp,PChar( strSubBlock ),
pData,dwVersionSize ) then
Result := PFixedFileInfo( pData )^;
finally
FreeMem( pTemp );
end; // try
end; // if dwVersionSize
end;procedure TForm1.Button3Click(Sender: TObject);
var
f1:string;
x :TFixedFileInfo;
begin
f1 := 'C:\Program Files\Internet Explorer\IEXPLORE.EXE';
x := FileInfo( f1 );
ShowMessage( f1 +
#13#10'Version: ' + IntToStr( x.wFileVersionLS ) + '.' +
IntToStr( x.wFileVersionMS ) +
#13#10'Release: ' + IntToStr( x.wProductVersionLS) +
#13#10'Build: ' + IntToStr( x.wProductVersionMS ) );end;end.