當你使用簡貼簿時拿書上範例一用中文怎樣弄都是亂碼?
上網找了一下結果發現是編碼簿的問題,當你的輸入法都為中文系統時又沒啥問題
可是你用英文輸入法然後使用減貼簿的功能,貼出的中文字就是亂碼,這問題當然和編碼有關,網路上有人說調整輸入法就好了...,看到這樣我覺得根本就是整人吧。
有這樣不實際的方法嗎?那寫程式寫成這樣麻煩幹麻
一般來講書上的範例只會是下面這樣
TChar szTemp[512];
GetWindowText(m_hAppWnd,szTemp,512);
HGLOBAL hGlobal = GlobalAlloc (GHND | GMEM_SHARE, ( (lstrlen (szTemp) + 1)* sizeof (TChar)) );
LPTSTR pGlobal = (LPTSTR)GlobalLock (hGlobal) ;
lstrcpy (pGlobal, szTemp) ;
OpenClipboard (m_hAppWnd) ;
EmptyClipboard () ;
SetClipboardData (CF_TCHAR, hGlobal) ;
GlobalUnlock (hGlobal) ;
CloseClipboard () ;
這時你就會出現,我一開始遇到的問題了。
最後發現他是要這樣用
TChar szTemp[512];
GetWindowText(m_hAppWnd,szTemp,512);
HGLOBAL hGlobal = GlobalAlloc (GHND | GMEM_SHARE, ( (lstrlen (szTemp) + 1)* sizeof (TChar)) );
LPTSTR pGlobal = (LPTSTR)GlobalLock (hGlobal) ;
lstrcpy (pGlobal, szTemp) ;
OpenClipboard (m_hAppWnd) ;
EmptyClipboard () ;
SetClipboardData (CF_TCHAR, hGlobal) ;
SetClipboardData(CF_LOCALE, hGlobal);
GlobalUnlock (hGlobal) ;
CloseClipboard () ;
好杯中文字遇到的問題就是這樣多 -_-
沒有留言:
張貼留言