LS, Tôi đang sử dụng FindWindow phương pháp trong C# ứng dụng để có được xử lý cửa sổ từ trình duyệt webký tự utf khi sử dụng FindWindow user32.dll trong C# ứng dụng
[DllImport("user32.dll")]
public static extern int FindWindow(string lpClassName, string lpWindowName);
nó hoạt động tốt khi tiêu đề cửa sổ không chứa utf chars như ở đây:
string caption1 = "pinvoke.net: findwindow (user32) - Google Chrome";
int hwnd = FindWindow(null, caption1);
nhưng nó không thành công khi ký tự utf có mặt trong tiêu đề cửa sổ:
string caption2 = "Słownik języka polskiego - Google Chrome";
int hwnd2 = FindWindow(null, caption2);
ví dụ: hwnd == 0
Bạn vui lòng cung cấp cho tôi bất kỳ đề xuất nào về cách xử lý cửa sổ trình duyệt chứa các ký tự utf-8 trong ứng dụng C#. Cảm ơn trước.
ps Tôi đã nhìn thấy những nhận xét về việc sử dụng FindWindow với utf trong C++, nói: "Bạn rõ ràng có thể sử dụng phiên bản Unicode của API HWND windowHnd = FindWindowW (NULL, L" Minesweeper ");" nhưng tôi vẫn không biết làm thế nào để làm điều đó đúng trong C#
Không có UTF-8 ở bất cứ đâu tại đây. Những gì bạn có là UTF-16. –
Xem thêm http://msdn.microsoft.com/en-us/library/aa984739(v=vs.71).aspx – rogerdpack