wxWidgets: получение пути к приложению - PullRequest
2 голосов
/ 13 июня 2009

Как можно получить путь к модулю?

Я пишу расширение, заключенное в 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());

Ответы [ 3 ]

4 голосов
/ 13 июня 2009

Посмотрите на класс wxStandardPaths. Для вашей проблемы можно использовать методы GetExecutablePath() или GetPluginsDir() - я просто не уверен, что вы хотите сделать.

3 голосов
/ 12 ноября 2012

Я использовал

    #include "wx/stdpaths.h"
    #include "dialogsApp.h"
    #include "dialogsMain.h"

    IMPLEMENT_APP(dialogsApp);

    bool dialogsApp::OnInit()
    {

        wxString xpath;
        xpath = wxStandardPaths::Get().GetExecutablePath();

Это похоже на работу.

0 голосов
/ 13 июня 2009

Это не специфично для wxWidgets. В Windows есть функция с именем GetModuleFileName , которая делает то, что вы хотите. Ссылка на страницу MSDN.

...