1

I've created an ActiveX control which will print a document to a special printer (assuming the user is using IE, of course). The control works perfectly fine when I manually register it using regasm /codebase C:\path-to-dll. Next step is to get it to automatically install by inserting the following into my web page:

<object name="MyPrinter" style="display: none;" id="MyPrinter" classid="CLSID:1F668100-532A-4077-BEDE-1610AF2CC6DF" codebase="@Url.Content("~/Cabinets/MyPrinter.cab")"></object>

Upon visiting the page, IE does prompt to install the control. Once installed, when I attempt to use the control I get the classic "Automation server cannot create the object".

I've created the CAB file using iexpress.exe. The .msi file was created by using an InstallShield project. I'm using Visual Studio 2013.

Any help is much appreciated.

Thanks.

Mark Meisel
  • 851
  • 2
  • 12
  • 24
  • 1
    you must create an MSI installer for your Active X. the MSI installer will be encapsulated within a cab file along with an inf file to specify the extraction method – Sam Aug 20 '14 at 16:02

1 Answers1

1

The short answer to your problem would be to check if:

  • dlls are signed using codesign certificate
  • msi installer is signed using codesign certificate
  • cab file containing msi installer is signed using codesign certificate
  • link to cab file is https://somewhere/within/you/website/my.cab
  • installation of the cab does not use msiexec directly but calls some exe within your cab

For more detailed howto please look at this answer.

Community
  • 1
  • 1
pepo
  • 8,644
  • 2
  • 27
  • 42