LNK2019在QtCreator中使用WinMain时

时间:2012-11-27 22:56:50

标签: c++ qt lnk2019 fltk

我正在QtCreator中制作FLTK GUI。请不要因为我没有使用Qt来制作我的GUI而生气,这是无关紧要的。

无论如何,我的项目类型是“Plain C ++ Project”,这是我的代码(你可能不需要阅读它,但我把它放在那里以防万一):

// include headers
#include <Windows.h>
#include <Fl/Fl.H>
#include <FL/FL_Window.h>
#include <FL/Fl_Button.h>
#include <FL/FL_ask.h>
// macro functions
#define UP(x) UNREFERENCED_PARAMETER(x)
// callback function
void callback(Fl_Widget *sender)
{
    sender->label("Thanks!");
}
// main function
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, 
    int nShowCmd)
{
    // UP's
    UP(hInstance);
    UP(hPrevInstance);
    UP(lpCmdLine);
    UP(nShowCmd);
    // window
    Fl_Window *window = new Fl_Window(250, 250, "Derp Window");
    window->begin();
    // button
    Fl_Button *button = new Fl_Button(10, 100, 230, 25, "Click Me!");
    button->callback(callback);
    // run
    window->end();
    window->show();
    int result = Fl::run();
    // delete ptr's
    delete button;
    delete window;
    // return
    return result;
}

当我运行此操作时,我收到此警告和两个错误(对于小图片感到抱歉,如果您无法阅读,只需放大浏览器):

enter image description here

我知道什么是LNK2019错误,事实上它们可能是我存在的祸根。但在这种情况下,我不知道为什么我会这样做。我想你也应该看看这个,这是我的Qt项目.pro文件的文本:

TEMPLATE = app CONFIG + = console CONFIG - = app_bundle CONFIG - = qt

win32:LIBS + = -luser32 -lshell32 -lgdi32 -lole32 -ladvapi32

SOURCES + = main.cpp

unix | win32:LIBS + = -L $$ PWD /../../../ Desktop / C ++ / FLTK / lib / -lfltk

INCLUDEPATH + = $$ PWD /../../../ Desktop / C ++ / FLTK / include DEPENDPATH + = $$ PWD /../../../ Desktop / C ++ / FLTK / include

这可能是最重要的部分:我从来没有得到任何错误,当我使用int main()作为我的主要功能时程序运行正常。

所以,我的问题是为什么我得到这个,我该如何解决?

2 个答案:

答案 0 :(得分:2)

删除声明

CONFIG + = console

答案 1 :(得分:0)

我通过制作“空Qt项目”而不是“C ++控制台应用程序”来修复它!