PDA

View Full Version : Riched32, Vista & XP and InstExpress 12



Carl Cook
06-27-2007, 10:40 AM
After the Vista dev machine that masters setups got a Windows update, my setups when run on XP now generate a warning message about not overwriting Riched control. I have that in the manifest in the System folder section.

I thought there might be a redistributable for that, like in prior versions of Instalshield. Can't find one. I did the update wizard thing for redistribs and only found a bunch of .Net 1.x

Suggestions please on how to rid the error.

Thanks,

Carl

Carl Cook
07-18-2007, 03:53 PM
It has been 3 weeks without a reply.

Once again, reworded a bit differently, when creating setups on Vista and distributing to XP, Installshield issues error boxes during the customers' setup process about various OCXs or DLLs not installing and telling them to update their operating system for the application to work properly.

This is unnecessary. I want to eliminate the error message.

This problem persists. Is there a resolution / work-around?

Is there a Macrovision person monitoring this forum?

bryanwolf
07-26-2007, 08:25 AM
Are you including those files in your installation?

Could you try looking through the Files view and search for those files that may exist? If you removed them, it would probably resolve the odd error messages.

Otherwise, do you have a screenshot or log file?

Carl Cook
07-29-2007, 01:48 AM
Are you including those files in your installation?
Yes sir.


Otherwise, do you have a screenshot or log file?
I recreated the error and attached it. If the user clicks OK to the error, all goes well, but it of course "scares" users to get any error. I also attached an image showing the file is in the setup.

I suspect that a distribution pkg should be used for the riched32.dll, but I can't find one in Installshield (or am I blind?).

I find it odd that it was fine (the errors did not occur on XP systems) until I did an update on the Vista box hosting Installshield (kicks self, because doing so is known to be risky). Note the date on the riched32.dll is likely newer than any XP box's, thus I think MSFT made a new one for Vista, distributed it in a Vista update and now InstallShield/Windows Installer is trying to install it on XP and issuing the error. Rolling the Vista system back now may be impossible.

Advise sought and greatly appreciated.

Thx,

Carl

bryanwolf
08-07-2007, 03:22 PM
About the best conclusion I could make is that you don't want to install System files using your MSI package. Typically, this is not reccomended.

You may try seeing if there's a merge module to install this instead of using the actual file itself.

Carl Cook
08-12-2007, 12:28 PM
About the best conclusion I could make is that you don't want to install System files using your MSI package. Typically, this is not reccomended.

You may try seeing if there's a merge module to install this instead of using the actual file itself.


Ah, um... YA! That's what I said. IS THERE ONE?

Durrrr....

I've about had it with this product. Once King of installers, it is now **** and the pompus folks won't support their own defects without much-to-much money. They don't even troll here helping out. Take your money, treat express folks as peasants and abandon you.

Nice.

I think Installshield is over. What they call, "Jumped the Shark".

Off to buy another installer.

Thanks,

Carl

bryanwolf
08-13-2007, 08:41 AM
By default, Express installs a substantial number of merge modules (to C:\Program Files\Common Files\Merge Modules). From there, you should see something that installs the one you want. Just a cusory look produced a merge module called "gdiplus.msm" on my machine. That's probably the one you're wanting.

If you're missing those merge modules, probably running a repair of the product will resolve that issue. If you've recently uninstalled Visual Studio, that could possibly be the reason why.

At the time, I didn't have the time to look through the lists of merge modules for that one.

Also, there's a lot of MSMs listed here:
http://www.installsite.org/pages/en/msi/msm.htm

Some may be quite dated, but they at least point you in the right direction. While I wouldn't necessarily suggest just downloading one of those, searching for the name of the MSM on the vendor site should give you a more recent result in many cases.

Carl Cook
08-14-2007, 05:28 PM
By default, Express installs a substantial number of merge modules (to C:\Program Files\Common Files\Merge Modules). From there, you should see something that installs the one you want. Just a cusory look produced a merge module called "gdiplus.msm" on my machine. That's probably the one you're wanting.
GDI+ has RichEd32.DLL in it? I wouldn't think so.


Also, there's a lot of MSMs listed here:
http://www.installsite.org/pages/en/msi/msm.htm
I see a "user msm" with RichEd, but I hesitate on a user provided msm. This s/w is going into fairly strict environments.



searching for the name of the MSM on the vendor site should give you a more recent result in many cases.
So, even though RichEd is a very common VB6 control, Installshield doesn't have a redistributable for it and I should search MSFT's site? I just did:

------------------
Search Results
Sorry, we couldn't find any pages containing riched32 msm.
------------------

A Google search of riched32 msm puts this posting 5th of only 76. I'm clearly missing an important concept somewhere.

Thanks. At least you reply.

xardoz
08-14-2007, 06:38 PM
Here is an interesting thread on the subject...
http://groups.google.com/group/microsoft.public.vb.setupwiz/browse_thread/thread/c8a1d260c0363ff5

Carl Cook
08-14-2007, 09:34 PM
Xardoz,

Thanks. Basically the MSFT guy implies there is no msm for RichEd32.dll and RichTx32.ocx.

I also note that the date and the version of the RichEd32.dll's on my XP and Vista boxes differ:

XP: 8/4/2004 ver 5.1.2600
Vista: 11/2/2006 ver 6.0.6000.16386

... while the RichTx32.ocx's are the same (ver 6.1.97.82)

I also noticed that early on, I didn't have any problems with this control when creating setups on the Vista box. Then after a Vista Update or perhaps applying some other patch, I did.

I have some other machines to check, including a Windows 2000 master development machine at work.

I suspect that the RichEd32.DLL should be ver 5.1.2600, even though it's a "5" and the ocx is a "6". I need to do a dependency walker to confirm these two are in fact a matched pair. I don't see a reference to this DLL in this OCX, but there is a GDI dependency, like Bryan suggested.

Confusing.

Thanks,

Carl

bryanwolf
08-15-2007, 01:15 PM
Sorry - i got this and another issue confused :-\

Typically, InstallShield avoids redistributing System Files such as this under any circumstance. In many cases, there are licensing requirements or limitations that prevent us from freely redistributing them. Unfortunately, this results in us not redistributing every file that we could, technically, redist.

Can you just not include this file? Or perhaps include the VB6 runtimes? I'm sorry, I'm not intimately familiar with VB6's ins and outs and redists. I just know there's a lot of them.

Regardless, the asisstance I provide here is a convenience and I'm just trying to help out. This is a community forum and not official support.

For official InstallShield support, please contact us at 847-413-2896 or e-mail at support@macrovision.com and we will assist as best as possible.

Carl Cook
08-16-2007, 01:03 PM
Sorry - i got this and another issue confused :-\
Can you just not include this file?

Um, yes, you are busy, as you asked this question already and I already replied that I am distributing the files. I might add that I just tested the setup on a "fresh out of the box" HP Vista machine, and the Richtx32.ocx controls flatly won't work, even though the files are installed and registered by the setup.

We also just had an incident (case) this week with a customer where the InstallShield 12 / Vista mastered setup would not allow them to load a different OCX on XP after all sorts of gyrations. But when we gave him the Installshield 2.11 setup from Windows 2000... varrroom he was off and running.

There is clearly a problem with Installshield 12 on Vista. We now have to move backwards to 2.11 on Windows 2000 or abandon InstallShield altogether. We hold out hope it will for .Net apps authored on Vista. We and our customers have suffered ... InstallShield 12 problems is way out in front as our #1 customer support issue (like 90% of the cases) for about 3 months running.


For official InstallShield support, please contact us at 847-413-2896 or e-mail at support@macrovision.com and we will assist as best as possible.
They want $250 to ask a question. Nice way to help the customer with what we feel, to us, is a defective product.
http://www.macrovision.com/support/per-incident.htm

Carl Cook
08-16-2007, 06:03 PM
At least I have clue on the RichEd/RichTx issue... put your beanie on tight as you try to read this:


The Rich TextBox Control 6.0 that is included with Microsoft Visual Basic 6.0 is mistakenly marked "safe for initialization." This setting implies that the Rich TextBox Control 6.0 can load persisted data from a malicious source and not endanger the user. However, the Rich TextBox Control 6.0 is merely a wrapper for the system RichEdit control (RIched20.dll). The Rich TextBox Control 6.0 does not make sure that the data that is passed to the RichEdit control is safe. Additionally, the Rich TextBox Control 6.0 does not make sure that the version of the RichEdit control that the Rich TextBox Control 6.0 uses can handle untrusted data. The Rich TextBox Control 6.0 is not supposed to be marked safe for untrusted initialization. Therefore, as a precaution, Internet Explorer 6.0 has set the "always unsafe" flag for the Rich TextBox Control 6.0. The "always unsafe" flag prevents the use of the Rich TextBox Control 6.0 in Internet Explorer 6.0, in Office XP, and in Office 2003.
http://support.microsoft.com/default.aspx?scid=kb;en-us;838010

I suspect MSFT's blocking of this control has carried on into Vista, with its excessive security, and Vista, depending on the patch history of the box, is actually blocking it. This Vista box (Windows NT 6.0.6000.0) with VB6 installed will run it. A new Vista box (opsys ver. same but more recent patches) has the error about a dependency not loading. Of course, Windows doesn't tell you WHICH library is missing/not loading (Grrr...) but I bet it is RIched20.dll because it is blocked (even tho it is on disk). Something like that.

There is something goofy going on when taking a Vista authored setup which contains the Vista versions of the above files and tries to apply them to XP: Boom, "Upgrade your XP" error.

Theories.

You cannot use that control on some Vista boxes... at all.

Carl Cook
09-09-2007, 04:12 PM
I have a fix to this problem, I think.

1. MSFT recompiled the Vista riched32.dll on Sept 1st, 2007 and sent it out in a Windows Update. The versions now are (were)

XP: 8/4/2004 ver 5.1.2600
Vista: 11/2/2006 ver 6.0.6000.16386 (was)
Vista: Sept 1 2007 ver 6.0.6000.16517 (is now)


2. If, on Vista, I create a BAT file that silently unregisters and reregisters all VB6 controls, the ones I thought Installshield is supposed to be registering, the RICHTX32.OCX control works.

So, now I have an Installshield setup and a Bat file for customers. :eek:
At least they can run.