我正在創建一個用戶程序(CreateProcessAsUser()
),以在用戶屏幕上啓動應用程序。我需要以某種方式獲得一個函數在應用程序啓動之前在用戶的屏幕上運行。我的想法是CreateRemoteThread()
,並把我的功能在這裏,但這將發生CreateProcessAsUser()
已經啓動應用程序後。任何人建議?謝謝想在線程執行前完成線程
回答
創建一個新的應用程序來執行您的功能,然後執行目標應用程序(可以使用CreateProcess()
作爲新應用程序通過CreateProcessAsUser()
啓動)。
有沒有繞過創建另一個新應用程序的方法。我可以執行以下操作:使用CreateProcessAsUser創建一個不啓動應用程序的進程,然後爲此進程分配一個線程來調用我的函數,然後用我的原始應用程序創建另一個進程(CreateProcessAsUser)? – user1881918
@ user1881918:「創建一個不啓動應用程序的進程」 - 一個進程是一個應用程序,你的意思是界面?我會避免'CreateRemoteThread' - 如果你想要啓動的應用程序是64位,而你的應用程序是32位呢?你不能注入一個線程。您應該在調用應用程序上使用'CreateProcessAsUser'(即使用'GetModuleFileName'),並使用一個命令行參數來告訴它執行您的'函數',這樣您只需要一個應用程序,但它有兩件事。 – parrowdice
是的,我的意思是接口,但會運行一些exe不會有任何用處。謝謝,這清理了一些東西 – user1881918
- 1. 會在子線程完成執行之前退出主線程?
- 2. 單線程執行完成
- 3. 等待線程完成執行上
- 4. pthread_join成功=線程完全執行?
- 5. 等待線程池完成執行
- 6. 等待線程完成執行
- 7. JNI - Java在本地線程完成執行之前退出
- 8. 爲什麼Android線程在完成執行之前被終止?
- 9. 主線程不會等待另一個線程完成執行
- 10. 使用ThreadPool完成其他線程後執行一些線程
- 11. Android線程 - 在執行所有其他線程之前執行一個線程
- 12. Android ::在主線程中執行其他任務之前阻止主線程完成主線程
- 13. 線程 - 確保線程完成在C#
- 14. 之前執行的線程
- 15. 控制檯在線程完成之前退出(多線程)
- 16. Java - 在當前線程完成時啓動線程
- 17. 如何確保一個線程在其主線程完成後執行?
- 18. 線程是否在完成執行時出現另一個加入的線程?
- 19. 當.NET進程主線程完成時,其他當前正在執行的線程會發生什麼?
- 20. 在線程完成時從線程移除線程
- 21. 事件在當前線程或新線程中執行
- 22. Java多線程等待線程完成
- 23. 哪個線程完成多線程?
- 24. 線程完成時通知主線程
- 25. 斯卡拉 - 多線程,當任何子線程完成時完成主線程
- 26. 線程執行
- 27. 等待執行程序服務中的線程完成
- 28. 程序完成執行後的線程狀態
- 29. 蟒蛇如何保持一個線程執行,直到其他線程完成
- 30. 如何讓線程等到另一個線程完成該方法執行
我認爲這是WinAPI? – dutt
是的。我在createprocessasuser調用之前調用了該函數,但該函數在隱藏的會話0中調用。我認爲通過使用一個線程我可以在用戶會話中調用該函數。 – user1881918