delphi 检测文件数字签名  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 检测文件数字签名


Uses Winapi.Windows, JwaSoftpub, CAPICOM_TLB, JwaWintrust;
 
Function IsCodeSigned(const Filename:String):Boolean;
var
  FileInfo   :TWinTrustFileInfo;
  TrustData  :TWinTrustData;
begin
  ZeroMemory(@FileInfo, SizeOf(TWintrustFileInfo));
  ZeroMemory(@TrustData, SizeOf(TWinTrustData));
  FileInfo.cbStruct             := SizeOf(TWintrustFileInfo);
  FileInfo.pcwszFilePath        := PWideChar(FileName);
  TrustData.cbStruct            := sizeof(TrustData);
  TrustData.dwUIChoice          := WTD_UI_NONE;
  TrustData.fdwRevocationChecks := WTD_REVOKE_NONE;
  TrustData.dwUnionChoice       := WTD_CHOICE_FILE;
  TrustData.InfoUnion.pFile     := @FileInfo;
  Result := WinVerifyTrust(INVALID_HANDLE_VALUE, WINTRUST_ACTION_GENERIC_VERIFY_V2, TrustData) = ERROR_SUCCESS;
end;

推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.041196823120117 seconds