強式名稱組件 (組件簽署) (C++/CLI)
本主題討論如何簽署元件,通常稱為為元件提供強名稱。
備註
使用 Visual C++時,請使用連結器選項簽署元件,以避免與元件簽署的 CLR 屬性相關的問題:
未使用屬性的原因包括元件元數據中可見密鑰名稱的事實,如果檔名包含機密資訊,可能會有安全性風險。 此外,Visual C++開發環境所使用的建置程式會讓元件簽署的密鑰失效,如果您使用 CLR 屬性為元件指定強名稱,然後在元件上執行mt.exe之類的後置處理工具。
如果您在命令行建置,請使用連結器選項簽署元件,然後執行後續處理工具(例如 mt.exe),您必須使用 sn.exe 重新簽署元件。 或者,您可以建置並延遲簽署元件,並在執行後續處理工具之後完成簽署。
如果您在開發環境中建置時使用簽署屬性,您可以在建置後事件中明確呼叫 sn.exe (Sn.exe (強名稱工具)來成功簽署元件。 如需詳細資訊,請參閱指定建置事件。 相較於使用連結器選項,使用屬性和建置後事件,建置時間可能會比較少。
下列連結器選項支援元件簽署:
如需強式元件的詳細資訊,請參閱 建立和使用強名稱元件。