Я хочу запустить командную строку с повышенными правами в Windows в определенный рабочий каталог. Так, например, я попытался это:ShellExecute запрос cmd с определенным рабочим каталогом
ShellExecute(
hWnd,
L"runas",
L"cmd.exe",
NULL,
m_szSelectedFile,
SW_SHOW
);
Где m_szSelectedFile = L"C:\\Users\\User\\Desktop"
ShellExecute
документирована как
HINSTANCE ShellExecute(
_In_opt_ HWND hwnd,
_In_opt_ LPCTSTR lpOperation,
_In_ LPCTSTR lpFile,
_In_opt_ LPCTSTR lpParameters,
_In_opt_ LPCTSTR lpDirectory,
_In_ INT nShowCmd
);
К сожалению, он всегда начинает с C:\WINDOWS\system32
. Что я делаю не так?
Что вы делаете неправильно, в основном это делать на C++. Просто создайте ярлык. –
@ Cheersandhth.-Alf Я пытаюсь понять, что вы имеете в виду; вы думаете, что можете помочь пролить некоторый код, чтобы попытаться объяснить его? Это поможет мне понять. Может быть, я должен объяснить контекст того, что я пытаюсь? Я написал обработчик контекстного меню оболочки, и я хочу, чтобы у него было меню правой кнопки мыши, чтобы запустить повышенную командную строку в текущем выбранном месте. – Alexandru
'object.ShellExecute (sFile [, vArguments] [, vDirectory] [, vOperation] [, vShow])' Заметьте, что вы передаете значение null для каталога –