Visual C ++ 2010 ошибки при импорте User32.dll в 64-разрядную Win7 - PullRequest
2 голосов
/ 04 октября 2011

Запуск Visual C ++ 2010 на 64-битной Win7, эта строка

#include "C:\Windows\SysWOW64\user32.dll"

- правильный путь, однако ошибки включают в себя варианты

1>C:\Windows\SysWOW64\user32.dll(1): error C2018: unknown character '0x3'
1>C:\Windows\SysWOW64\user32.dll(1): error C2018: unknown character '0x4'
1>C:\Windows\SysWOW64\user32.dll(1): error C2018: unknown character '0x40'
1>C:\Windows\SysWOW64\user32.dll(1): error C2146: syntax error : missing ';' before identifier 'ÿÿ¸'
1>C:\Windows\SysWOW64\user32.dll(1): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

Я использую его для получения keybd_event () работает как MSDN говорит, что User32.dll является требованием.Спасибо !* Примечание: ошибки находятся в блоке формата кода, потому что в противном случае я не смогу отправить его

Ответы [ 3 ]

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

Это не то, как вы импортируете библиотеки.Вы только что попытались включить двоичный файл.Это не имеет ничего общего с 32/64 битами.

Что нужно для этого, добавьте user32.lib к пути к библиотеке.

Вы можете импортировать библиотеку в Visual Studio следующим образом:

Project -> Properties -> Linker -> Additional Dependencies

Добавить "user32.lib" в список.

0 голосов
/ 04 октября 2011

вы загружаете файлы dll с помощью функции LoadLibrary (), которая требует "windows.h", однако Visual Studio по умолчанию добавляет импортируемые файлы lib, такие как "user32.lib" и "kernal32.lib" и т. Д.включите заголовочный файл, чтобы эта функция работала.

0 голосов
/ 04 октября 2011

Используйте #include <windows.h> вместо

...