使用剪貼簿(TClipboard)在某些機器會變成亂碼 |
尚未結案
|
ganandi_hw
一般會員 發表:2 回覆:1 積分:0 註冊:2004-05-07 發送簡訊給我 |
各位大德,大家好:
之前有在此提出此問題,但因為我再上來看時,我的問題,卻變成亂碼了,故我把他結案掉,重新再提問,
請各位大德不吝賜教小弟我,不勝感激。
我的問題是我使用TClipboard時,在某些機器上複製中文字會變成亂碼,但大部分的機器卻是可以複製中文字,
我的程式碼如下:
procedure TForm1.Button1Click(Sender: TObject); var A:LCID ; Clip:TClipboard; begin Clip:=TClipboard.Create; Clip.AsText:=Pchar('測試' #9 '測試' #9 '123' #13#10 '測試'); //Clip.SetTextBuf(Pchar('測試' #9 '測試' #9 '123' #13#10 '測試')); //兩者我都試過,結果一樣 A:=GetUserDefaultLCID(); app.Connect; app.Visible[0]:=true; wb.ConnectTo(app.Workbooks.Open(ExtractFilePath(application.ExeName) 'A.XLS', EmptyParam,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam, A)); ws.ConnectTo(app.Worksheets['sheet1'] as _WorkSheet); ws.Activate(A); ws.PasteSpecial; app.Cells.Item[4,3].Value:='測試' #9 '測試中'; wb.Save(A); wb.Close; app.Quit; app.Disconnect; Clip.Free; end;我發現問題是出在將中文字寫入剪貼簿時,中文字就變成亂碼了,跟Excel無關, 希望有那位仁人大德為小弟解惑,不勝感激。謝謝。 |
Mickey
版主 發表:77 回覆:1882 積分:1390 註冊:2002-12-11 發送簡訊給我 |
|
ganandi_hw
一般會員 發表:2 回覆:1 積分:0 註冊:2004-05-07 發送簡訊給我 |
|
pceyes
尊榮會員 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
作業系統是98還是2000以上是有差的,
我以前程式是在98開發的,目前用2000開發
舊程式,最近在2000上居然出現亂碼
發現也是clipboard問題,中文出現亂碼
我找了一天,把原來的宣告string改成widestring居然可以用了,原因也不明
我曾經裝過big5unicode補完
不知有無關係,
另外我原用delphi5裝了tntunicodecontrols套件,雖元件可支援unicode
但是程式註解全成了亂碼了
希望我的經驗,可以提供你找答案的方向. 努力會更接近成功
------
努力會更接近成功 |
pceyes
尊榮會員 發表:70 回覆:657 積分:1140 註冊:2003-03-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |