如何获取模块路径?
我正在编写DLL中的扩展名,并希望在运行时获取我的库的路径。
更新
当然第一种方式工作正常
static wxString GetModulePath()
{
static wxString path;
WCHAR buf[512] = {0};
GetModuleFileName(NULL, buf, 511);
path = buf;
return wxPathOnly(path);
}
但最后我以第二个结束
wxStandardPaths sp;
wxLogError(sp.GetPluginsDir());
答案 0 :(得分:4)
查看wxStandardPaths
课程。对于您的问题,可以使用GetExecutablePath()
或GetPluginsDir()
方法 - 我只是不确定您要做什么。
答案 1 :(得分:3)
我用过
#include "wx/stdpaths.h"
#include "dialogsApp.h"
#include "dialogsMain.h"
IMPLEMENT_APP(dialogsApp);
bool dialogsApp::OnInit()
{
wxString xpath;
xpath = wxStandardPaths::Get().GetExecutablePath();
这似乎有效。
答案 2 :(得分:0)
这不是特定于wxWidgets的。 Windows有一个名为GetModuleFileName的功能,可以满足您的需求。该链接指向msdn页面。