我已经将Wt 3.3.1二进制文件安装到Windows 10并将其与VS2015一起使用。我还安装了1.53。每次我尝试运行以下示例时,root()函数总是返回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是0xFFFFFFFF”。有人可以帮忙吗?感谢
答案 0 :(得分:0)
好的,我找不到预建库的解决方案。我的解决方案是下载Wt源代码,Boost并使用CMake编译它们。它仍然无法在调试模式下工作,但我现在至少有一个工作版本(发布)。