SLPS Developer Discussion Developer level questions on Code Protection, Licensing, customisation APIs etc
InishTech Support Forums > SLPS Developer Discussion > Installer Issue - ERROR 1001 Unable to get installer types in the assembly Login to add this as a favourite.
User avatar
Member
Member
amir9898 - 2/11/2011 3:47:35 PM
   
Installer Issue - ERROR 1001 Unable to get installer types in the assembly

Hi, Inish:

I am facing another obsticle in the process: i am building VS2010 setup and deploy project.

The input assembly is the protected one and it show all the dependencies properly, when i try to install the msi in a clean computer i get (just before the installtion end) the above error (1001), i followed KB7 to overcome the "licensing storage is not configured...." problem but now this problem occur.

Do you know what i am doing wrong?

 

Regards.

 


User avatar
Member
Member
amir9898 - 2/11/2011 3:50:46 PM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

Another thing, Waht exactlly do you mean by this "Add a reference your permutation to your app" you mean a dll of this flavour : "Microsoft.Licensing.Permutation_e2ef8_2.0.dll" ?? or am i missing something again?


User avatar
InishTech Dev
InishTech Dev
RBartelink - 2/11/2011 4:57:18 PM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

amir9898 wrote: "Add a reference your permutation to your app" you mean a dll of this flavour : "Microsoft.Licensing.Permutation_e2ef8_2.0.dll" ?? or am i missing something again?

Yes, that's correct. While one would not directly reference anything from this assembly, it needs to be there at runtime if the code is protected (or you create instances of the SLMRuntime class) as it's your customised permutation (the Runtime DLL is just a front end for the functionality in the permutation assembly).

The reason we say to add a reference is that this makes the default visual studio tooling propagate the DLL along with all the others into the output flow of the compile. In other words, installers, clickonce etc. will pick it up.

Hope this clarifies matters.

--Ruben


User avatar
InishTech Dev
InishTech Dev
RBartelink - 2/11/2011 4:54:03 PM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

amir9898 wrote: ERROR 1001 Unable to get installer types in the assembly 

Havent encountered this one, but ion general it would suggest that either:

a) you dont have an installer class in the assembly you said to run the managed installer from

b) or its  not public

c) or the RunInstaller(true) attribute is missing on your installer class

--Ruben


User avatar
Member
Member
Marx - 2/15/2011 8:57:28 PM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

I'm experiencing this with a VS 2008 Deployment package. i.e. ERROR 1001 Unable to get installer types in <MySLPInstallerAssembly>

  • <MySLPInstallerAssembly> has been added to the "Initial" phase of Custom Actions (There's a License Activator Custom Action in the "Commit" phase)
  • RemovePreviousVersions == true (And a previous version exists on the target machine)

If I first uninstall the old version the error does not happen.

Regards,

Marx


User avatar
InishTech Dev
InishTech Dev
RBartelink - 2/16/2011 1:09:49 AM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

Hi Marx,

not sure when the 'initial' phase fires, but I do know that an Installer class has e.g. an install and a commit phase. The activity in PermutationInstallerBase takes place in the Install phase, so it definitely needs to get triggered.

You'll find that the impls of each virtual method in PermutationInstallerBase are very simple calls to protected methods, so if you need to e.g. do the install bit at a different point, you should just be able to do e.g. a base.ExecuteInstall() - go use Reflector will stocks last :D

Regarding an uninstall phase, the PermutationInstallerBase class does not currently do anything in the uninstall phase.

Unfortunately we've yet to actually encounter this error ourselves in practice - perhaps Amir might step in and offer some of his experience here? All that springs to mind is the earlier mention things - the class needs to be present, public and have a RunInstaller(true) attribute on it

--Ruben


User avatar
Member
Member
Marx - 2/16/2011 12:20:28 PM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

For the custom action I have simply followed the recommendations from KB7 - "Visual Studio Deployment Projects (.vdproj projects) have a Custom Action option - simply tell it to run the Installer during the "Install" phase. Add "Primary Output from YourApp.exe" to the "Install" step, and set the InstallerClass property to True"

Also as I think Amir9898 also implied the error occurs on a machine that does not have Code Protector or VS installed not the development machine.

Finally it did not occur in earlier releases.

I don't know if any of this is relevant - it could be some issue on my end.

Regards,

Marx


User avatar
InishTech Dev
InishTech Dev
RBartelink - 2/16/2011 2:00:08 PM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

 Hi Marx,

Are you using the Visual Studio 2010 or 2008?

I guess its possible that an exception is being raised by the installer and the Windows Installer infrastructure just bubbles it up as a Error 1001.

IIRC Amir is working on a new app whihc he hasnt got working on a previous release of the SLPS runtime hence my reiterating basic points to him and then conflating your experience with his.

Ultimately, root causing this will involve switching on Windows Installer logging to get further details as to the underlying condition involved.

We have various internal tests (and our SDK dogfoods) around having a trivial class inheriting from PermutationInstallerBase always work when being invoked through InstallUtil (or Slps.Runtime.Configuration which triggers the equivalent CLR installutil classes), so I'm happy it's not completely broken. However, we ourselves don't use the .vdproj infrastructure to do our installers (it's been deprecated BTW - VSes after 2010 will have InstallShield Express instead) so it may be related to the way it interacts with managed installers in general.

Having said that, it's completely possible that there is indeed something broken.

(Assuming it's the installer you;re using) Has anyone else done a trivial one line app using VS2010 Installer Projects recently and failed to get it to work?

--Ruben


User avatar
Member
Member
padraigoleary - 1/18/2012 10:47:38 AM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

 Hey,

I am getting the same issues as Amir. I have worked through KB7. None of your suggestions are true in my case. 

Have Inishtech come up with any solutions?

Kind regards,

 


User avatar
InishTech Support
InishTech Support
pgao - 1/18/2012 3:21:05 PM
   
RE:Installer Issue - ERROR 1001 Unable to get installer types in the assembly

Hi Padraig,

We have worked through KB7 and it's proved to be working. While implementing this, please note that

1) Add X3 Runtime DLLs to your project. We believe you have got this done.

1) add a installer class to your project with the code shown in KB7.

2) add VerifyInstalled() to your main() method (as shown in KB7) which will verify if the runtime is installed before allowing the core function to run.

3) Add a custom action to the setup project, select "Application Folder" and create the custom action. Then add your primary output to the "Install" phase of this Custom Action. (N.B. please do not add to the "Commit" phase or it will cause problems). Then set the primary output's InstallerClass property to True.

This is pretty much the gist and you should be able to get a working installer. If you still encounter problems, we suspect if the SLP registry key on that machine is corrupted at some stage. Then we suggest to test on another clean machine or if there're no valuable licenses on this machine, you can delete the registry key (see the location of registry key in KB17 http://www.inishtech.com/kb17) and try the installation again.

If that still doesn't help, please give us the detailed steps what you've done and also the error message you got. Thanks

 

--Peng


1

There are currently no users on-line.

  • Sticky
  • Locked sticky
  • Hot sticky
  • Hot locked sticky
  • Thread
  • Hot thread
  • Locked thread