cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
janderscu
Level 3

converting VS installer custom action dll to Install Shield 2015 LE

I am working on converting an old Visual Studio setup project to Install Shield 2015 LE.  All good except for a custom action ... the old project used a c# .dll to register a service.  Since InstallShield LE will not accept a .dll for custom action, I need to convert it somehow.  I tried just compiling it the .dll project as an .exe but that didn't work.  Any suggestions?  The dll code is below.  Thanks for any help!

 

using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration.Install;


namespace OPC_license_actions
{
[RunInstaller(true)]
public partial class Installer1 : System.Configuration.Install.Installer
{
public Installer1()
{
InitializeComponent();

}
[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
public override void Install(IDictionary stateSaver)
{
base.Install(stateSaver);
}

[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
public override void Commit(IDictionary savedState)
{
base.Commit(savedState);
System.Diagnostics.Process.Start("opcenum.exe","/regserver");
}

[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
public override void Rollback(IDictionary savedState)
{
base.Rollback(savedState);
}

[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]
public override void Uninstall(IDictionary savedState)
{
base.Uninstall(savedState);
}

 

}
}

0 Kudos
(1) Reply
banna_k
Revenera
Revenera

Hi @janderscu ,

 

   InstallShield premier or professional editions can provide advanced options to execute the managed custom actions (.NET c#, etc), and InstallShield express can provide options to execute  DLL\MSI DLL custom actions. 

InstallShield LE only provides options to execute the  EXE or scripts as custom actions, looks like you only want to register your service ("opcenum.exe","/regserver") from the the below code.

May be you can configure the EXE custom action in the appropriate event and pass the "/regserver" parameter.

0 Kudos