Archived Forum Post

Index of archived forum posts

Question:

Can't register dll for redistribution, visual studio 2013 + Install Shield

Sep 30 '14 at 14:26

Hello,

I’ve written a vb ftp program in visual studio 2013, using ChilkatAx-9.5.0-x64.dll. I am trying to use Install Shield within Visual Studio to create an install file. However, I cannot get the dll to register (and I’ve been trying for days!) I’m hoping someone can help.

The program runs perfectly without the added Install Shield project, so I know the dll is working.

I’m running on Windows Server 2008, and I wish to prepare an install file for Windows Server 2008/2012 (all 64-bit).

At the moment, the dll is registered (using register.bat, run as administrator) in the c:windowssyswow64 directory, and that is the path shown in the references for the project. I also added a reference to Chilkatdotnet45.dll to the browse tab of the references, and it is checked.

Install Shield choices:
1.I’ve tried installing with and without Microsoft .NET 4.5

2.Under application files, I’ve chosen Primary Output and Chilkatdotnet45.dll

3.I’m using defaults for the installation interview at the moment

I'm also running Visual Studio as an administrator.

When I ask Visual Studio to run the install program, I get the message that the module ChilkatAx-9.5.0-x64.dll failed to register. Does anyone have any idea why this might be?

Many thanks,

Judith


Answer

Hi, Folks.

Well, writing everything out clearly for everyone to read seems to have helped somewhat.

Although I was running Visual Studio as an administrator (because I was signed in as an administrator), I tried logging out as admininstrator and back as a user, and then running the visual studio as an administrator (an option which isn't available when logged in as administrator). This actually seemed to help -- I was at least able to build the install file

The file still wouldn't register on the target machine. I ended up including your register.bat file (modified to register just the one dll file) as part of the install process, and just asking whoever installs the file to run that first. It's not the least bit elegant, but at least it works.