CVCODE Not Work within Delphixe6 X64? |
答題得分者是:mypigbaby
|
jimmywu
一般會員 ![]() ![]() 發表:41 回覆:37 積分:15 註冊:2006-12-12 發送簡訊給我 |
|
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
jimmywu
一般會員 ![]() ![]() 發表:41 回覆:37 積分:15 註冊:2006-12-12 發送簡訊給我 |
|
mypigbaby
高階會員 ![]() ![]() ![]() 發表:11 回覆:168 積分:155 註冊:2006-07-20 發送簡訊給我 |
在XE6
如果只是要簡繁轉換 下面那二個函數就可以了 [code delphi] function Cn2Big(CnStr: string): string; var Len: Integer; begin Len := Length(CnStr); SetLength(Result, Len); LCMapString(GetUserDefaultLCID, LCMAP_TRADITIONAL_CHINESE, PChar(CnStr), Len, PChar(Result), Len); end; function BIG2cn(bigStr: string): string; var Len: Integer; begin Len := Length(bigStr); SetLength(Result, Len); LCMapString(GetUserDefaultLCID, LCMAP_SIMPLIFIED_CHINESE, PChar(bigStr), Len, PChar(Result), Len); end; [/code] ===================引 用 jimmywu 文 章=================== Dear Sir: 簡繁轉換CVCODE.PAS好用FreeWare到了Delphi xe6 64 Bit,再也無法將繁體轉成簡體 Trace發現,DBCS以前為2個CHAR,現在為1個char還有Ord(value[])也無法傳回正確值, (isBig5,isGB,Big5toGB,GBtoBIG5都不work了,作業環境:Windows8.1 X64) 請問先進們有可用的新版程式嗎? |
mypigbaby
高階會員 ![]() ![]() ![]() 發表:11 回覆:168 積分:155 註冊:2006-07-20 發送簡訊給我 |
剛查到的
如果要判斷目前用的語言 [code delphi] function IsChnSimplifyWindows(var iType: Integer): Boolean; var LangID: Integer; begin LangID := GetSystemDefaultLangID; Result := False; iType := -1; //ShowMessage(Languages.NameFromLocaleID[LangID]); if LangID = ((SUBLANG_CHINESE_SIMPLIFIED shl 10) or LANG_CHINESE) then begin iType := 0; //简体 Result := True; Exit; end; if LangID = ((SUBLANG_CHINESE_TRADITIONAL shl 10) or LANG_CHINESE) then begin iType := 1; //繁体 Exit; end; if LangID = ((SUBLANG_ENGLISH_US shl 10) or LANG_ENGLISH) then begin iType := 2; //English Exit; end; end;[/code] ===================引 用 mypigbaby 文 章=================== 在XE6 如果只是要簡繁轉換 下面那二個函數就可以了 [code delphi] function Cn2Big(CnStr: string): string; var Len: Integer; begin Len := Length(CnStr); SetLength(Result, Len); LCMapString(GetUserDefaultLCID, LCMAP_TRADITIONAL_CHINESE, PChar(CnStr), Len, PChar(Result), Len); end; function BIG2cn(bigStr: string): string; var Len: Integer; begin Len := Length(bigStr); SetLength(Result, Len); LCMapString(GetUserDefaultLCID, LCMAP_SIMPLIFIED_CHINESE, PChar(bigStr), Len, PChar(Result), Len); end; [/code] ===================引 用 jimmywu 文 章=================== Dear Sir: 簡繁轉換CVCODE.PAS好用FreeWare到了Delphi xe6 64 Bit,再也無法將繁體轉成簡體 Trace發現,DBCS以前為2個CHAR,現在為1個char還有Ord(value[])也無法傳回正確值, (isBig5,isGB,Big5toGB,GBtoBIG5都不work了,作業環境:Windows8.1 X64) 請問先進們有可用的新版程式嗎?
編輯記錄
mypigbaby 重新編輯於 2014-06-08 13:21:08, 註解 無‧
|
jimmywu
一般會員 ![]() ![]() 發表:41 回覆:37 積分:15 註冊:2006-12-12 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |