Итак, я чувствую себя полным идиотом, но то, что я пытаюсь сделать, это запустить код, который я нашел в Интернете. Фактический код не является проблемой:Импорт библиотек на Visual Studio 2015
Я использую Visual Studio 2015, чтобы попытаться создать программу на C++, и этот код имеет функцию «FindWindow (некоторые параметры)» среди некоторых других. В верхней части он импортирует windows.h. Visual Studio, однако, говорит мне, что идентификатор «FindWindow» не определен. Так я смотрю его: https://msdn.microsoft.com/en-us/library/windows/desktop/ms633499(v=vs.85).aspx
Требования: WINUSER.H (включая Windows.h)
Библиотека: User32.lib
DLL: User32.dll
Итак, первая вещь, которую я пытался также импортировал winuser.h (не то, что мне кажется, что мне нужно, но это того стоило). Не хорошо. Итак, я смотрю на эту вещь User32.dll. Мне сказали, что вы не можете добавить .dll, добавьте .lib, поэтому я обращаю на это внимание. Я понятия не имею, что с этим делать, но то, что я нашел, говорит о таких вещах, как «Вам не нужно беспокоиться об этом, VS свяжет его для вас» или «Вы должны добавить его к зависимостям (через свойства проекта - > linker -> blah blah) "или" используйте это: #pragma comment (lib, "User32") ". Я попробовал их всех по указанию, но они, похоже, не работали. Лучше всего предположить, что я не добавлял его в зависимости корректно.
Мой вопрос в том, что я делаю неправильно, и как я могу заставить Visual Studio распознать FindWindow как существующий?
Если это помогает, вот что код:
#include <iostream>
#include <windows.h>
using namespace std;
int main(int argc, char* argv[]) {
HWND p = FindWindow("ProgMan", NULL);
return 0;
}
И «FindWindow» имеет красный волнистую линию под ним, наведя указатель мыши говорит «Ошибка: идентификатор„FindWindow“не определен»
Это правда? Или в дополнение к добавлению его к зависимостям или добавлению комментария прагмы или чего-либо еще? Я их отменил, потому что я не хотел лишних лишних вещей сидеть, потенциально вызывающих проблемы. Просто добавление этих строк не помогло. – awenonian
Не нужен ли ему определение для Unicode или ANSI? FindWindow не существует как функция - функция findWindowA или FindWindowW и FindWindow - это макрос, определенный для указания одного из параметров, основанных на настройке Unicode. –
На самом деле, я могу ошибаться. Если UNICODE define не существует, он должен по умолчанию выполнять функции, заканчивающиеся на A .... –