2 ms·
The way CreateProcess takes a string as an argument instead of argv is what made me lose patience with Windows overall. I wasn't a big fan of Windows to start
by t43562 5y ago
The way CreateProcess takes a string as an argument instead of argv is what made me lose patience with Windows overall.
I wasn't a big fan of Windows to start with but I had to support it as a potential platform in a build syste. We wrote a kind of miniature shell that worked on Windows and Linux to capture and keep output from being interleaved (something GNU make does itself now).
It was a great misery to try to quote various bits of a string so that windows cmdline parsing would interpret internationalised filenames with spaces, single or double quotes etc as separate arguments. The command was potentially a call to exec bash or some other shell with its own quoting rules going on in the arguments....
This may seem like a small thing but it made me really reject the idea of wasting time on the platform. It's really the most crucial API in the OS and it's awful and there was a very simple pre-existing example of how to do it right (char *argv[]) - what excuse was there for it?