Я использую следующий код:
const int GWL_STYLE = (-16);
const UInt32 WS_POPUP = 0x80000000;
const UInt32 WS_CHILD = 0x40000000;
[DllImport("user32.dll", SetLastError = true)]
static extern UInt32 GetWindowLong(IntPtr hWnd, int nIndex);
[DllImport("user32.dll")]
static extern int SetWindowLong(IntPtr hWnd, int nIndex, UInt32 dwNewLong);
и где-то ...
SetWindowLong(this.Handle, GWL_STYLE,
((GetWindowLong(this.Handle, GWL_STYLE) & ~(WS_POPUP)) | WS_CHILD));
Будет ли это работать правильно как на 32-битных, так и на 64-битных машинах?
Если нет, если я скомпилирую свое приложение для запуска в качестве процесса x86, будет ли оно работать нормально на 64-битной машине?
И как мне переписать следующий код, чтобы он был в порядке как на 32-разрядных, так и на 64-разрядных компьютерах?