2012-08-04 87 views
13

我一直在環顧四周,但無法找到解決問題的方法,即使解決了一些類似於我的問題。隱藏C程序的控制檯窗口

我想在我的C程序運行時隱藏控制檯窗口。

#include <stdio.h> 
#include <stdlib.h> 
#include <time.h> 
#include <windows.h> 
#define _WIN32_WINNT 0x0500 

int main(){ 
    HWND hWnd = GetConsoleWindow(); 
    ShowWindow(hWnd, SW_MINIMIZE); //won't hide the window without SW_MINIMIZE 
    ShowWindow(hWnd, SW_HIDE); 
} 

這是我試過,但編譯器給我「初始化將指針從整數,未作類型轉換」

和致命的一個實際上停止編制「未定義的引用‘GetConsoleWindow’」

PS我檢查了wincon.h並定義了GetConsoleWindow函數。

+0

這可以幫助你:[如何隱藏控制檯窗口與WinAPI?](http://stackoverflow.com/questions/6096500/howto-hide-console-window-with-winapi) – 2012-08-04 21:43:24

+0

肯,我使用C不是C++,該線程解決了另一個問題,而不是這個。我已經嘗試過了。 – Athropos 2012-08-04 21:53:51

+0

@ Steve314,你是對的。回頭再閱讀更深入一點,事實並非如此。刪除我的評論 - 無法撤消近距離投票,但不希望引導他人錯誤的方式。感謝您的更正。 :-) y Orionis,我的歉意。 – 2012-08-04 22:00:27

回答

14

#define _WIN32_WINNT 0x0500 

(這是需要使用GetConsoleWindow - 看到documentation)必須

#include <windows.h> 

#define所使用的windows.h知道你是哪個版本的Windows之前定位(以及它必須提供哪些聲明/哪些附加字段必須添加到可能與該鏈接器相關的結構/其他魔法錯誤);如果你在之後定義它那麼你包含windows.h它就沒用了。

+0

它的工作,謝謝! – Athropos 2012-08-04 21:49:34

相關問題