commit e7972b56ad51f66e411a9059db79586dff8ee2ad Author: Carl Philipp Klemm Date: Mon Nov 17 14:16:56 2025 +0100 inial commit diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..f1d2cb8 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,4 @@ +cmake_minimum_required(VERSION 3.16) +project(winecmdwrap C) + +add_executable(${PROJECT_NAME} main.c) diff --git a/main.c b/main.c new file mode 100644 index 0000000..0ac02a8 --- /dev/null +++ b/main.c @@ -0,0 +1,32 @@ +#include +#include +#include +#include + +int main(int argc, char** argv) +{ + if(argc < 2) { + puts("Usage: winecdmwrap.exe [PROGRAM] [ARGS]"); + return 1; + } + + size_t len = 0; + for(int i = 1; i < argc; ++i) + len += strlen(argv[i])+1; + const char* uniprefix = "cmd /c start /unix "; + len+=strlen(uniprefix); + char* cmd = calloc(1, len); + strcat(cmd, uniprefix); + + for(int i = 1; i < argc; ++i) { + len += strlen(argv[i])+1; + strcat(cmd, argv[i]); + strcat(cmd, " "); + } + + printf("running command: %s\n", cmd); + + system(cmd); + + return 0; +}