C # application does not start on another computer

when I try to run a C # application on a different computer than what was developed, I get the following error message:

System.IO.FileLoadException: Failed to load file or assembly 'Widgets3D, Version = 1.0.3511.25568, Culture = neutral, PublicKeyToken = null' or one of its dependencies. This application could not be started because the application configuration is incorrect. Reinstalling the application may fix the problem. (Exception from HRESULT: 0x800736B1)

File name: 'Widgets3D, Version = 1.0.3511.25568, Culture = neutral, PublicKeyToken = null' ---> System.Runtime.InteropServices.COMException (0x800736B1): This application failed to start because the application configuration is incorrect, reinstalling the application may resolve a problem. (Exception from HRESULT: 0x800736B1)

I checked with the dependency chorus and the process monitor, but could not find the missing dlls. especially the one specified in the Widgets3D.dll error!

both computers are updated with the latest XP service pack and updates. The application works on many PCs here. there is only this problem that creates the problem.

EDIT: as I suggested, I tried regsvr32 of the missing dll, but this gives me this error:

LoadLibrary ( "./Widgets3D.dll" ) - , . .

!

+3
7
+1

, :

System.Runtime.InteropServices.COMException

.Net. COM-, .

+2

widgets3d? Regsvr32 .

:

Regsvr32.exe path-to-your-widgets3d.dll

.

, , , dll, 3d-, , . 3d- .

+2

, . . DLL.

. Start -> Run -> regsvr32 <path of Widgets3D.dll>\Widgets3D.dll -> Press Enter.

!

+1

Widgets3D.dll, , ++. "Visual ++ Redistributable" , . DLL Microsoft, , , .

+1

Aaah, DLL-, . . , , , . , COM.

, .

+1

Uninstalling is one way to solve this problem, but if you have a vulnerable ATL component, you will definitely need a security patch and make the necessary changes to the application to use the security fixes.

The way I dealt with this is to develop a workaround that allows you to install the patch, but when you create it, you still focus on older versions of the DLL. I described this solution here.

+1
source

Source: https://habr.com/ru/post/1715068/


All Articles