| Author |
Message |
   
caaclipper
New member Username: caaclipper
Post Number: 11 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Friday, July 24, 2009 - 09:46 am: |
|
Well, installing the redistributables is certainly an option. It just seems like the old 'driving in a nail w/ a sledgehammer' solution that Microsoft is more than willing to cram down your throat. Your research and effort on this is most appreciated. I think that for now, my preference is to manually create a folder w/ the pertinent redistributables and have Inno-Setup install them in the same folder as my COM object. This has been proven to work on two pristine PCs w/ XP and Vista OS' |
   
randem
Moderator Username: randem
Post Number: 1339 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Wednesday, July 22, 2009 - 11:23 pm: |
|
After researching this this is your best option http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en |
   
randem
Moderator Username: randem
Post Number: 1338 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Wednesday, July 22, 2009 - 11:14 pm: |
|
Something else for thought http://msdn.microsoft.com/en-us/library/ms235316.aspx |
   
randem
Moderator Username: randem
Post Number: 1337 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Wednesday, July 22, 2009 - 11:12 pm: |
|
I have looked at the manifest and they they basically say not much. Try running your project thru InnoScript to see what it has to say about the dlls that you should re-distribute. Let me know what you find. |
   
caaclipper
New member Username: caaclipper
Post Number: 10 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Monday, July 20, 2009 - 12:31 pm: |
|
|
   
caaclipper
New member Username: caaclipper
Post Number: 9 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Monday, July 20, 2009 - 12:30 pm: |
|
|
   
randem
Moderator Username: randem
Post Number: 1334 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Thursday, July 16, 2009 - 11:10 pm: |
|
Here is something http://www.codeproject.com/KB/COM/regsvr42.aspx?msg=3123415#xx3123415xx Run a trace on your application exe to see which modules it wants to use. Post the trace file. |
   
caaclipper
New member Username: caaclipper
Post Number: 8 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Tuesday, July 14, 2009 - 01:34 pm: |
|
The COM provider is the program code that requires the Redistributables |
   
randem
Moderator Username: randem
Post Number: 1331 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Tuesday, July 14, 2009 - 01:33 pm: |
|
Post your VC project file, let me take a look at it. |
   
caaclipper
New member Username: caaclipper
Post Number: 7 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Tuesday, July 14, 2009 - 01:23 pm: |
|
So the problem is: how can I be sure I am getting the proper version (which may not be the "latest" version)?? |
   
caaclipper
New member Username: caaclipper
Post Number: 6 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Tuesday, July 14, 2009 - 01:22 pm: |
|
Yes, but so many choices, which one does it need C:\WINDOWS\WinSxS>dir x86_Microsoft.VC80.CRT_* Volume in drive C has no label. Volume Serial Number is 3C8A-05E5 Directory of C:\WINDOWS\WinSxS 05/22/2009 12:28 PM <dir> x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8 .0.50727.1433_x-ww_5cf844d2 10/27/2007 01:06 AM <dir> x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8 .0.50727.163_x-ww_681e29fb 10/27/2007 12:47 AM <dir> x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8 .0.50727.42_x-ww_0de06acd 07/14/2008 01:11 PM <dir> x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8 .0.50727.762_x-ww_6b128700 0 File(s) 0 bytes 4 Dir(s) 8,962,428,928 bytes free C:\WINDOWS\WinSxS> |
   
randem
Moderator Username: randem
Post Number: 1330 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Tuesday, July 14, 2009 - 12:00 pm: |
|
Ok, those files are in your \Windows\WinSxS\ folder under a folder with a name much like \x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50608.0_x-ww_b80fa8ca |
   
caaclipper
New member Username: caaclipper
Post Number: 5 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Tuesday, July 14, 2009 - 11:35 am: |
|
Sample file attached |
   
randem
Moderator Username: randem
Post Number: 1329 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Tuesday, July 14, 2009 - 10:56 am: |
|
No it does not help. What I need to see is the Manifest file itself. Does it look like this: <?xml> <assembly> <trustinfo> <security> <requestedprivileges> <requestedexecutionlevel> </requestedprivileges> </security> </trustinfo> <dependency> <dependentassembly> <assemblyIdentity type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' /> </dependentassembly> </dependency> <dependency> <dependentassembly> <assemblyIdentity type='win32' name='Microsoft.VC90.MFC' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' /> </dependentassembly> </dependency> <dependency> <dependentassembly> <assemblyIdentity type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language="'*'" /> </dependentassembly> </dependency> </assembly> Please post your manifest file. |
   
caaclipper
New member Username: caaclipper
Post Number: 4 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Tuesday, July 14, 2009 - 09:17 am: |
|
The manifest file is a by-product of the link step performed by Visual Studio. It's an XML file. This info may help http://msdn.microsoft.com/en-us/library/ms235542(VS.80).aspx |
   
randem
Moderator Username: randem
Post Number: 1327 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Monday, July 13, 2009 - 04:10 pm: |
|
Alright, Who creates this manifest file and what is the name of this file or any manifest file that is created for this process. I would like to look into this further. If you could supply some info on this I would appreciate it. (Message edited by randem on July 13, 2009) |
   
caaclipper
New member Username: caaclipper
Post Number: 3 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Monday, July 13, 2009 - 08:48 am: |
|
I am going to research this last idea. The manifest file is NOT installed on the target computer. What I would really like would be for InnoSetup to process the manifest file and auto-magically grab the right redistributables from the source computer's Windows\WinSxS folder. I think that is what InstallShield does, but I have not confirmed this. |
   
randem
Moderator Username: randem
Post Number: 1320 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Friday, July 10, 2009 - 11:05 am: |
|
From what I read about the manifest if you want your application to ignore the Winsxs folder entirely you just need to modify the manifest that you include in your deployment (remove publicKeyToken='1fc8b3b9a1e18e3b'), install those dll's in the application folder and add the dll names to the manifest. |
   
randem
Moderator Username: randem
Post Number: 1319 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Friday, July 10, 2009 - 10:53 am: |
|
There are so many MCVCPxx.dll files on my computer it would be a nightmare attempting to wade thru which one to use. However when you are developing the app you should know which one you are using. Try this Run your app thru InnoScript to see which ones it picks up. Perhaps it will give you a clue on which ones to redist. |
   
caaclipper
New member Username: caaclipper
Post Number: 2 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Friday, July 10, 2009 - 10:40 am: |
|
This article seems to suggest that the version of the redistributable is contingent on the version that was used when my user program was compiled http://www.itwriting.com/blog/?postid=261 This quote from the article is particularly alarming: However, it still wasn't clear to me why I was getting the error, especially since the compiler had generated a manifest for me. I ran vcredist_x86.exe to no avail. |
   
randem
Moderator Username: randem
Post Number: 1318 Registered: 04-2004
Rating: N/A Votes: 0 (Vote!) | | Posted on Friday, July 10, 2009 - 10:13 am: |
|
To use the proper redistributable files you should use the download from the MS site. That is the only real way to insure that you get the proper files you need. Other installers may take the files out of the redist exe and put them in their installer but that is not proper and may lead to problems down the road due to the redist files being updated. If they are you can always just swap out the old file for the new one. However with the installer you are stuck with the old ones. Just include the exe in the [Run] section and be done with it. |
   
caaclipper
New member Username: caaclipper
Post Number: 1 Registered: 07-2009
Rating: N/A Votes: 0 (Vote!) | | Posted on Friday, July 10, 2009 - 09:40 am: |
|
I want my Inno Setup script to install the C++ DLLs that are needed for my project. These include the MSVCRxx.dll, MSVCPxx.dll, and gdiplus.dll. The files are in C:\Windows\WinSxS but there is a "ringer". There are several candidates for two former pieces (MSVC* files) - seems that when I updated my version of Windows new directories and new copies of these files were auto-magically created too. For example, I have this as the source for one of the DLLs: c:\windows\winsxs\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.1433_x-w w_5cf844d2\MSVCP80.DLL not to be confused with c:\windows\winsxs\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_ 0de06acdww\MSVCP80.DLL (or about 2 other "flavors" with different directory names). I read something (the info was convoluted) about how the manifest file (output by the Visual Studio Linker) contains info for the redistributables (see http://blog.kalmbachnet.de/?postid=80). I looked at my manifest file. In my case, I see this line: <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' /> Obviously, some of the info is present, but there is clearly a 'disconnect' somewhere. Simple question: How can I create my Inno Setup script to include the proper redistributables. And no, I do not want to be forced to download and run the .EXE from this website: http://www.microsoft.com/downloads/details.aspx?FamilyId=32BC1BEE-A3F9-4C13- 9C99-220B62A191EE&displaylang=en We both know that is a Mickey Mouse solution. So, please, clue me in? I used to use InstallShield and it does this for me "auto-magically". I've got to believe that there is something engineered in InnoSetup. So please, lead me down the right path. I really appreciate the help and direction Thanks CAA |