Wt C++ root() Returns 空

Wt C++ root() Returns Null

我已经将 Wt 3.3.1 二进制文件安装到 Windows 10 并将其与 VS2015 一起使用。我还安装了 boost 1.53。每次我尝试 运行 以下示例时,root() 函数总是 returns 0xFFFFFFFF 并且我无法使用 root():

WebApplication.cpp:

#include "stdafx.h"
#include "application.h"

HelloApplication::HelloApplication(const WEnvironment& env)
    : WApplication(env)
{
    setTitle("Hello world");
    root()->addWidget(new WText("Hey guys, welcome back!"));
}

WApplication *createApplication(const WEnvironment& env)
{
    return new HelloApplication(env);
}

application.h:

#include "stdafx.h"
#include <Wt/WApplication>
#include <Wt/WBreak>
#include <Wt/WContainerWidget>
#include <Wt/WLineEdit>
#include <Wt/WPushButton>
#include <Wt/WText>
#include <Wt/WServer>
#include <Wt/WException>

// c++0x only, for std::bind
// #include <functional>

using namespace Wt;

/*
* A simple hello world application class which demonstrates how to react
* to events, read input, and give feed-back.
*/
class HelloApplication : public WApplication
{
public:
    HelloApplication(const WEnvironment& env);

private:
};

WApplication *createApplication(const WEnvironment& env);

application.cpp:

#include "stdafx.h"
#include "application.h"

int main(int argc, char **argv)
{
    return WRun(argc, argv, &createApplication);
}

它在我不使用 root() 时起作用,例如当我单独使用 setTitle("...") 而没有 root()-addWidget(...) 它起作用时,设置页面标题但是当带有 root() 的行出现时,它会崩溃并显示一条消息:"widgetRoot was 0xFFFFFFFF"。有人可以帮忙吗?谢谢

好的,我找不到带有预建库的解决方案。我的解决方案是下载 Wt 源代码、Boost 并使用 CMake 编译它们。它在调试模式下仍然不起作用,但我现在至少有一个工作版本(发布)。