保存和读取好像也没问题
STRTOFILE(0hC58B,"tmp.txt") && 保存后用记事本打开 ŋ
?STRCONV(FILETOSTR("tmp.txt"),15) && 读取显示编码正常
STRTOFILE(0hC58B,"tmp.txt") && 保存后用记事本打开 ŋ
?STRCONV(FILETOSTR("tmp.txt"),15) && 读取显示编码正常
CLEAR CLEAR ALL PUBLIC cDefPath cDefPath = ADDBS(JUSTPATH(SYS(16))) SET DEFAULT TO (cDefPath) DECLARE Long SetFocus IN user32 long DECLARE Long CreateUEdit IN UEdit long DECLARE Long DestroyUEdit IN UEdit long DECLARE Long SetUEditText IN UEdit long,string DECLARE Long SetFont IN UEdit long,long,string of = CREATEOBJECT("formUEdit") of.show() READ EVENTS CLOSE TABLES ALL CLEAR ALL RETURN DEFINE CLASS formUEdit as Form ShowWindow = 2 hUEdit = 0 PROCEDURE Activate this.hUEdit = CreateUEdit(this.hWnd) SetFont(this.hUEdit, 24, "Arial") SetFocus(this.hUEdit) SetUEditText(this.hUEdit, STRCONV(0h7369C58B00,12)) ENDPROC PROCEDURE Destroy DestroyUEdit(this.hUEdit) CLEAR EVENTS ENDPROC ENDDEFINE
#define DLLIMPORT __declspec(dllexport) #include <windows.h> HINSTANCE hInstance = NULL; DLLIMPORT void SetUEditText(HWND hWndUEdit, LPCWSTR pWSTR) { SetWindowTextW(hWndUEdit, pWSTR); } DLLIMPORT void SetFont(HWND hWndUEdit, int cHeight, LPCSTR pFontName) { HFONT hFont = CreateFont(cHeight, 0, 0, 0, FW_NORMAL, FALSE, FALSE, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH, pFontName); SendMessage(hWndUEdit, WM_SETFONT, (WPARAM)hFont, TRUE); } DLLIMPORT void DestroyUEdit(HWND hWndUEdit) { DestroyWindow(hWndUEdit); } DLLIMPORT HWND CreateUEdit(HWND hWndParent) { return CreateWindowExW( 0, // 无扩展样式 L"EDIT", // 预定义EDIT类名 L"", // 初始文本为空 WS_CHILD | WS_VISIBLE | WS_BORDER | ES_MULTILINE, // 样式 10, 10, 100, 100, // 位置和尺寸 hWndParent, // 父窗口句柄 0, // 控件ID hInstance, // 程序实例句柄 NULL // 无附加参数 ); } BOOL WINAPI DllMain(HINSTANCE hinstDLL,DWORD fdwReason,LPVOID lpvReserved) { switch(fdwReason) { case DLL_PROCESS_ATTACH: { hInstance = hinstDLL; break; } } return TRUE; }