/keyfile
指定包含金鑰或金鑰組的檔案,以便為組件指定強式名稱。
/keyfile:file
引數
- file
必要項。 包含金鑰的檔案。 如果檔案名稱包含空格,請將名稱加上英文引號 (" ")。
備註
編譯器將公開金鑰插入至組件資訊清單,然後利用私密金鑰簽署最後的組件。 若要產生金鑰檔,請在命令列中輸入 sn -k file。 如需詳細資訊,請參閱 Sn.exe (強式名稱工具)。
如果您使用 /target:module 進行編譯,該金鑰檔的名稱便會儲存在模組中,並會合併至使用 /addmodule 編譯組件時所建立的組件。
您也可使用 /keycontainer 將加密資訊傳給編譯器。 如果您想要部分簽署的組件,請使用 /delaysign。
您也可以在原始程式碼中,為任何 Microsoft Intermediate Language 模組指定這個選項當做自訂屬性 (AssemblyKeyFileAttribute)。
若在同一次編譯過程中指定 /keyfile 與 /keycontainer (不論是以命令列選項或是自訂屬性的方式),編譯器都會先試用金鑰容器。 如果這個動作成功,那麼組件就會使用金鑰容器中的資訊加以簽署。 如果編譯器找不到金鑰容器,它會嘗試使用 /keyfile 指定的檔案。 成功的話,組件會以金鑰檔內的資訊簽署,並且金鑰資訊將安裝於金鑰容器內 (類似於 sn -i),以便在下次編譯時,金鑰容器可變為有效。
請注意,金鑰檔可能只包含公開金鑰。
如需組件簽署的詳細相關資訊,請參閱建立和使用強式名稱的組件。
注意事項 |
---|
從 Visual Studio 開發環境內無法使用 /keyfile 選項,只能在透過命令列進行編譯時使用。 |
範例
下列程式碼會編譯原始程式檔 Input.vb,並指定金鑰檔。
vbc /keyfile:myfile.sn input.vb