Home > other >  VS2012 win32 project packaging issues
VS2012 win32 project packaging issues

Time:09-25

I recently conducted cocos2dx win32 project development,
I want to pack to compile it generated an exe file, you can run on any computer,
Based on the Internet, I need to set up the project properties in the column "code generation" of the MD to MT,
To MT, after tests on some clean system will still be at msvcr110. DLL, msvcp120. DLL missing error,
Information from the Internet, MT and wrap up all the required DLL into exe, why still quote error, the disappearance of the DLL
Development environment: Windows 8.1 64 vs2012 cocos2dx 3.2 rc
Test environment: 32-bit Windows xp, Windows 7 64 - bit, Windows 8 pro
How you compile packaging win32 project, and can be run directly on any support system, without the DLL is missing,

CodePudding user response:

Pack less, but not before I pack to test dependencies? After detected all packaged in should be no problem

CodePudding user response:

reference 1st floor modyaj response:
pack less, but not before I pack to test dependencies? After detected all packaged in should be no problem

Could you tell me how to detect the dependencies, detect is packaged in the library after the dependencies, this is how to do?
I tried two ways, one is direct release folder to compile generated test, another is to use InstallSheld packaging tools to release folder organization packing to get the installation package, they are both have a problem, or the DLL is missing,

CodePudding user response:

Use DEPENDS. EXE checker dependencies, and see what the DLL procedures depend on the
Also can use DEPENDS on to the test environment. EXE open EXE program and see which project is under the yellow question mark, environment, lack of corresponding DLL,

CodePudding user response:

Use depends. Exe on the target machine to check the exe dependent DLL which deficiency (red words)
Then from the development machine copy the DLL to the target machine and exe under the same folder,

CodePudding user response:

In a 64 - bit Windows:
64 exe and DLL in the directory c: \ Windows \ sys tem32 directory.
32 bit exe and DLL in the directory c: \ Windows \ sys wow64 directory.
So pay attention to:
In win64 system registered under 32-bit ocx DLL to 32 ocx or copy the DLL to the c: \ Windows \ syswow64 \ directory,
And registered to c: \ Windows \ syswow64 \ regsvr32 XXXXXXX ocx or DLL

CodePudding user response:

refer to the second floor borisyue2 response:
Quote: refer to 1st floor modyaj response:

Pack less, but not before I pack to test dependencies? After detected all packaged in should be no problem

Could you tell me how to detect the dependencies, detect is packaged in the library after the dependencies, this is how to do?
I tried two ways, one is direct release folder to compile generated test, another is to use InstallSheld packaging tools to release folder organization packing to get the installation package, the two have problem, still the DLL is missing
,

Well, right attribute system is necessary but it can only be detected system can't detect the DLL you use,,,
About this situation I would like to remind you once! Don't know will have this kind of circumstance!!!!!! If your program generated directly in exe folder, and your DLL in the bin folder, if you packaging, packaging exe folder or directly put the DLL in exe folder packaged together estimates that there is a problem! Because you won't go to your program inside the invocation path in the DLL exe file, but to find the bin folder DLL mistakes,,,?

CodePudding user response:

Reply to you, use the depends. Exe view, is the lack of msvcr110. DLL, from the development machine to find the file is copied to the exe with the same directory, then double-click the exe, no reaction, nor any fault,
Try to regsvr32 msvcr110 DLL prompt said loaded msvcr110. DLL, but the dllregisterserver entry point was not found, unable to register this file,
Estimation is the DLL has not been registered, lead to can't run,
Why?

CodePudding user response:

Visual c + + Redistributable for Visual Studio 2012

The Visual c + + Redistributable Packages install The runtime components that are required to run The c + + applications built with Visual Studio 2012.

CodePudding user response:

refer to the eighth floor Idle_ response:
Visual c + + Redistributable for Visual Studio 2012

The Visual c + + Redistributable Packages install The runtime components that are required to run The c + + applications built with Visual Studio 2012.


CodePudding user response:

refer to the eighth floor Idle_ response:
Visual c + + Redistributable for Visual Studio 2012

The Visual c + + Redistributable Packages install The runtime components that are required to run The c + + applications built with Visual Studio 2012.


I don't want to install it, in the new model can be run directly on the sort of,

CodePudding user response:

Set the target type to try xp,

CodePudding user response:

Is also possible cocos2dx call msvcr110. DLL these files, so you use/MT link also useless, your own EXE don't need these DLL, but the call to you need these DLL module

CodePudding user response:

refer to 7th floor borisyue2 response:
reply you, with the depends. Exe view, is the lack of msvcr110. DLL, from the development machine to find the file is copied to the exe with the same directory, then double-click the exe, no reaction, nor any fault,
Try to regsvr32 msvcr110 DLL prompt said loaded msvcr110. DLL, but the dllregisterserver entry point was not found, unable to register this file,
Estimation is the DLL has not been registered, lead to can't run,
Why?

Msvcr110. DLL is not COM components, there is no need to register, as long as in the program to find the directory

CodePudding user response:

references to the tenth floor borisyue2 response:
Quote: refer to the eighth floor Idle_ response:

Visual c + + Redistributable for Visual Studio 2012

The Visual c + + Redistributable Packages install The runtime components that are required to run The c + + applications built with Visual Studio 2012.


I don't want to install it, in the new model can be run directly on the sort of,


This can't, must be installed and put the DLL directly to the exe directory was useless, anyway just perform a redistxxxx. Exe, you can put the runtime package in your installation package, then execute it released when installation, without human intervention,

CodePudding user response:

The building Lord final packaging succeeded?

CodePudding user response:

Also met this problem, use VS2012 compiled DLL, use on the clean win2012, lack of msvcr110. DLL, because it is a DLL, there is no direct error, to look for half a day to find out the reason, then from win8.1 on 64 - bit OS copy to the appropriate directory, solve, but I also want to build to compile directly in ah,nullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnull
  • Related