做Windows控制台程序,能不能隐藏当前窗口32
发布网友
发布时间:2023-11-08 10:36
我来回答
共4个回答
热心网友
时间:2024-11-25 10:35
在程序开始写
ShowWindow(GetConsoleWindow(), SW_HIDE);
注意要包含windows.h。
但这样依然会有控制台的窗口一闪而过。完美的方法是写WinMain入口的Win32程序,不产生窗口只建立消息循环,这样就完全没有窗口。
热心网友
时间:2024-11-25 10:35
在程序最前面加上一句就不出那个黑窗口了,。把下面这句加上就行了。
#pragma comment(linker,"/subsystem:\"Windows\" /entry:\"mainCRTStartup\"")
热心网友
时间:2024-11-25 10:36
#include <windows.h>
void main()
{
char strAppName[1024];
{
typedef int (WINAPI ICEPUB_GETAPPLICATIONNAME)(char *strReturn);
ICEPUB_GETAPPLICATIONNAME *icePub_getApplicationName = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");
if(hDLLDrv)
{
icePub_getApplicationName = (ICEPUB_GETAPPLICATIONNAME *)GetProcAddress(hDLLDrv, "icePub_getApplicationName");
}
if(icePub_getApplicationName != NULL)
{
icePub_getApplicationName(strAppName);
}
if(hDLLDrv)
FreeLibrary(hDLLDrv);
}
{
typedef int (WINAPI ICEPUB_HIDEFORM)(char *strFormTitle);
ICEPUB_HIDEFORM *icePub_hideForm = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");
if(hDLLDrv)
{
icePub_hideForm = (ICEPUB_HIDEFORM *)GetProcAddress(hDLLDrv, "icePub_hideForm");
}
if(icePub_hideForm)
icePub_hideForm(strAppName);
if(hDLLDrv)
FreeLibrary(hDLLDrv);
}
//your 后台运行程序代码
}
download:
http://dl.icese.net/dev.php?f=icePubDll.rar
参考资料:http://wenku.baidu.com/album/view/c56655bfc77da26925c5b0a4
热心网友
时间:2024-11-25 10:36
见 望穿秋水待伊人 的答案