如果我使用C++ Windows API「CreateProcess」或C運行時庫「system」啓動大多數進程,它們運行良好。但是,如果我使用相同的啓動openfiles.exe在Windows 7和8下的「openfiles.exe/query」,它永遠不會工作。它抱怨需要運行32位操作系統,或者如果我用runas升級它,我會得到無效函數。在Win 7和Win 8下,openfiles.exe確實有些奇怪,儘管它在命令提示符下工作正常,但它在從另一個進程啓動時從不運行。爲什麼?在Windows 7和8下,openfiles.exe不能被其他應用程序啓動。
0
A
回答
1
看來在Windows 64位下,應用程序也必須是64位的(不確定是否適用於32位操作系統)。
我的系統是Windows 7 64位,如果我用「目標平臺」設置爲「64位Windows」構建我的應用程序,以下工作。
::ShellExecuteW(this->Handle, NULL, L"openfiles.exe", L"/query", NULL, SW_SHOWNORMAL);
我相信其他啓動選項也可以像CreateProcess一樣工作。
但是,當您構建爲32位應用程序時,會給出同樣的錯誤。
+0
我相信這是正確的答案。謝謝! –
相關問題
- 1. 在Windows Phone 7中啓動其他應用程序
- 2. 在windows phone7上啓動其他程序或應用程序
- 3. Windows 8 - 啓動地圖應用程序
- 4. windows窗體不啓動對其他機器和過程不能被關閉
- 5. Windows(Phone)8 - 啓動Windows啓動的Metro應用程序
- 6. iOS4的應用程序功能和其他應用程序的啓動
- 7. Windows 8,在啓動時啓動應用程序
- 8. QProcess不啓動Windows應用程序下的Java應用程序
- 9. 從其他應用程序自動啓動DailyMotion Windows Phone
- 10. Windows 8的應用程序啓動器與WPF應用程序
- 11. ClickOnce應用程序啓動Windows 8應用程序
- 12. Windows 8從桌面應用程序啓動「metro」應用程序?
- 13. Windows Phone 8 - 從應用程序內啓動應用程序
- 14. 從其他應用程序啓動IntentService
- 15. 直接啓動其他應用程序
- 16. 如何從Windows Phone 8.1中的其他應用程序啓動應用程序
- 17. Delphi應用程序 - 在Windows 8上禁止Windows鍵(啓動)
- 18. 在Windows 8應用程序中自動啓動動畫
- 19. 如何從其他應用程序啓動ClickOnce應用程序?
- 20. Android - 允許其他應用程序啓動應用程序
- 21. Windows 8應用程序:圖標,啓動畫面和瓷磚
- 22. 在Windows 8 metro應用程序啓動過程
- 23. Windows Phone 8上的Windows Phone 7應用程序8
- 24. 程序不是在Windows 7啓動時啓動
- 25. 在Windows 7啓動時啓動程序(自動啓動)
- 26. 授予Windows 8應用程序的權限以阻止其他應用程序
- 27. 從其他iOS應用程序啓動Facebook和Twitter應用程序
- 28. Windows Phone應用程序啓動和IsolatedStorage
- 29. 如何在Windows 8中重新啓動Windows應用商店應用程序
- 30. 如何在windows phone 7啓動完成後自動啓動應用程序
我懷疑這是32位和64位可執行文件的問題。 IIRC,即使在64位系統上,openfiles.exe也是一個32位exe文件。查看CreateProcess標誌並確保你爲32/64位上下文做了正確的事情。 – JimR
當您嘗試在64位操作系統上運行16位程序時,會出現這種錯誤。在你的機器上尋找一個名爲「openfiles.com」的文件。 –
在Win 7 32位下,問題仍然存在。錯誤消息是一個紅色的鯡魚。 –