[英]Opening command line program with elevated rights
我目前正在編寫一個 DLL 注入程序(C++),它將指定的證書添加到certmgr.exe
。
我寫了與注入有關的整個事情( OpenProcess
等)。 當我執行它時 - 附加到svchost
- 我的 DLL 沒有加載,因為它似乎沒有svchost
那樣的權限。
我如何傳遞權利?
在我的 DLL 文件中,我使用的是system("certmgr.exe -add ....")
我認為這可能是問題所在,因為命令行作為單獨的程序打開(就像我通過start
打開它一樣)。
使用“runas”參數使用ShellExecute() ,這將使其嘗試以管理員身份運行
ShellExecuteA( NULL,
"runas",
"c:\\windows\\certmgr.exe",
"-add ....",
NULL,
SW_SHOWNORMAL
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.