自寫 C 語言程式 (含 `system("pause")` 等) 編譯後發給他人,被主流殺毒軟體 (360、火綜、Windows Defender) 直接查殺或攔截。
使用 Inno Setup / NSIS / WiX 打包為 `.exe` 安裝包,包含:
安裝程式比裸 `.exe` 更易被信任。
; MyProg.iss
[Setup]
AppName=My Little Tool
AppVersion=1.0
DefaultDirName={pf}\MyTool
OutputDir=dist
OutputBaseFilename=MyToolSetup
SignTool=signtool.exe /a /v /fd sha256 /tr https://timestamp.digicert.com /td sha256 $f
[Files]
Source: "MyProg.exe"; DestDir: "{app}"; Flags: ignoreversion
[Icons]
Name: "{group}\My Tool"; Filename: "{app}\MyProg.exe"
Name: "{commondesktop}\My Tool"; Filename: "{app}\MyProg.exe"
[UninstallDelete]
Type: filesandordirs; Name: "{app}"
「做成可安裝形式」確實能大幅降低誤報,因為安裝包具有正規軟體特徵 (簽章、資源、解除安裝)。結合數位簽章與白名單提交,基本可解決個人/小團隊分發的誤報問題。