Forum Discussion

TIMOTHY_MANGAN's avatar
May 10, 2022

PSF and CREATE_NEW_PROCESS_GROUP

The application RStudio has issues when packaged together with  R (the launguage).  It is known that R requires the PSF along with FileRedirectionFixup to operate and works quite well. Therefore in this package with both components, the PsfLauncher is being used to launch RStudio's primary application, RGUI.exe, which is an x64-bit Windows32 App.

 

RGUI subsequently launches rconsole.exe which is a 64-bit console app.  When it makes the CreateProcess call (intercepted by PsfRuntime), the dwflags parameter includes CREATE_NEW_PROCESS_GROUP.  PsfRuntime intercept creates this process as suspended (along with the requested flags), and then injects PsfRunTimeX64.dll into the new process before allowing the new process to resume.  Although we can see that the DLL was successfully injected, the dll is unable to properly initialize as no debug output appears in the debug console port.  Subsequently, rconsole does not get the required fixups and fails to locate the required dlls from in the package.

 

The documentation on CREATE_NEW_PROCESS_GROUP was written long before the container, and does not provide information on any relationship between process groups, Jobs, or containers.

 

Is such a program supported in the container/PSF, meaning that the PSF might need adjustments, or is this something that just can't be done?

  • Hi Timothy,

    Thank you for sharing a detailed description of the problem. Can you share this package with me through the Tech Community Inbox? We need to look into this before we can answer definitively.