Re: Followup: Native win32 apps still require .NET runtime?

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance




"Dave" <Dave@xxxxxxxxxxx> wrote in message
news:teb8p1hjhhlqhs0hhbrpaspepf4jrtjp77@xxxxxxxxxx
> On 5 Dec 2005 02:18:23 -0800, adebaene@xxxxxxxxxxxxxxxx wrote:
>
>>
>>Dave wrote:
>>> The error message is: "This application has failed to start because
>>> the application configuration is incorrect. Reinstalling the
>>> application may fix this problem."
>>>
>>> I've been able to reproduce this on a couple machines now, and I've
>>> confirmed that others have seen the same error message (below) in
>>> similar cases. Still no real clues to the cause.
>>>
>>> No MFC. As mentioned, I've seen this with a plain console 'hello'
>>> program. MSVCR80 dlls are in Windows\System32.
>>>
>>> This does not occur on systems where VS2005 is installed.
>>> I don't remember seeing this with VS2003.
>>>
>>> If the error message is to be taken literally, then there's something
>>> that needs to be configured aside from simple copying of DLLs. ????
>>> I didn't think that was the case with straight unmanaged apps.
>>
>>First use dependency walker on the target machine to check wether any
>>DLL you may not be aware of is missing.
>
> That's one of the first things that I tried, Arnaud. Especially in
> the case of the "Hello World" release build, that was not complex--it
> just uses MSVCR80.dll (and of course Kernel32 and NTDLL).
>
> In other words, printf("Hello"); compiled w VS2005 will not run on a
> machine unless VS2005 has been installed.
>
> Again, the error message is: "This application has failed to start
> because the application configuration is incorrect. Reinstalling the
> application may fix this problem."
>
> Compiling the same code under VS2003 exhibits no problems when running
> on a plain-vanilla test machine with no compilers installed..
>
> Any other ideas?
>

You'll have to add the .manifest file to your distributon or you need to
embed the manifest to the .exe file (this is normaly done when you build
from within the IDE).
Note that on XP and higher, MSVCR80.dll (and other C++ runtime dll's) should
be installed in the SxS folder (Side by Side assembly folder).
Please search MSDN for "manifest" and "side by side assemby" for more
details on shared runtime assemblies.

Willy.


.



Relevant Pages