怎樣實現編譯出的exe文件不彈出console窗口

這篇文章的主要內容是介紹怎樣實如今codeblocks下編譯出來的exe文件,雙擊以後不顯示黑框直接執行的問題.windows

困擾我好久了,最後卻發現很簡單.app

先說明一下需求:函數

我但願在一段代碼裏經過WinExec函數調用一個update.exe程序,但每次update.exe被調用時卻發現老是會有黑框彈出來.ui

個人需求就是把黑框隱去..net

在這裏舉例說明該怎麼作:code

----進程

update的源代碼:get

-------cmd

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main()
{
    WinExec("calc.exe ",SW_HIDE);it

    Sleep(2000);
    WinExec("cmd.exe /c taskkill /IM calc.exe ",SW_HIDE);
    return 0;
}

------

update源代碼很簡單,首先調用計算器程序(calc.exe),而後等待2s,而後經過taskkill 殺掉這個進程.

首先,彈出console窗口的狀況是這樣的:

打開code::blocks, 新建一個C文件,把代碼粘進去.

快捷鍵F9(build and run):

出現如下狀況:

 

1

能夠看到一個console黑框和計算器窗口.

找到生成的test.exe程序,直接雙擊,效果是同樣的,一樣有黑框.

那麼怎樣才能避免console黑框的產生呢?

其實很簡單:

首先,打開codeblocks以後新建一個project,分類能夠選擇Console application.

 

2

而後,把上邊的代碼拷到main.c 文件裏.

以後先不要急着編譯運行(其實如今直接編譯運行的話,仍是會有console窗口的),選擇project->Properties->Build targets

3

選擇Release 下Type選項爲GUI application

而後點OK,

 

4

在編譯運行以前,Build target選擇Release

這樣編譯出來的exe可執行文件雙擊的時候就不會彈出console 窗口了.Enjoy it.微笑

好吧,我認可這篇文章寫得很囉嗦,也沒有什麼理論解釋,只是一個小技巧,

但願能夠幫到別人,本身作一下記錄之後碰上這樣的問題就不用糾結了.:)

相關文章
相關標籤/搜索