"Could Not Register Type Library" Error with WinINSTALL MSI Package

Hi folks!

I'm trying to use WinINSTALL LE to create an MSI package for WordPerfect Office 12 to use in deploying that application to our Windows XP workstations via group policy in Active Directory.

I successfully installed WinINSTALL on a clean machine, ran a discovery, installed WP Office, and ran a new discovery. It said it successfully created the package. However, when I go to another machine and attempt to use the resultant package to install, I receive several errors that say "Could not register type library for file" and then list a file name. The files it references are:

C:\Program Files\WordPerfect Office 12\Programs\CdrPDFUI112.dll
C:\Program Files\WordPerfect Office 12\Programs\CRLFRMWK112.dll
C:\Program Files\WordPerfect Office 12\Programs\cdrpdf112.dll

The only way I can proceed is to tell the installer to ignore the error, but if I do so, when it completes, the Start Menu shortcuts to the programs are not valid. I could create a shortcut directly to the executable file for WordPerfect, which seems to have been properly created, but I'm afriad that with those errors there will be problems.

Any suggestions on what is causing this problem would be most appreciated.

Who is Participating?
r3nderConnect With a Mentor Commented:
how are you calling the exe? If you are not create an exe in C# then an install set in the same program below is how to call the exe from an exe
Then when you build it it will be an MSI

Put this in the page load section of the code
Change this to use your path info and exe info
public frmMain()
            string DriveLetter = Path.GetPathRoot(Environment.GetFolderPath(Environment.SpecialFolder.System));
            string curFile = DriveLetter + "Program Files/Liveperson/hc.exe";
            MessageBox.Show((File.Exists(curFile) ? "Installed Already." : "File does not exist..Installing."));
            btnLP.Enabled = false;

            if (!File.Exists(curFile))
                var proc = new Process();
                proc.StartInfo.FileName = "lpsetup_8.4_1032.exe";
                proc.EnableRaisingEvents = true;
                //proc.Exited += new EventHandler(proc_Exited);

Open in new window

This is a basic way to register a .dll with the help of batch file. Type this in a text file and save it as updatebatchfiles.bat

Regsvr32.exe C:\Program Files\WordPerfect Office 12\Programs\CdrPDFUI112.dll
Regsvr32.exe C:\Program Files\WordPerfect Office 12\Programs\CRLFRMWK112.dll
Regsvr32.exe C:\Program Files\WordPerfect Office 12\Programs\cdrpdf112.dll


IthizarAuthor Commented:
Thanks. How do I get rid of the errors during the install, though? When I build the MSI package, it is supposed to be completely unattended, which is what I need since I intend to deploy via group policy, but when it hits those errors, it's stopping and asking for a user response.
IthizarAuthor Commented:
This is not a program I am writing. This is a commercial piece of software that I am trying to wrap up in an MSI package for easy deployment through Active Directory.
r3nderConnect With a Mentor Commented:
and to create an .msi you need to create an app to push out using AD - change the exe to the one you want to push - put it in load page and compile it - push this to the floor after you build the release (change debug to release) and in the bin folder you will find the msi
All Courses

From novice to tech pro — start learning today.