Безопасность и стабильность SetParent () и GetParent () - PullRequest
0 голосов
/ 28 октября 2011

В моей программе используются следующие функции:

[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);

[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern IntPtr GetParent(IntPtr hWnd);

Мой вопрос: этот подход безопасен и стабилен? Моя машина для разработки - Windows XP, и до сих пор я не нашел никаких проблем с ее использованием. Интересно, могут ли у меня возникать проблемы в разных версиях (например, в Windows Vista, Windows 7 и т. Д.), В разных процессорах (x64) и т. Д. Можете ли вы дать какие-то отзывы по этому поводу, и если есть какие-то потенциальные проблемы, как я могу их преодолеть?

Заранее спасибо.

Zubrowka

1 Ответ

5 голосов
/ 28 октября 2011

Эти объявления P / invoke верны для всех версий Windows. Нет проблем с XP / Vista / 7 и 32/64 бит. IntPtr колеблется между 32 и 64 битами в зависимости от разрядности процесса. Это именно то, что вам нужно для HWND.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...