From: Alex Blekhman on 21 Aug 2008 17:03 "Vincent Fatica" wrote: > Yes, see my other recent post. I let VC8 convert a VC7 project. > That introduces the problem. But I can't find what the > conversion changed. I know that upgrade from the previous project type adds property sheet from %VCINSTALLDIR%\VCProjectDefaults directory. One of UpgradeFromVC*.vsprops is added to the converted project. However, all that these propery sheets do is add "_VC80_UPGRADE=0x0710" define. Somehow this define affects manifest mechanics, which, in its turn, affects resulting PE image. If you have moderate project size, then probably the easiest solution is to create new project from scratch and to add exiting files to it. Alex
From: Vincent Fatica on 21 Aug 2008 19:23 On Fri, 22 Aug 2008 00:03:46 +0300, "Alex Blekhman" <tkfx.REMOVE(a)yahoo.com> wrote: >I know that upgrade from the previous project type adds property >sheet from %VCINSTALLDIR%\VCProjectDefaults directory. One of >UpgradeFromVC*.vsprops is added to the converted project. However, >all that these propery sheets do is add "_VC80_UPGRADE=0x0710" >define. Somehow this define affects manifest mechanics, which, in >its turn, affects resulting PE image. > >If you have moderate project size, then probably the easiest >solution is to create new project from scratch and to add exiting >files to it. When I do that, it builds OK (no warnings or .CRT section) but it bombs when the host app loads it: R3604: An application has made an attempt to load the C runtime library incorrectly. -- - Vince
From: Alex Blekhman on 22 Aug 2008 02:35 "Vincent Fatica" wrote: > When I do that, it builds OK (no warnings or .CRT section) but > it bombs when the host app loads it: > > R3604: An application has made an attempt to load the C runtime > library incorrectly. This is the clear sign that CRT crept in somewhere in your DLL. Check your own and 3rd party code for "#pragma comment(lib, ...)" directives. Also, you can open the DLL with Dependency Walker to figure out what function is required from CRT. Alex
From: Vincent Fatica on 22 Aug 2008 09:40 On Fri, 22 Aug 2008 09:35:23 +0300, "Alex Blekhman" <tkfx.REMOVE(a)yahoo.com> wrote: >"Vincent Fatica" wrote: >> When I do that, it builds OK (no warnings or .CRT section) but >> it bombs when the host app loads it: >> >> R3604: An application has made an attempt to load the C runtime >> library incorrectly. > >This is the clear sign that CRT crept in somewhere in your DLL. >Check your own and 3rd party code for "#pragma comment(lib, ...)" >directives. Also, you can open the DLL with Dependency Walker to >figure out what function is required from CRT. My DLL (together with several others) is a "plugin", not linked to the host app, but loaded after startup. It doesn't show up in depends. Can I do anything about that? -- - Vince
From: Alex Blekhman on 22 Aug 2008 11:53 "Vincent Fatica" wrote: > My DLL (together with several others) is a "plugin", not linked > to the host app, but loaded after startup. It doesn't show up > in depends. Can I do anything about that? Silly question, but anyway. Do you have any manifests embedded in your DLL? Besides that I'm currently out of ideas. Alex
First
|
Prev
|
Next
|
Last
Pages: 1 2 3 4 5 Prev: Mixed code - Crashes in Release Mode Next: Printing from Console Application |