* Sync with Wine 1.7.17.
CORE-8080
svn path=/trunk/; revision=62825
(LPDIOBJECTDATAFORMAT)obj_data_format
};
(LPDIOBJECTDATAFORMAT)obj_data_format
};
-static BOOL CALLBACK enum_callback(LPCDIDEVICEOBJECTINSTANCE oi, LPVOID info)
+static BOOL CALLBACK enum_callback(const DIDEVICEOBJECTINSTANCEA *oi, void *info)
{
if (winetest_debug > 1)
trace(" Type:%4x Ofs:%3d Flags:%08x Name:%s\n",
{
if (winetest_debug > 1)
trace(" Type:%4x Ofs:%3d Flags:%08x Name:%s\n",
return DIENUM_CONTINUE;
}
return DIENUM_CONTINUE;
}
-static BOOL CALLBACK enum_type_callback(LPCDIDEVICEOBJECTINSTANCE oi, LPVOID info)
+static BOOL CALLBACK enum_type_callback(const DIDEVICEOBJECTINSTANCEA *oi, void *info)
{
DWORD expected = *(DWORD*)info;
ok (expected & DIDFT_GETTYPE(oi->dwType), "EnumObjects() enumerated wrong type for obj %s, expected: %08x got: %08x\n", oi->tszName, expected, oi->dwType);
return DIENUM_CONTINUE;
}
{
DWORD expected = *(DWORD*)info;
ok (expected & DIDFT_GETTYPE(oi->dwType), "EnumObjects() enumerated wrong type for obj %s, expected: %08x got: %08x\n", oi->tszName, expected, oi->dwType);
return DIENUM_CONTINUE;
}
-static void test_object_info(LPDIRECTINPUTDEVICE device, HWND hwnd)
+static void test_object_info(IDirectInputDeviceA *device, HWND hwnd)
{
HRESULT hr;
DIPROPDWORD dp;
{
HRESULT hr;
DIPROPDWORD dp;
- DIDEVICEOBJECTINSTANCE obj_info;
+ DIDEVICEOBJECTINSTANCEA obj_info;
DWORD obj_types[] = {DIDFT_BUTTON, DIDFT_AXIS, DIDFT_POV};
int type_index;
int cnt1 = 0;
DWORD obj_types[] = {DIDFT_BUTTON, DIDFT_AXIS, DIDFT_POV};
int type_index;
int cnt1 = 0;
-static BOOL CALLBACK enum_devices(LPCDIDEVICEINSTANCE lpddi, LPVOID pvRef)
+static BOOL CALLBACK enum_devices(const DIDEVICEINSTANCEA *lpddi, void *pvRef)
{
struct enum_data *data = pvRef;
{
struct enum_data *data = pvRef;
- LPDIRECTINPUTDEVICE device, obj = NULL;
+ IDirectInputDeviceA *device, *obj = NULL;
HRESULT hr;
hr = IDirectInput_GetDeviceStatus(data->pDI, &lpddi->guidInstance);
HRESULT hr;
hr = IDirectInput_GetDeviceStatus(data->pDI, &lpddi->guidInstance);
static void device_tests(void)
{
HRESULT hr;
static void device_tests(void)
{
HRESULT hr;
- LPDIRECTINPUT pDI = NULL, obj = NULL;
- HINSTANCE hInstance = GetModuleHandle(NULL);
+ IDirectInputA *pDI = NULL, *obj = NULL;
+ HINSTANCE hInstance = GetModuleHandleW(NULL);
HWND hwnd;
struct enum_data data;
HWND hwnd;
struct enum_data data;
skip("Tests require a newer dinput version\n");
return;
}
skip("Tests require a newer dinput version\n");
return;
}
- ok(SUCCEEDED(hr), "DirectInputCreate() failed: %08x\n", hr);
+ ok(SUCCEEDED(hr), "DirectInputCreateA() failed: %08x\n", hr);
if (FAILED(hr)) return;
hr = IDirectInput_Initialize(pDI, hInstance, DIRECTINPUT_VERSION);
if (FAILED(hr)) return;
hr = IDirectInput_Initialize(pDI, hInstance, DIRECTINPUT_VERSION);
hr = IUnknown_QueryInterface(pDI, &IID_IDirectInput2W, (LPVOID*)&obj);
ok(SUCCEEDED(hr), "QueryInterface(IDirectInput7W) failed: %08x\n", hr);
hr = IUnknown_QueryInterface(pDI, &IID_IDirectInput2W, (LPVOID*)&obj);
ok(SUCCEEDED(hr), "QueryInterface(IDirectInput7W) failed: %08x\n", hr);
- hwnd = CreateWindow("static", "Title", WS_OVERLAPPEDWINDOW,
- 10, 10, 200, 200, NULL, NULL, NULL, NULL);
+ hwnd = CreateWindowA("static", "Title", WS_OVERLAPPEDWINDOW, 10, 10, 200, 200, NULL, NULL,
+ NULL, NULL);
ok(hwnd != NULL, "err: %d\n", GetLastError());
if (hwnd)
{
ok(hwnd != NULL, "err: %d\n", GetLastError());
if (hwnd)
{
hr = IDirectInput_GetDeviceStatus(pDI, &GUID_Joystick);
if (hr == DI_OK)
{
hr = IDirectInput_GetDeviceStatus(pDI, &GUID_Joystick);
if (hr == DI_OK)
{
- LPDIRECTINPUTDEVICE device = NULL;
+ IDirectInputDeviceA *device = NULL;
hr = IDirectInput_CreateDevice(pDI, &GUID_Joystick, &device, NULL);
ok(SUCCEEDED(hr), "IDirectInput_CreateDevice() failed: %08x\n", hr);
hr = IDirectInput_CreateDevice(pDI, &GUID_Joystick, &device, NULL);
ok(SUCCEEDED(hr), "IDirectInput_CreateDevice() failed: %08x\n", hr);
#define numObjects(x) (sizeof(x) / sizeof(x[0]))
typedef struct tagUserData {
#define numObjects(x) (sizeof(x) / sizeof(x[0]))
typedef struct tagUserData {
DWORD version;
} UserData;
DWORD version;
} UserData;
typedef struct tagJoystickInfo
{
typedef struct tagJoystickInfo
{
- LPDIRECTINPUTDEVICE pJoystick;
+ IDirectInputDeviceA *pJoystick;
DWORD axis;
DWORD pov;
DWORD button;
DWORD axis;
DWORD pov;
DWORD button;
return IUnknown_Release( object );
}
return IUnknown_Release( object );
}
-static BOOL CALLBACK EnumAxes(
- const DIDEVICEOBJECTINSTANCE* pdidoi,
- VOID* pContext)
+static BOOL CALLBACK EnumAxes(const DIDEVICEOBJECTINSTANCEA *pdidoi, void *pContext)
{
HRESULT hr;
JoystickInfo * info = pContext;
{
HRESULT hr;
JoystickInfo * info = pContext;
E_INVALIDARG, S_OK, S_OK, E_INVALIDARG,
E_INVALIDARG, E_INVALIDARG, E_INVALIDARG, E_INVALIDARG};
E_INVALIDARG, S_OK, S_OK, E_INVALIDARG,
E_INVALIDARG, E_INVALIDARG, E_INVALIDARG, E_INVALIDARG};
-static BOOL CALLBACK EnumJoysticks(
- LPCDIDEVICEINSTANCE lpddi,
- LPVOID pvRef)
+static BOOL CALLBACK EnumJoysticks(const DIDEVICEINSTANCEA *lpddi, void *pvRef)
{
HRESULT hr;
UserData * data = pvRef;
{
HRESULT hr;
UserData * data = pvRef;
- LPDIRECTINPUTDEVICE pJoystick;
+ IDirectInputDeviceA *pJoystick;
DIDATAFORMAT format;
DIDEVCAPS caps;
DIJOYSTATE2 js;
JoystickInfo info;
int i, count;
ULONG ref;
DIDATAFORMAT format;
DIDEVCAPS caps;
DIJOYSTATE2 js;
JoystickInfo info;
int i, count;
ULONG ref;
- DIDEVICEINSTANCE inst;
- DIDEVICEINSTANCE_DX3 inst3;
+ DIDEVICEINSTANCEA inst;
+ DIDEVICEINSTANCE_DX3A inst3;
DIPROPDWORD dipw;
DIPROPSTRING dps;
DIPROPGUIDANDPATH dpg;
DIPROPDWORD dipw;
DIPROPSTRING dps;
DIPROPGUIDANDPATH dpg;
ok(hr==DI_OK,"IDirectInputDevice_GetDeviceInfo() failed: %08x\n", hr);
inst3.dwSize = sizeof(inst3);
ok(hr==DI_OK,"IDirectInputDevice_GetDeviceInfo() failed: %08x\n", hr);
inst3.dwSize = sizeof(inst3);
- hr = IDirectInputDevice_GetDeviceInfo(pJoystick, (LPDIDEVICEINSTANCE)&inst3);
+ hr = IDirectInputDevice_GetDeviceInfo(pJoystick, (DIDEVICEINSTANCEA*)&inst3);
ok(hr==DI_OK,"IDirectInputDevice_GetDeviceInfo() failed: %08x\n", hr);
hr = IDirectInputDevice_Unacquire(pJoystick);
ok(hr==DI_OK,"IDirectInputDevice_GetDeviceInfo() failed: %08x\n", hr);
hr = IDirectInputDevice_Unacquire(pJoystick);
LPDIRECTINPUTEFFECT effect = NULL;
LONG cnt1, cnt2;
HWND real_hWnd;
LPDIRECTINPUTEFFECT effect = NULL;
LONG cnt1, cnt2;
HWND real_hWnd;
- HINSTANCE hInstance = GetModuleHandle(NULL);
+ HINSTANCE hInstance = GetModuleHandleW(NULL);
DIPROPDWORD dip_gain_set, dip_gain_get;
trace("Testing force-feedback\n");
DIPROPDWORD dip_gain_set, dip_gain_get;
trace("Testing force-feedback\n");
* IDirectInputDevice_SetCooperativeLevel
* - a visible window
*/
* IDirectInputDevice_SetCooperativeLevel
* - a visible window
*/
- real_hWnd = CreateWindowEx(0, "EDIT", "Test text", 0, 10, 10, 300,
- 300, NULL, NULL, hInstance, NULL);
- ok(real_hWnd!=0,"CreateWindowEx failed: %p\n", real_hWnd);
+ real_hWnd = CreateWindowExA(0, "EDIT", "Test text", 0, 10, 10, 300, 300, NULL, NULL,
+ hInstance, NULL);
+ ok(real_hWnd!=0,"CreateWindowExA failed: %p\n", real_hWnd);
ShowWindow(real_hWnd, SW_SHOW);
hr = IDirectInputDevice_Unacquire(pJoystick);
ok(hr==DI_OK,"IDirectInputDevice_Unacquire() failed: %08x\n", hr);
ShowWindow(real_hWnd, SW_SHOW);
hr = IDirectInputDevice_Unacquire(pJoystick);
ok(hr==DI_OK,"IDirectInputDevice_Unacquire() failed: %08x\n", hr);
cnt1 = get_refcount((IUnknown*)pJoystick);
cnt1 = get_refcount((IUnknown*)pJoystick);
- hr = IDirectInputDevice2_CreateEffect((LPDIRECTINPUTDEVICE2)pJoystick, &GUID_ConstantForce,
+ hr = IDirectInputDevice2_CreateEffect((IDirectInputDevice2A*)pJoystick, &GUID_ConstantForce,
&eff, &effect, NULL);
ok(hr == DI_OK, "IDirectInputDevice_CreateEffect() failed: %08x\n", hr);
cnt2 = get_refcount((IUnknown*)pJoystick);
&eff, &effect, NULL);
ok(hr == DI_OK, "IDirectInputDevice_CreateEffect() failed: %08x\n", hr);
cnt2 = get_refcount((IUnknown*)pJoystick);
ok(hr==DI_OK, "IDirectInputDevice_SetProperty() failed: %08x\n", hr);
hr = IDirectInputDevice_GetProperty(pJoystick, DIPROP_FFGAIN, &dip_gain_get.diph);
ok(hr==DI_OK, "IDirectInputDevice_GetProperty() failed: %08x\n", hr);
ok(hr==DI_OK, "IDirectInputDevice_SetProperty() failed: %08x\n", hr);
hr = IDirectInputDevice_GetProperty(pJoystick, DIPROP_FFGAIN, &dip_gain_get.diph);
ok(hr==DI_OK, "IDirectInputDevice_GetProperty() failed: %08x\n", hr);
- ok(dip_gain_get.dwData==dip_gain_set.dwData, "Gain not udated: %i\n", dip_gain_get.dwData);
+ ok(dip_gain_get.dwData==dip_gain_set.dwData, "Gain not updated: %i\n", dip_gain_get.dwData);
hr = IDirectInputDevice_Acquire(pJoystick);
ok(hr==DI_OK,"IDirectInputDevice_Acquire() failed: %08x\n", hr);
dip_gain_set.dwData = 2;
hr = IDirectInputDevice_Acquire(pJoystick);
ok(hr==DI_OK,"IDirectInputDevice_Acquire() failed: %08x\n", hr);
dip_gain_set.dwData = 2;
ok(hr==DI_OK, "IDirectInputDevice_SetProperty() failed: %08x\n", hr);
hr = IDirectInputDevice_GetProperty(pJoystick, DIPROP_FFGAIN, &dip_gain_get.diph);
ok(hr==DI_OK, "IDirectInputDevice_GetProperty() failed: %08x\n", hr);
ok(hr==DI_OK, "IDirectInputDevice_SetProperty() failed: %08x\n", hr);
hr = IDirectInputDevice_GetProperty(pJoystick, DIPROP_FFGAIN, &dip_gain_get.diph);
ok(hr==DI_OK, "IDirectInputDevice_GetProperty() failed: %08x\n", hr);
- ok(dip_gain_get.dwData==dip_gain_set.dwData, "Gain not udated: %i\n", dip_gain_get.dwData);
+ ok(dip_gain_get.dwData==dip_gain_set.dwData, "Gain not updated: %i\n", dip_gain_get.dwData);
/* Test range and internal clamping. */
dip_gain_set.dwData = -1;
hr = IDirectInputDevice_SetProperty(pJoystick, DIPROP_FFGAIN, &dip_gain_set.diph);
/* Test range and internal clamping. */
dip_gain_set.dwData = -1;
hr = IDirectInputDevice_SetProperty(pJoystick, DIPROP_FFGAIN, &dip_gain_set.diph);
static void joystick_tests(DWORD version)
{
HRESULT hr;
static void joystick_tests(DWORD version)
{
HRESULT hr;
- HINSTANCE hInstance = GetModuleHandle(NULL);
+ HINSTANCE hInstance = GetModuleHandleW(NULL);
trace("-- Testing Direct Input Version 0x%04x --\n", version);
trace("-- Testing Direct Input Version 0x%04x --\n", version);
- hr = DirectInputCreate(hInstance, version, &pDI, NULL);
- ok(hr==DI_OK||hr==DIERR_OLDDIRECTINPUTVERSION,
- "DirectInputCreate() failed: %08x\n", hr);
+ hr = DirectInputCreateA(hInstance, version, &pDI, NULL);
+ ok(hr==DI_OK||hr==DIERR_OLDDIRECTINPUTVERSION, "DirectInputCreateA() failed: %08x\n", hr);
if (hr==DI_OK && pDI!=0) {
UserData data;
data.pDI = pDI;
if (hr==DI_OK && pDI!=0) {
UserData data;
data.pDI = pDI;
//#include "wingdi.h"
#include <dinput.h>
//#include "wingdi.h"
#include <dinput.h>
-static void acquire_tests(LPDIRECTINPUT pDI, HWND hwnd)
+static void acquire_tests(IDirectInputA *pDI, HWND hwnd)
- LPDIRECTINPUTDEVICE pKeyboard;
+ IDirectInputDeviceA *pKeyboard;
BYTE kbd_state[256];
LONG custom_state[6];
int i;
BYTE kbd_state[256];
LONG custom_state[6];
int i;
E_INVALIDARG, E_HANDLE, E_HANDLE, E_INVALIDARG,
E_INVALIDARG, E_INVALIDARG, E_INVALIDARG, E_INVALIDARG};
E_INVALIDARG, E_HANDLE, E_HANDLE, E_INVALIDARG,
E_INVALIDARG, E_INVALIDARG, E_INVALIDARG, E_INVALIDARG};
-static void test_set_coop(LPDIRECTINPUT pDI, HWND hwnd)
+static void test_set_coop(IDirectInputA *pDI, HWND hwnd)
- LPDIRECTINPUTDEVICE pKeyboard = NULL;
+ IDirectInputDeviceA *pKeyboard = NULL;
ok(hr == SetCoop_real_window[i], "SetCooperativeLevel(hwnd, %d): %08x\n", i, hr);
}
ok(hr == SetCoop_real_window[i], "SetCooperativeLevel(hwnd, %d): %08x\n", i, hr);
}
- child = CreateWindow("static", "Title", WS_CHILD | WS_VISIBLE,
- 10, 10, 50, 50, hwnd, NULL, NULL, NULL);
+ child = CreateWindowA("static", "Title", WS_CHILD | WS_VISIBLE, 10, 10, 50, 50, hwnd, NULL,
+ NULL, NULL);
ok(child != NULL, "err: %d\n", GetLastError());
for (i=0; i<16; i++)
ok(child != NULL, "err: %d\n", GetLastError());
for (i=0; i<16; i++)
if (pKeyboard) IUnknown_Release(pKeyboard);
}
if (pKeyboard) IUnknown_Release(pKeyboard);
}
-static void test_get_prop(LPDIRECTINPUT pDI, HWND hwnd)
+static void test_get_prop(IDirectInputA *pDI, HWND hwnd)
- LPDIRECTINPUTDEVICE pKeyboard = NULL;
+ IDirectInputDeviceA *pKeyboard = NULL;
DIPROPRANGE diprg;
hr = IDirectInput_CreateDevice(pDI, &GUID_SysKeyboard, &pKeyboard, NULL);
DIPROPRANGE diprg;
hr = IDirectInput_CreateDevice(pDI, &GUID_SysKeyboard, &pKeyboard, NULL);
if (pKeyboard) IUnknown_Release(pKeyboard);
}
if (pKeyboard) IUnknown_Release(pKeyboard);
}
-static void test_capabilities(LPDIRECTINPUT pDI, HWND hwnd)
+static void test_capabilities(IDirectInputA *pDI, HWND hwnd)
- LPDIRECTINPUTDEVICE pKeyboard = NULL;
+ IDirectInputDeviceA *pKeyboard = NULL;
DIDEVCAPS caps;
hr = IDirectInput_CreateDevice(pDI, &GUID_SysKeyboard, &pKeyboard, NULL);
DIDEVCAPS caps;
hr = IDirectInput_CreateDevice(pDI, &GUID_SysKeyboard, &pKeyboard, NULL);
static void keyboard_tests(DWORD version)
{
HRESULT hr;
static void keyboard_tests(DWORD version)
{
HRESULT hr;
- LPDIRECTINPUT pDI = NULL;
- HINSTANCE hInstance = GetModuleHandle(NULL);
+ IDirectInputA *pDI = NULL;
+ HINSTANCE hInstance = GetModuleHandleW(NULL);
HWND hwnd;
ULONG ref = 0;
HWND hwnd;
ULONG ref = 0;
- hr = DirectInputCreate(hInstance, version, &pDI, NULL);
+ hr = DirectInputCreateA(hInstance, version, &pDI, NULL);
if (hr == DIERR_OLDDIRECTINPUTVERSION)
{
skip("Tests require a newer dinput version\n");
return;
}
if (hr == DIERR_OLDDIRECTINPUTVERSION)
{
skip("Tests require a newer dinput version\n");
return;
}
- ok(SUCCEEDED(hr), "DirectInputCreate() failed: %08x\n", hr);
+ ok(SUCCEEDED(hr), "DirectInputCreateA() failed: %08x\n", hr);
- hwnd = CreateWindow("static", "Title", WS_OVERLAPPEDWINDOW | WS_VISIBLE,
- 10, 10, 200, 200, NULL, NULL, NULL, NULL);
+ hwnd = CreateWindowA("static", "Title", WS_OVERLAPPEDWINDOW | WS_VISIBLE, 10, 10, 200, 200,
+ NULL, NULL, NULL, NULL);
ok(hwnd != NULL, "err: %d\n", GetLastError());
if (hwnd)
ok(hwnd != NULL, "err: %d\n", GetLastError());
if (hwnd)
E_INVALIDARG, E_HANDLE, E_HANDLE, E_INVALIDARG,
E_INVALIDARG, E_INVALIDARG, E_INVALIDARG, E_INVALIDARG};
E_INVALIDARG, E_HANDLE, E_HANDLE, E_INVALIDARG,
E_INVALIDARG, E_INVALIDARG, E_INVALIDARG, E_INVALIDARG};
-static void test_set_coop(LPDIRECTINPUT pDI, HWND hwnd)
+static void test_set_coop(IDirectInputA *pDI, HWND hwnd)
- LPDIRECTINPUTDEVICE pMouse = NULL;
+ IDirectInputDeviceA *pMouse = NULL;
ok(hr == SetCoop_real_window[i], "SetCooperativeLevel(hwnd, %d): %08x\n", i, hr);
}
ok(hr == SetCoop_real_window[i], "SetCooperativeLevel(hwnd, %d): %08x\n", i, hr);
}
- child = CreateWindow("static", "Title", WS_CHILD | WS_VISIBLE,
- 10, 10, 50, 50, hwnd, NULL, NULL, NULL);
+ child = CreateWindowA("static", "Title", WS_CHILD | WS_VISIBLE, 10, 10, 50, 50, hwnd, NULL,
+ NULL, NULL);
ok(child != NULL, "err: %d\n", GetLastError());
for (i=0; i<16; i++)
ok(child != NULL, "err: %d\n", GetLastError());
for (i=0; i<16; i++)
if (pMouse) IUnknown_Release(pMouse);
}
if (pMouse) IUnknown_Release(pMouse);
}
-static void test_acquire(LPDIRECTINPUT pDI, HWND hwnd)
+static void test_acquire(IDirectInputA *pDI, HWND hwnd)
- LPDIRECTINPUTDEVICE pMouse = NULL;
+ IDirectInputDeviceA *pMouse = NULL;
DIMOUSESTATE m_state;
HWND hwnd2;
DIPROPDWORD di_op;
DIMOUSESTATE m_state;
HWND hwnd2;
DIPROPDWORD di_op;
/* Foreground coop level requires window to have focus */
/* Create a temporary window, this should make dinput
* loose mouse input */
/* Foreground coop level requires window to have focus */
/* Create a temporary window, this should make dinput
* loose mouse input */
- hwnd2 = CreateWindow("static", "Temporary", WS_VISIBLE,
- 10, 210, 200, 200, NULL, NULL, NULL, NULL);
+ hwnd2 = CreateWindowA("static", "Temporary", WS_VISIBLE, 10, 210, 200, 200, NULL, NULL, NULL,
+ NULL);
hr = IDirectInputDevice_GetDeviceState(pMouse, sizeof(m_state), &m_state);
ok(hr == DIERR_NOTACQUIRED, "GetDeviceState() should have failed: %08x\n", hr);
hr = IDirectInputDevice_GetDeviceState(pMouse, sizeof(m_state), &m_state);
ok(hr == DIERR_NOTACQUIRED, "GetDeviceState() should have failed: %08x\n", hr);
static void mouse_tests(void)
{
HRESULT hr;
static void mouse_tests(void)
{
HRESULT hr;
- LPDIRECTINPUT pDI = NULL;
- HINSTANCE hInstance = GetModuleHandle(NULL);
+ IDirectInputA *pDI = NULL;
+ HINSTANCE hInstance = GetModuleHandleW(NULL);
HWND hwnd;
ULONG ref = 0;
HWND hwnd;
ULONG ref = 0;
- hr = DirectInputCreate(hInstance, DIRECTINPUT_VERSION, &pDI, NULL);
+ hr = DirectInputCreateA(hInstance, DIRECTINPUT_VERSION, &pDI, NULL);
if (hr == DIERR_OLDDIRECTINPUTVERSION)
{
skip("Tests require a newer dinput version\n");
return;
}
if (hr == DIERR_OLDDIRECTINPUTVERSION)
{
skip("Tests require a newer dinput version\n");
return;
}
- ok(SUCCEEDED(hr), "DirectInputCreate() failed: %08x\n", hr);
+ ok(SUCCEEDED(hr), "DirectInputCreateA() failed: %08x\n", hr);
- hwnd = CreateWindow("static", "Title", WS_OVERLAPPEDWINDOW,
- 10, 10, 200, 200, NULL, NULL, NULL, NULL);
+ hwnd = CreateWindowA("static", "Title", WS_OVERLAPPEDWINDOW, 10, 10, 200, 200, NULL, NULL,
+ NULL, NULL);
ok(hwnd != NULL, "err: %d\n", GetLastError());
if (hwnd)
{
ok(hwnd != NULL, "err: %d\n", GetLastError());
if (hwnd)
{