The procedure entry point CreateAppContainerProfile could not be located in the dynamic link library USERENV.dll

4.2k views Asked by At

Clion doesn't open and it gives me "The procedure entry point CreateAppContainerProfile could not be located in the dynamic link library USERENV.dll" I have tried many things and nothing worked i use windows 7

I have tried some commands in command prompt like sfc /scannow but it didn't detect any corrupt files i have also tried DISM and it did not benefit me

3

There are 3 answers

2
welyss On

same issue, and i found out Minimum supported client(windows) of CreateAppContainerProfile function is Windows 8 desktop apps only, and my case is win7 + IntelliJ 2023, same as you, guess IntelliJ 2023 call the function, maybe we have to upgrade os

1
user213769 On

This is a problem with all IntelliJ IDEA-based IDEs; like @welyss states, it's because the app starter .exe calls CreateAppContainerProfile is available only with Windows 8+, and IntelliJ officially bumped minimum requirements to Windows 10 in the meantime.

However, the IDEs are actually runnable, since they are just Java apps, and the .exe just calls a .bat that runs the JARs in JVM, so as long as you can run the matching JVM, you'll be good.

The way to handle this in practice is to run e.g. rider.bat from the install bin subdirectory (or any similar .bat file you have there in your particular IDE) instead of the e.g. rider64.exe that the main installer link provides. It worked for me perfectly (tested on Rider 2023.3.3 e.g.). No real need to upgrade anything yet (YMMV).


If you want to have a plug-and-play fix that requires no changes in the app paths etc. (e.g. for integration with other tools that require you to supply a correct IDE starter .exe path), you can ever use a simple .bat wrapper executable, like the one generated by the code below:

#include <stdlib.h>
#include <string.h>

int main( int argc, char* argv[] ) {
  return system( strcat( argv[0], ".bat" ) );
}

, then just name the compiled exec e.g. rider64.exe and put it where the original app resides, copy the rider.bat to rider64.exe.bat there, and you're good to go; this works as a simple-but-effective workaround for virtually all cases when you need an .exe and you have a .bat (using the bat2exe etc. tools from 'net is usually a bad idea IMVHO, they are prone to different caveats).

0
KotlinIsland On

Launch studio.bat in the C:\Program Files\Android\Android Studio\bin