/SECTION:name,[[!]{DE|K||P|SWR||}][],ALIGN=number
備註
/SECTION 選項會變更區段的屬性,覆寫編譯 .obj 檔案的該區段時所設定的屬性。
可攜式可執行檔 (PE) 檔案中的區段是包含程式代碼或數據的具名連續記憶體區塊。 某些區段包含程式宣告並使用的程式代碼或數據。 連結器和連結庫管理員會為您建立其他數據區段,並包含作業系統重要資訊。 如需詳細資訊,請參閱 PE格式。
指定冒號 (:) 和區段名稱 name。 區分 name 大小寫。
請勿使用下列名稱,因為它們與標準名稱衝突。 例如, .sdata 用於 RISC 平臺上:
.arch.bss.data.edata.idata.pdata.rdata.reloc.rsrc.sbss.sdata.srdata.text.xdata
指定區段的一或多個屬性。 下面所列的屬性字元不會區分大小寫。 您必須指定您想要區段擁有的所有屬性。 省略的屬性字元會導致該屬性位關閉。 如果您未指定 R、 W或 E,則現有的讀取、寫入或可執行文件狀態會保持不變。
若要否定屬性,請在其字元前面加上驚嘆號 (!)。 下表顯示屬性字元的意義:
| 字元 | 屬性 | 意義 |
|---|---|---|
E |
執行 | 區段是可執行檔 |
R |
參閱 | 允許對數據進行讀取作業 |
W |
寫入 | 允許對數據進行寫入作業 |
S |
共用 | 在載入映像的所有進程之間共享 區段 |
D |
可捨棄 | 將區段標示為可捨棄 |
K |
可快取 | 將區段標示為不可快取 |
P |
可分頁 | 將區段標示為不可分頁 |
K 和 P 不尋常的是,對應它們的區段旗標會用於負面意義上。 如果您使用 選項在區段上.text指定其中一個,當您使用 /SECTION:.text,K 選項執行DUMPBIN/HEADERS時,區段旗標沒有任何差異;區段已經隱含快取。 若要移除預設值,請改為指定 /SECTION:.text,!K 。 DUMPBIN 會顯示區段特性,包括「未快取」。
PE 檔案中沒有 E、 R或 W set 的區段可能無效。
自 ALIGN=number 變數可讓您指定特定區段的對齊值。 自 number 變數以位元組為單位,而且必須是兩個乘冪。 如需詳細資訊,請參閱/ALIGN。
在 Visual Studio 開發環境中設定這個連結器選項
開啟專案的 [屬性頁] 對話方塊。 如需詳細資訊,請參閱 設定編譯程式和建置屬性。
選擇 [組態屬性>] 連結器>[一般] 屬性頁。
修改 Specify Section Attributes 屬性。 選擇 [確定] 或 [套用] 以儲存變更。
若要以程式設計方式設定這個連結器選項
- 請參閱 AdditionalOptions。