----赖格英-----

记忆不好了,记录工作中的点点滴滴....

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
function GetApplicationVersion:String;  // Added  取得程序版本号 
var 
   FileName:String;    
   InfoSize,Wnd:DWORD;    
   VerBuf:Pointer;    
   VerInfo:^VS_FIXEDFILEINFO;  
begin 
   Result:='0.0.0.0';  
   FileName:=Application.ExeName;  
   InfoSize:=GetFileVersionInfoSize(PChar(FileName),Wnd);  
   if InfoSize<>0 then  
   begin    
   GetMem(VerBuf,InfoSize);    
   try      
      if GetFileVersionInfo(PChar(FileName),Wnd,InfoSize,VerBuf) then      
      begin        
          VerInfo:=nil;        
          VerQueryValue(VerBuf,'\',Pointer(VerInfo),Wnd);        
         if VerInfo<>nil then Result:=Format('%d.%d.%d.%d',[VerInfo^.dwFileVersionMS shr 16, VerInfo^.dwFileVersionMS and $0000ffff,VerInfo^.dwFileVersionLS shr 16,  VerInfo^.dwFileVersionLS and $0000ffff]);      
     end;    
   finally      
       FreeMem(VerBuf,InfoSize);    
   end;  
  end;  
end;

 

posted on 2016-02-04 20:30  向北方  阅读(1626)  评论(0编辑  收藏  举报