Solved

Sheridan control will not register (SSCALA32)

Posted on 1998-09-25
8
2,637 Views
Last Modified: 2013-12-25
We are creating an InstallShield Express installation for a VB5 project which includes several ActiveX controls including Microsoft FlexGrid, Tabbed Dialog, Sheridan Month/Day/Year Combo (v 1.0), and Sheridan DataGrid (v 3.0).

All except the Sheridan Month/Day/Year (SSCALA32.OCX) will register. This one OCX will not register itself during installation, nor will regsvr32 work. We do have it registered on our development machines, but we have so much other software on them that they are not good test platforms for installations. For installation testing, we use freshly installed machines, which have NT4.0 SP3, Office 97 SR2, Lotus Notes 4.5.2, Visio Standard 5.0b, IE4 SP1. This is a standard configuration for the office, and this application will be the only other thing the target machines will receive.

Other things to note:
- Registration fails with error 7E.
- We have checked the required versions of dependent system DLLs in the Sheridan list, and all the DLLs on our base systems are at or above this level.
- MSVCRT40.DLL is version 4.20, which is new to me, but is not listed in the Sheridan dependencies.
- The exact version of SSCALA32.OCX is 1.0.007

This has been a real brain twister.
0
Comment
Question by:tomook
8 Comments
 
LVL 4

Expert Comment

by:mcix
ID: 1487163
Did you try regocx32?
0
 
LVL 4

Author Comment

by:tomook
ID: 1487164
I tried calling DLLRegisterServer directly, but I have never seen anything called regocx32. What is it?

By the way, I got this to work, but I will still award points if anyone can explain why. Please do not answer unless you REALLY know. I made this component the very last thing which gets registered, rather than somewhere in the middle. This product has no dependence on other ActiveX components (at least not documented), and registering the ActiveX components does not happen until the very last thing.
0
 
LVL 1

Expert Comment

by:kacklehorn
ID: 1487165
The setup wizard is a complicated utility to explain. It DOES matter what order the files get installed in, which is why Microsoft will not support any other third party setup wizards. The reason being that the OCX, and DLL order must be precise. If one ocx requires that a certain dll be registered to create the entry point in the registry for it, and it hasn't been installed yet..you'll error out. You can check all of the dependencies for your dlls and ocxs with a keen little utility called depends.exe. You can get it from ftp.microsoft.com/transfer/outgoing/developr.

L8tor
KaCkLeHoRn
0
Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

 
LVL 4

Expert Comment

by:mcix
ID: 1487166
On the VB CD, there is a directory called TOOLS\PSS.

You will find regocx32.exe there.  

It does not seem like that is your problem though.
0
 
LVL 4

Author Comment

by:tomook
ID: 1487167
>> The reason being that the OCX, and DLL order must be precise. If one ocx requires that a certain dll be registered to create the entry point in the registry for it, and it hasn't been installed yet..you'll error out.

It does not appear to be the case here.

>>You can check all of the dependencies for your dlls and ocxs with a keen little utility called depends.exe.
I have it an I used it. There are no dependencies. Why should the order matter if there are no dependencies?
0
 
LVL 13

Accepted Solution

by:
Mirkwood earned 200 total points
ID: 1487168
The reason is that you can only see static loaded dependecies. i.e. dll's that are loaded when the OCX is loaded. What you cannot see is the dynamically loaded DLL. E.g. when you create an object or control this is done using COM. That means that the DLL name is retrieved of the registry and loaded dynamically.
Search on the web for a utilty called Filemon or NTFilemon (www.ntinternals.com). This shows you the files that are accessed by the OCX. This way you can find which DLLs you need to install before installing the OCX.
0
 
LVL 4

Author Comment

by:tomook
ID: 1487169
Good tip, Mirkwood. I will look for these utilities and let you know what happens. On thing strikes me, though. All the regular DLLs are installed before any ActiveX components. At least, that is what is supposed to be happening! I should probably check that out as well.
0
 
LVL 4

Author Comment

by:tomook
ID: 1487170
Got it. Thanks for the assist. Too many pesky versions of the same DLL around.
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction I needed to skip over some file processing within a For...Next loop in some old production code and wished that VB (classic) had a statement that would drop down to the end of the current iteration, bypassing the statements that were c…
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

805 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question