View previous topic :: View next topic |
Author |
Message |
PaulS
Joined: 03 Jul 2013 Posts: 24
|
Posted: Thu Oct 04, 2018 9:21 pm Post subject: CheckProcessIntegrity throwing file not found exception |
|
|
What could cause this? The app runs okay on my windows 7 development machine, but fails on windows 10 in a virtual machine.
Application: myapp.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.IO.FileNotFoundException
at myapp.Bootstrap.Program.CheckProcessIntegrity()
at myapp.Bootstrap.Program.Main(System.String[]) |
|
Back to top |
|
|
Infralution
Joined: 28 Feb 2005 Posts: 5027
|
Posted: Sun Oct 07, 2018 6:07 am Post subject: |
|
|
Are you distributing the AssemblyLoader4x86 and/or AssemblyLoader4x64 dlls with your application and C++ runtime dlls (mscvp120.dll and msvcr120.dll)?
If you are compiling you application as an x86 application then the AssemblyLoader4x86.dll and C++ runtime dlls need to be installed in the same folder as your executable.
If you are building an AnyCPU application then you have to distribute both the AssemblyLoader4x86 and AssemblyLoader4x64 dlls in separate x64/x86 subdirectories along with the C++ runtime files for x86 and x64 (as shown in the sample projects). _________________ Infralution Support |
|
Back to top |
|
|
PaulS
Joined: 03 Jul 2013 Posts: 24
|
Posted: Mon Oct 08, 2018 6:32 pm Post subject: |
|
|
I think I found the problem. I am using AssemblyLoader4x86.dll, version 11/18/2013. I used CFF Explorer, and the import directory shows dependencies on msvcp100.dll and msvcr100.dll. So I copied these into my executable directory and the program loaded okay, error gone.
This was a hidden dependency I did not know about until I started to test sql server localdb 2017 with my app. My app requires localdb, and I have been using localdb 2012. It appears the installer for localdb 2012 installs these 2 dlls, and localdb 2017 does not. So quick fix is to include these dlls with my installer.
However, perhaps I should move to a newer version of the Encryptor software? Is Infralution the author of AssemblyLoader4? Maybe you could include a version number with the dll. |
|
Back to top |
|
|
Infralution
Joined: 28 Feb 2005 Posts: 5027
|
Posted: Wed Oct 10, 2018 11:04 am Post subject: |
|
|
Yes the AssemblyLoader4x86 dll is part of .NET Encryptor. If you have a license for .NET Encryptor you can download and use the latest version from http://infralution.com/downloads.html. The current version uses a later version of the C++ runtime DLLs (mscvp120.dll and msvcr120.dll) _________________ Infralution Support |
|
Back to top |
|
|
|