FindFirstCodePage
SNA 國家語言支援 (SNANLS) FindFirstCodePage 函式會尋找滿足指定條件之字碼頁的第一個實例、將字碼頁資訊複製到傳遞為參數的結構,然後開啟並傳回 後續呼叫 FindNextCodePage 函式時所使用的控制碼。
語法
const HANDLE WINAPI FindFirstCodePage(
DWORDdwEnumOption,
struct CodePage *pPage
);
參數
dwEnumOption
提供的參數。 字碼頁應該滿足的一組條件。 這些條件可以是 SNANLS.h include 檔案中定義下列值的任何組合:
ENUM_CP_AVAILABLE (0x01)
字碼頁已安裝且可供使用。
ENUM_CP_HOST (0x02)
字碼頁是 EBCDIC (主機字碼頁,例如) 。
ENUM_CP_EURO (0x04)
字碼頁包含對歐元字元的支援。
ENUM_CP_DBCS (0x08)
字碼頁適用于雙位元組字元集。
ENUM_CP_MBCS (0x10)
字碼頁適用于混合位元組字元集。
ENUM_CP_SBCS (0x20)
字碼頁適用于單一位元組字元集。
請注意,其中一些組合代表不符合 SNANLS 所使用之任何已安裝字碼頁的案例。
pPage
提供和傳回的參數。 結構 CodePage 的指標,其中應該複製字碼頁資訊。
成功傳回時,此參數所指向的記憶體位置將會填入滿足 dwEnumOption條件的第一個字碼頁資訊。 失敗時,不會對此參數所指向的記憶體進行任何變更。
CodePage 結構定義于 SNANLS 中。H 包含檔案,如下所示:
struct CodePage {
BYTE CodePageKey;
DWORD CodePageID;
WCHAR szFriendlyName[CP_SIZE];
short eGroup;
BOOL bAvailable;
BYTE bccsid;
BOOL bEuro;
};
此 CodePage 結構的成員如下所示:
CodePageKey
數值,表示 CodePage 結構的陣列中的索引。 此值應該用來作為不透明值,因為當支援其他字碼頁時,Service Pack 可以任意變更此值。
CodePageID
NLS 字碼頁碼。
szFriendlyName
此字碼頁的 SNANLS 顯示名稱。
eGroup
此字碼頁所代表的群組。 .此值可以是 SNANLS.h 包含程式碼群組檔案中定義的下列其中一個列舉:
ENUM_CP_EBCDIC
此字碼頁是 EBCDIC 字碼頁群組的成員。
ENUM_CP_ANSI
此字碼頁是 ANSI 字碼頁群組的成員。
ENUM_CP_ISO
此字碼頁是 ISO 字碼頁群組的成員。
ENUM_CP_OEMPC
此字碼頁是 OEM 電腦字碼頁群組的成員。
ENUM_CP_ISO
此字碼頁是 ISO 字碼頁群組的成員。
ENUM_CP_ISO
此字碼頁是 ISO 字碼頁群組的成員。
ENUM_CP_OEM電腦
此字碼頁是 OEM 電腦字碼頁群組的成員。
ENUM_CP_OPEN
此字碼頁是 Open Systems 字碼頁群組的成員。
ENUM_CP_UCS
此字碼頁是 UCS 字碼頁群組的成員。
bAvailable
布林值,用來指出此字碼頁已安裝在電腦上。 這個成員的 FALSE 值表示不會查詢電腦,以判斷是否已安裝此字碼頁。 TRUE 值表示已安裝 字碼頁。
bccsid
用來指出字碼頁類型的旗標。 此旗標可以是下列其中一項:
ENUM_CP_DBCS (0x08)
字碼頁適用于雙位元組字元集。
ENUM_CP_MBCS (0x10)
字碼頁適用于混合位元組字元集。
ENUM_CP_SBCS (0x20)
字碼頁適用于單一位元組字元集。
bEuro
布林值,用來指出此字碼頁是否支援歐元符號。 如果此值為 TRUE,則支援歐元符號。
傳回值
FindFirstCodePage函式會在成功時傳回呼叫 FindNextCodePage或FindCloseCodePage時所使用的控制碼。 失敗時,會針對這個控制碼的值傳回INVALID_HANDLE_VALUE。
備註
此函式傳回的控制碼不應被使用者竄改。
主機整合伺服器上的 SNANLS 支援此函式。