1
我在下面兩行代碼:定義緩衝區大小正確的「堆棧周圍的變量字符串已損壞」
TCHAR String[400] = {0};
SendMessageW(hwnd, WM_GETTEXT,sizeof(String), (LPARAM)String);
當我使用這種方式我有時會得到一個運行時錯誤:「堆棧周圍的變量字符串被損壞」
當我使用
TCHAR String[400] = {0};
SendMessageW(hwnd, WM_GETTEXT,10, (LPARAM)String);
它的工作原理沒有問題。但我認爲關於使用sizeof()的全部內容是確保沒有溢出問題....爲什麼sizeof(String)不安全,我可以使用什麼?
謝謝!祝你有愉快的一天!
你爲什麼不使用`GetWindowText`功能?爲什麼你在地球上使用Windows 9x兼容性方案?你真的*計劃支持Windows 95鏈接到MFC DLL的應用程序嗎? – 2011-02-05 19:47:56