ก่อนอื่นมันคืออะไรกันแน่? ฉันเดาว่ามันเป็นตัวชี้ (LPC หมายถึงค่าคงที่ตัวชี้แบบยาว) แต่ "W" หมายถึงอะไร? เป็นตัวชี้เฉพาะไปยังสตริงหรือตัวชี้ไปยังสตริงเฉพาะหรือไม่? ตัวอย่างเช่นฉันต้องการปิดหน้าต่างชื่อ "TestWindow"
HWND g_hTest;
LPCWSTR a;
*a = ("TestWindow");
g_hTest = FindWindowEx(NULL, NULL, NULL, a);
DestroyWindow(g_hTest);
รหัสนี้ผิดกฎหมายและใช้ไม่ได้เนื่องจาก const char [6] ไม่สามารถแปลงเป็น CONST WCHAR ได้ ฉันไม่เข้าใจเลย ฉันต้องการทำความเข้าใจที่ชัดเจนเกี่ยวกับ LPCWSTR, LPCSTR, LPSTR เหล่านี้ ฉันพยายามค้นหาบางสิ่ง แต่ฉันก็สับสนมากขึ้น ที่ไซต์ msdn FindWindowEx
ถูกประกาศเป็น
HWND FindWindowEx(
HWND hwndParent,
HWND hwndChildAfter,
LPCTSTR lpszClass,
LPCTSTR lpszWindow
);
ดังนั้นพารามิเตอร์สุดท้ายคือ LPCSTR และคอมไพเลอร์ต้องการ LPCWSTR กรุณาช่วย.