winmain

Difference between WinMain,main and DllMain in C++

What is the difference between the three functions and when to use them?? ...

How can I write a Windows application without using WinMain?

Windows GUI applications written in C/C++ have 'WinMain' as an entry point (rather than 'main'). My understanding of this is that the compiler generates a 'main' function to be called by the C Runtime. This 'main' function sets up the necessary environment for the GUI and calls into 'WinMain' (specifying the instance handles etc.). In s...

why doesn't winmain set the errorlevel?

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { MessageBox(NULL, _T("This should return 90 no?"), _T("OK"), MB_OK); return 90; } Why does the above program correctly display the message box, but does not se...

What functions does _WinMainCRTStartup perform?

This is part of a series of at least two closely related, but distinct questions. I hope I'm doing the right thing by asking them separately. I'm trying to get my Visual C++ 2008 app to work without the C Runtime Library. It's a Win32 GUI app without MFC or other fancy stuff, just plain Windows API. So I set Project Properties -> Confi...

What is a message pump?

In this thread (posted about a year ago) there is a discussion of problems that can come with running Word in a non-interactive session. The (quite strong) advice given there is not to do so. In one post it is stated "The Office APIs all assume you are running Office in an interactive session on a desktop, with a monitor, keyboard and ...

WINAPI main function

hi guys, could you please explain to me the WINAPI word in winmain header ? in the simpliest way.. #include <windows.h> int -->WINAPI<-- WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { MessageBox(NULL, "Goodbye, cruel world!", "Note", MB_OK); return 0; } is it just some windows f...

c++ use of winmain()

Hi, I just started learning programming for windows in c++. I had this crazy image, that win32 programming is based on calling windows functions and sending parameters to and from them. Like, when you want to create window, you call some win32 function that handles windows GUI and say "Hi, please, create me new window, 100 x 100 px, with...

WinMain not called before main (C/C++ Program Entry Point Issue)

I was under the impression that this code #include <windows.h> #include <stdio.h> int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { printf("WinMain\n"); return 0; } int main() { printf("main\n"); return 0; } would output WinMain, but of course nothing ever works how ...

How to disable WinMain entry point for a MFC application?

I understand that is not possible to have applications with multiple entry points under Windows. I have a MFC application and I added code for making it running as a service (main() entry point and other required stuff) but it looks that Windows will always run the WinMain() from MFC instead of my main. The question is how can I disabl...

How to add a wrapper to the MFC WinMain?

I want to add a wrapper to the MFC WinMain in order to be able to make a MFC application be able run as GUI application or as a service. Can I add a wrapper to WinMail from MFC without modifying MFC source code? ...

What's wrong with my using argc/argv this way in c?

This works: int main( int argc, char *argv[]) { .... gtk_init(&argc, &argv); .... But this doesn't: int WINAPI WinMain (HINSTANCE p1, HINSTANCE p2, LPSTR argv, int argc) { .... gtk_init(&argc, &argv); .... Can someone point out what's wrong there? ...

How do I programatically pop up a console from winMain in C?

int WINAPI WinMain (HINSTANCE p1, HINSTANCE p2, LPSTR p3, int p4) { } I want a console to pop up when I click a button,what's the proper way to do it? UPDATE How do I output text to that console? ...

Is it correct/proper to use DialogBox as the main window ?

Is it correct-proper as in windows doesn't say it's bad or not recommended. For example like this: int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { UNREFERENCED_PARAMETER(hPrevInstance); UNREFERENCED_PAR...