BUG: winmain GetCommandLine only returning program name and path with no arguments
Brian Inglis
Brian.Inglis@SystematicSw.ab.ca
Sat May 13 17:20:00 GMT 2017
On 2017-05-13 08:30, Mike Barry wrote:
> Below is a sample program that demonstrates that the GetCommandLine
> function is not returning the command line arguments. I attached
> cygcheck.out.
>
> #include <windows.h>
> #include <stdio.h>
>
> int WINAPI
> WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR szCmdLine, int sw) {
> char* text = GetCommandLine();
> printf("getcmdline: %s\n", text);
> return 0;
> }
>
> gcc test_wmain.c -o test
>
> $ ./test hello world
> getcmdline: "C:\cygwin64\home\mbarry\game-repos\greenbeam\src\test.exe"
Cygwin program startup may have already taken care of the command line.
If you're using Cygwin, lose the MS cruft, and define a standard non-MS:
int
main( int argc, char **argv) {
...
}
and process the args with getopt as usual.
You could try Mingw or VS, but even there I believe you can use standard
main().
--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin
mailing list