Я хочу преобразовать WinMain
'cmdLine
аргумент в argc
и argv
, чтобы я мог использовать функцию анализа аргумента, которую я написал для консольных приложений.
Это было бы тривиально, за исключением того, что я тоже хочу поддерживать "цитаты". Например:
test.exe test1 test2 "testing testing"
должно быть
argv[0] = "test.exe"; argv[1] = "test1"; argv[2] = "test2"; argv[3] = "testing testing";
Я понимаю, что cmdLine не имеет имени программы (argv [0]); это не имеет значения, я могу использовать фиктивное значение.
Я думал о том, чтобы сделать это с помощью регулярного выражения, (("[^"]+")\s+)|(([^\s]+)\s*)
Я не уверен, насколько хорошо это будет работать, хотя .. Возможно, не очень хорошо? Есть ли какая-либо функция для этого в Windows API? Спасибо