Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проект не хочет компилиться

2.1K
17 марта 2004 года
Stanky
48 / / 06.12.2003
Кто-нидь может мне объяснить в чём проблема?

#include <windows.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
LARGE_INTEGER liDueTime;

liDueTime.QuadPart=-50000000;

HANDLE hTimer=CreateWaitableTimer(NULL, TRUE, NULL);

SetWaitableTimer(hTimer, &liDueTime, 0, NULL, NULL, 0);

WaitForSingleObject(hTimer, INFINITE);

keybd_event(VK_MENU, 0, 0, 0 );
keybd_event(VK_RETURN, 0, 0, 0 );


keybd_event(VK_RETURN, 0, KEYEVENTF_KEYUP, 0 );
keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0 );
}

Говорит, что функции CreateWaitableTimer и SetWaitableTimer не объявлены!!! Юзаю VisualStudio .NET!!! Я подозреваю, что ошибка кроется в Winbase.h!!!

Буду благодарен за откомпиленную версиюю!!!
319
17 марта 2004 года
xelos
577 / / 27.02.2003
Цитата:
Originally posted by Stanky
Кто-нидь может мне объяснить в чём проблема?

#include <windows.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
LARGE_INTEGER liDueTime;

liDueTime.QuadPart=-50000000;

HANDLE hTimer=CreateWaitableTimer(NULL, TRUE, NULL);

SetWaitableTimer(hTimer, &liDueTime, 0, NULL, NULL, 0);

WaitForSingleObject(hTimer, INFINITE);

keybd_event(VK_MENU, 0, 0, 0 );
keybd_event(VK_RETURN, 0, 0, 0 );


keybd_event(VK_RETURN, 0, KEYEVENTF_KEYUP, 0 );
keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0 );
}

Говорит, что функции CreateWaitableTimer и SetWaitableTimer не объявлены!!! Юзаю VisualStudio .NET!!! Я подозреваю, что ошибка кроется в Winbase.h!!!

Буду благодарен за откомпиленную версиюю!!!


To compile an application that uses this function, define the _WIN32_WINNT macro as 0x0400 or later.
посмотри в stdafx.h как определено.
у меня стоит еще #include <time.h>, но может это для других функций, не помню точно.

3.2K
17 марта 2004 года
srd
50 / / 31.08.2003
Цитата:
Originally posted by xelos

To compile an application that uses this function, define the _WIN32_WINNT macro as 0x0400 or later.
посмотри в stdafx.h как определено.
у меня стоит еще #include <time.h>, но может это для других функций, не помню точно.



Да, надо перед включением windows.h определить макрос
#define _WIN32_WINNT 0x0400
А вот time.h здесь не нужен. Это заголовок из C Runtime Library. Там объявлены функции time(), ctime() и прочее.

2.1K
17 марта 2004 года
Stanky
48 / / 06.12.2003
Цитата:
Originally posted by srd


Да, надо перед включением windows.h определить макрос
#define _WIN32_WINNT 0x0400



А объяснение этому? В MSDN'е я этого не видел!!!

319
17 марта 2004 года
xelos
577 / / 27.02.2003
Цитата:
Originally posted by Stanky


А объяснение этому? В MSDN'е я этого не видел!!!


есть, смотри лучше, цитату на аглицком я из мсдн взял.

3.2K
17 марта 2004 года
srd
50 / / 31.08.2003
Цитата:
Originally posted by Stanky


А объяснение этому? В MSDN'е я этого не видел!!!



Потому что данные функции не реализованы в Windows 95 и в MSDN об этом написано. Если ты ориентируешься на Windows 98/ME, то здесь грамотнее будет определить макрос
#define _WIN32_WINDOWS 0x0410
вместо _WIN32_WINNT

2.1K
18 марта 2004 года
Stanky
48 / / 06.12.2003
Всем огромнейший тхенкс!!!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог