25 #ifndef INCLUDED_ProcessUtils_h_GUID_6C3F7688_AF0D_4094_D629_AF8DBFDF2044 26 #define INCLUDED_ProcessUtils_h_GUID_6C3F7688_AF0D_4094_D629_AF8DBFDF2044 32 #include <osvr/Util/PlatformConfig.h> 33 #include <osvr/Util/Verbosity.h> 36 #if !defined(OSVR_ANDROID) 37 #if defined(OSVR_WINDOWS) 48 OSVR_INLINE OSVR_ReturnCode
osvrStartProcess(
const char* executablePath,
const char* workingDirectory)
50 #if defined(OSVR_ANDROID) 52 OSVR_DEV_VERBOSE(
"osvrStartProces not yet implemented for Android");
54 #elif defined(OSVR_WINDOWS) 55 STARTUPINFO startupInfo = { 0 };
56 PROCESS_INFORMATION processInfo = { 0 };
58 startupInfo.dwFlags |= STARTF_USESHOWWINDOW;
59 startupInfo.wShowWindow = SW_SHOW;
60 if (!CreateProcess(executablePath,
nullptr,
nullptr,
nullptr, FALSE, CREATE_NEW_CONSOLE,
nullptr,
61 workingDirectory, &startupInfo, &processInfo)) {
62 OSVR_DEV_VERBOSE(
"Could not start process.");
66 OSVR_DEV_VERBOSE(
"osvrStartProcess not yet implemented for non-Windows platforms");
87 #endif // INCLUDED_ProcessUtils_h_GUID_6C3F7688_AF0D_4094_D629_AF8DBFDF2044 Header declaring a type and values for simple C return codes.
#define OSVR_RETURN_FAILURE
The "failure" value for an OSVR_ReturnCode.
Definition: ReturnCodesC.h:47
#define OSVR_RETURN_SUCCESS
The "success" value for an OSVR_ReturnCode.
Definition: ReturnCodesC.h:45
Header providing basic C macros for defining API headers.
OSVR_INLINE OSVR_ReturnCode osvrStartProcess(const char *executablePath, const char *workingDirectory)
INTERNAL ONLY - start a process in a platform agnostic way.
Definition: ProcessUtils.h:48