我想在運行我的應用程序時隱藏C的控制檯。我如何讓我的應用程序在後臺運行?在Windows操作系統中隱藏C程序的控制檯
4
A
回答
5
與main()
默認程序被編譯爲子系統:控制檯應用程序,並得到一個控制檯窗口。如果您擁有自己的應用程序啓動等過程,你可以對其進行修改通過下面的方法之一是窗口應用程序:
- 修改他們使用
WinMain()
,而不是main()
。這是典型的方法,但需要修改代碼。 (如果使用main()
的原因是容易獲得argc
/argv
,MSVC提供全球__argc
/__argv
當量爲窗口應用程序。) - 明確經由
/SUBSYSTEM:WINDOWS /ENTRY:main
參數指定子系統和入口點link.exe
。 - 使用
editbin.exe
改變事後子系統類型。如果您沒有源代碼訪問產生的進程,這個可能很有用。
2
要做到這一點最簡單的方法是使用Windows窗體的項目,而不是控制檯,然後隱藏啓動窗體。當然,另一種選擇是一個Windows服務,但如果我沒有記錯,有沒有辦法做到這一點編程,這可能是矯枉過正...
+0
你的答案就像我的。 +1。 – 2010-03-11 04:05:19
0
。有選項可以做到這一點。我想我已經通過創建一個Windows項目來完成它,但沒有Windows Forms代碼(我只包括來自我的控制檯應用程序的文件)。沒有控制檯窗口彈出。我相信我曾在Code::Blocks中通過更改GUI中的選項來完成它。我很抱歉,我不能具體說明,但我正在使用Visual Studio 2010 RC,我在那裏做的方式可能與您的不一樣。
你的評論讓我覺得,你在產卵過程。你通過你所調用的功能來做到這一點。我不知道你在用什麼語言(我會假設C,因爲你說你啓動了一個你創建的C應用程序?),但是有一個標誌可以隱藏窗口或者不要設置爲不顯示它)或使用可替代的功能來執行相同的操作,但會以不同的方式啓動該過程。嘗試shellexecute和system()。
0
使用CreateProcess
與DETACH_PROCESS
標誌。
相關問題
- 1. 在C系統()函數中隱藏控制檯Win
- 2. Boost :: windows隱藏控制檯
- 3. 使用Visual C++ 2010製作的Windows控制檯應用程序的最低操作系統是什麼?
- 4. 在C#控制檯中隱藏控制檯窗口應用程序
- 5. 隱藏Windows窗體應用程序中的控制檯窗口
- 6. 如何在Windows上隱藏Go程序的控制檯窗口
- 7. 隱藏控制檯窗口系統中的()調用
- 8. 按鈕在c#控制檯應用程序中隱藏取消隱藏
- 9. ChromeDriver控制檯應用程序隱藏
- 10. 操作系統中的後臺進程
- 11. 在Windows操作系統中的pathos軟件包操作系統
- 12. 將程序隱藏在Windows系統托盤中
- 13. 使用Windows窗體控制操作系統鼠標事件 - C#
- 14. 隱藏C程序的控制檯窗口
- 15. 隱藏或不隱藏Windows Phone 7應用程序中的系統托盤?
- 16. Jenkins如何隱藏系統級別控制檯輸出
- 17. 如何從安裝在linux上的ruby在windows操作系統上執行控制檯應用程序?
- 18. C++控制檯應用程序,隱藏標題欄
- 19. 如何在Windows操作系統上安裝influxdb並訪問管理控制檯
- 20. 在windows操作系統的文件夾中設置「隱藏」屬性?
- 21. 從Java程序操作GIT版本控制系統的輸出
- 22. 在控制檯應用程序中隱藏Chrome WebDriver
- 23. 從Process.Start隱藏控制檯窗口C#
- 24. C#控制檯和Windows應用程序
- 25. 從C++程序控制閃存系統
- 26. 如何在Linux上的C#控制檯應用程序中隱藏遊標?
- 27. 單程序操作系統
- 28. 在Windows 7操作系統上開發Windows Phone應用程序
- 29. c#排序控制檯輸入陣列排序系統中斷
- 30. 將操作系統命令的輸出寫入控制檯
我的應用程序包含許多不同的過程,這些過程是爲了充分滿足用戶的功能。但用戶只與主GUI交互,所以我想隱藏所有其他進程。 – Siddiqui 2010-03-11 04:02:45