本文主要通過createprocessasuser()函式來在某使用者的身份下啟動程序。
/********************
引數解釋:引數一:要獲取的程序的程序名,比如notepad++.exe
引數二:傳出引數,傳出所傳入程序的token
返回值:反正有錯就返回假,成功獲取token就返回真
*********************/
bool
getprocesstoken
(tchar *pname,handle &htoken)
processentry32 pe =
;for
(bool ret =
process32first
(hsnapshot,
&pe)
; ret; ret =
process32next
(hsnapshot,
&pe))}
closehandle
(hsnapshot)
; hprocess =
openprocess
(process_all_access, false, dwprocessid);if
(null
== hprocess)if(
!openprocesstoken
(hprocess,token_all_access,
&htoken))
dword dwlen;if(
!gettokeninformation
(htoken, tokensessionid,
&dwterminalsrvsessionid,
sizeof
(dword)
,&dwlen)
)return
true
;}
void
restartcontrolprocess
(tchar *m_controlfilepath,handle htoken)
uses_conversion;if(
!createprocessasuser
(htoken,
null
,m_controlfilepath,
null
,null
,false
,create_unicode_environment |detached_process,lpenv,
null
,&si,
&pi)
)closehandle
(pi.hthread)
;}
在已知使用者名稱和密碼的情況下,使用logonuser的方法在該使用者下建立程序
參考於system使用者程序或服務程序以特定使用者啟動其他程式的處理
Linux建立普通使用者
一 建立普通使用者 admin 建立user目錄 mkdir home user 建立user01使用者 adduser d home user user01 user01 更改使用者 admin 的密碼 passwd user01 新的 密碼 重新輸入新的 密碼 passwd 所有的身份驗證令牌已...
在Oracle中建立與刪除普通使用者
可以在oracle中建立新的普通使用者,建立普通使用者命令是 create user,在建立普通使用者的同時,應該為其分配乙個具體的表空間,通常叫users。用sys登入,查詢oracle中有哪些可用儲存空間,所有普通使用者預設為users儲存空間 select from v tablespace ...
mysql怎麼建立普通使用者 MySQL建立普通使用者
建立普通使用者 在建立使用者之前,通過select語句,檢視mysql.user表中有哪些使用者 查詢結果 可以看出,user表中只有乙個root使用者資訊 由於,mysql中儲存的資料較多,通常乙個root使用者,是無法管理這些資料的,因此,需要建立多個普通使用者,來管理不同的資料 建立普通使用者...