Solved

hide the dos windows when my application is launched

Posted on 2008-10-09
16
414 Views
Last Modified: 2008-10-10
Hello Experts
how can i hide my dos windows when my application is running?
I am using Dev c++ as compiler
i tried
int WINAPI WinMain (HINSTANCE,  HINSTANCE, LPSTR, int)

 my code here

return 0;

but it seems not working yet
0
Comment
Question by:kagami01
  • 7
  • 6
  • 2
  • +1
16 Comments
 
LVL 31

Expert Comment

by:Zoppo
ID: 22677705
Hi kagami01,

I'm not sure if this works, but you can give it a try: With 'GetConsoleWindow' you should be able to retrieve the HWND of the DOS-window, then you can ShowWindow( ..., SW_HIDE ); to hide it.

Hope that helps,

ZOPPO
0
 

Author Comment

by:kagami01
ID: 22677733
you mean like the code below here:
int WINAPI WinMain( HINSTANCE,  HINSTANCE, LPSTR, int)
 
 
{
  
  HWND Console;             
  AllocConsole ();
  Console=FindWindowA ("ConsoleWindowClass",NULL);
  ShowWindow (Console,SW_HIDE);
 
 
 my other c++ code here
 
 
 return 0;
}

Open in new window

0
 
LVL 31

Expert Comment

by:Zoppo
ID: 22677755
Yes, it might be this works (never tried this before, so I'm not sure) ...
0
Does Powershell have you tied up in knots?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

 

Author Comment

by:kagami01
ID: 22677787
maybe i's ok but it's not running on vista
anywya any other solutins beside that?
0
 
LVL 13

Expert Comment

by:Mark_FreeSoftware
ID: 22678175
set your project type to a normal windows application instead of a console application
0
 

Author Comment

by:kagami01
ID: 22678447
already settled to windows application but i didn't marked the "XP teme" option
anyway it's not working yet on Vista
0
 
LVL 31

Accepted Solution

by:
Zoppo earned 180 total points
ID: 22678531
Sorry, seems I didn't read you code-snippet carefully - you use 'FindWindowA', but I suggested to use 'GetConsoleWindow'.

So, it should be:

HWND console = GetConsoleWindow();
if ( NULL != console )
{
 ::ShowWindow( console, SW_HIDE );
}

ZOPPO
0
 

Author Comment

by:kagami01
ID: 22679424
that code has caused many erros while the compiling
0
 
LVL 31

Expert Comment

by:Zoppo
ID: 22679493
Hm - to get 'GetConsoleWindow' compiled you need to define _WIN32_WINNT as 0x0500 or to retrieve the function pointer 'manually' using LoadLibrary and GetProcAddress.
0
 

Author Comment

by:kagami01
ID: 22679504
i have dev c ++ plus as compiler how can i fix it?
0
 

Author Comment

by:kagami01
ID: 22679538
i got this error:

`GetConsoleWindow' undeclared (first use this function)
0
 
LVL 31

Expert Comment

by:Zoppo
ID: 22679546
I'm not sure since I never used dev c++ - anyway, LoadLibrary and GetProcAddress are Win32-API functions, so you should be able to use them ...
0
 
LVL 31

Expert Comment

by:Zoppo
ID: 22679667
Yes, you get this since either you have a old SDK or _WIN32_WINNT is less than 0x0500.
0
 
LVL 39

Expert Comment

by:itsmeandnobodyelse
ID: 22679681
>>>> how can i hide my dos windows when my application is running?
How do you invoke your application?

Should it run in background with no user interface? Or does it has a window to show? Or do you start it in a console (DOS Box) and you don't want a further console to pop-up?
0
 

Author Comment

by:kagami01
ID: 22679974
Dear Zoppo you were right i forgot the put
 #define _WIN32_WINNT 0x500 before the #include <windows.h>
 and i added in dev c++ in "tools"--->"option compilation"--> "-lgdi32"
so the i compiled the exe without problem and it worked for win vista thank you so much Zoppo.

question?!?!?!

i got a file after the compiling like follow:

Myapplication.exe.Manifest

i need it in in where the .exe folder is  or not??

0
 
LVL 39

Expert Comment

by:itsmeandnobodyelse
ID: 22680473
>>>> i need it in in where the .exe folder is  or not??
Yes. The .manifest is some kind of configuration file where parts of the information was stored that formerly was in Windows registry.
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Exception thrown at 0x00007FFD5BC81F28 7 44
Powershell Script need assistance to make some changes 4 82
Beginner to Unreal Engine 4 5 80
Problem to error 4 61
Having just graduated from college and entered the workforce, I don’t find myself always using the tools and programs I grew accustomed to over the past four years. However, there is one program I continually find myself reverting back to…R.   So …
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.
The viewer will learn how to use the return statement in functions in C++. The video will also teach the user how to pass data to a function and have the function return data back for further processing.

832 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question