/CLRIMAGETYPE (指定 CLR 映像類型)

/CLRIMAGETYPE:{IJW|PURE|SAFE}

備註

連結器接受原生物件,以及利用 /clr、/clr:pure 或 /clr:safe 編譯的 MSIL 物件。 傳遞相同組建中的混合物件時,所得到輸出檔案的可驗證性將預設為相當於輸入模組最低層級的可驗證性。 例如,如果傳遞安全和純粹的模組至連結器,輸出檔案也會是純粹的。 如果傳遞原生映像和混合模式映像 (利用 /clr 編譯),所得到的映像就會是混合模式映像。

如果您有需要,/CLRIMAGETYPE 可以讓您指定較低層級可驗證性。

請參閱 /clr (Common Language Runtime 編譯),取得有關使用 /CLRIMAGETYPE,在安全映像載入 32 位元資源時,指定安全的可執行檔在 64 位元作業系統上於 WOW64 之下執行的詳細資訊。

在 64 位元作業系統上執行利用 /clr/clr:pure 編譯的 .exe 時,應用程式將在 WOW64 之下執行,而允許 32 位元應用程式在 64 位元作業系統上執行。 利用 /clr:safe 編譯的 .exe 預設為將使用作業系統的 64 位元支援執行。 但是您的安全應用程式可能會載入 32 位元元件。 在此情況下,載入 32 位元應用程式時,在作業系統之 64 位元支援下執行的安全映像將失敗。 若要確保在 64 作業系統上載入 32 位元時繼續執行安全映像,必須使用 /CLRIMAGETYPE (指定 CLR 映像類型) 連結器選項,變更中繼資料 (.corflags),將它標示為在 WOW64 下執行 (並替換為您自己的項目符號):

cl /clr:safe t.cpp /link /clrimagetype:pure /entry:?main@@$$HYMHXZ /subsystem:console

如需如何判斷檔案的 CLR 映像類型的詳細資訊,請參閱 /CLRHEADER

若要在 Visual Studio 開發環境中設定這個連結器選項

  1. 開啟專案的 [屬性頁] 對話方塊。 如需詳細資訊,請參閱 HOW TO:開啟專案屬性頁

  2. 展開 [組態屬性] 節點。

  3. 展開 [連結器] 節點。

  4. 請選取 [進階] 屬性頁。

  5. 修改 [CLR 映像類型] 屬性。

若要以程式設計方式設定這個連結器選項

請參閱

參考

設定連結器選項

連結器選項