Я работаю над программой на C++, которая должна запускать Internet Explorer и отображать локальный файл html в Windows 7. Я пытаюсь использовать ShellExecute, но он не работает. Я googled вокруг, но не мог найти ответ, который сработал. Вот код:
ShellExecute(NULL, "open", "start iexplore %userprofile%\\Desktop\\html_files\\file.hml", NULL, NULL, SW_SHOWDEFAULT);
Я скопировал команду в вызов системы(), чтобы посмотреть, если она будет работать, и это было сделано. Вот система() вызов я попробовал:
C++ ShellExecute не работает
system("start iexplore %userprofile%\\Desktop\\html_files\\file.html");
Поскольку системный вызов работал, его явно проблемы с ShellExecute. В принципе, Internet Explorer не возникает. Все компилируется правильно. Есть идеи?
Вы правы; т.е. не работает с% - я только что протестировал его. Вы знаете какие-либо альтернативы% userprofile%? – pdf4664
Кроме этого, ваш ответ работает. – pdf4664
Ну, вы можете использовать: 'getenv (« USERPROFILE »);' получить значение переменной окружения и сохранить это в строке. Затем вызовите 'ShellExecute'. – JosEduSol