Register DLL and OCX (VISTA)

Got a problem you cannot solve? Try here.
Post Reply
FSI
Posts: 7
Joined: Tue Oct 23, 2007 8:06 am

Register DLL and OCX (VISTA)

Post by FSI »

I try to register some DLL & OCX Files.

Code in IA 7 R2:

Code: Select all

 

...
       Install Files S:\\02. Components\\V8\\DLL\\USE\\dao350.dll to $WINSYSDIR$
       Register Library $WINSYSDIR$dao350.dll
       Install Files S:\\02. Components\\V8\\DLL\\USE\\dtccm.dll to $WINSYSDIR$
       Register Library $WINSYSDIR$dtccm.dll
       Install Files S:\\02. Components\\V8\\DLL\\USE\\dtctrace.dll to $WINSYSDIR$
       Register Library $WINSYSDIR$dtctrace.dll
       Install Files S:\\02. Components\\V8\\DLL\\USE\\dtcutil.dll to $WINSYSDIR$
       Register Library $WINSYSDIR$dtcutil.dll
...
i can't use my program after the installation. When i register this dll with (example:) regsvr32 C:\\Windows\\system32\\dao350.dll runs my software correctly ...

(Sorry about my english...)

Thanks for help
SteveDude
Posts: 253
Joined: Wed Apr 11, 2007 6:07 pm

...

Post by SteveDude »

Looks like you are missing a backslash.

I just import the entries from the DLL's. Much more reliable on Vista. Just verify that all of the Path info is correct.
joltman
Posts: 36
Joined: Mon Sep 17, 2007 9:45 am

Post by joltman »

We had the same problem, it installs our dlls correctly on xp but not on vista. In our case it was a .net dll that we wanted to add to the GAC and register for COM interops.

We had to do this manually in an .exe
if your using .net you can use the following code to do this:

Code: Select all

try {
                string assembly = systemPath+"\\\\crypto.dll";

                new System.EnterpriseServices.Internal.Publish().GacInstall(assembly);
                RegistrationServices regAsm = new RegistrationServices();
                Assembly asm = Assembly.LoadFile(assembly);
                regAsm.RegisterAssembly(asm, AssemblyRegistrationFlags.None);
            }
            catch (Exception ex)
            {
                System.Console.Out.WriteLine(ex);
            }
Post Reply