Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

COM+ Packages and DLL's


3 replies to this topic

miken

miken
  • Members
  • 1 posts

Posted 02 April 2002 - 04:24

I have an application with 3 com+ packages and several com+ dll's in each. How can I get Install Shield Developer to set these packages up and register each component in the correct package?

There must be a way to do this but I am struggling to find any documentation or examples. Everything I can find is for standard COM servers, and not COM+..

Any help you can give would be greatly appreciated, as I am finding InstallShield to have quite a steep learning curve for beginners.

Scott Williams

Scott Williams
  • Members
  • 38 posts

Posted 02 April 2002 - 16:04

I'm not using ISWI (I'm just creating MSI files directly), and the only way I discovered to do this is to export the various COM+ Apps and then call them as nested installs from your main installer.

aglenwright

aglenwright
  • Members
  • 53 posts

Posted 10 April 2002 - 08:50

I actually do this (COM+ registration) with a wizard that is launched after the setup is complete, but you could probably automate it in installshield with a custom action in VBScript.

Please excuse any mistakes - I am editing production code in notepad for this post :-)

Public Function RegisterInMTS(strName, strFileNameAndPath)
 On Error GoTo RegisterInMTS_Error
 
 Dim objCatalog
 Dim objApps
 Dim objNewApplication
 Dim intCount
 
 ' First, we create the catalog object
 Set objCatalog = CreateObject("COMAdmin.COMAdminCatalog")
 
 Set objApps = objCatalog.GetCollection("Applications")
 objApps.Populate
 
 ' look for existing app
 For intCount = objApps.Count - 1 To 0 Step -1
   If objApps.Item(intCount).Name = strName Then
     objApps.Remove intCount
   End If
 Next
 
 Set objNewApplication = objApps.Add
 objNewApplication.Value("Name") = strName
 objNewApplication.Value("Activation") = "Inproc"
 objApps.SaveChanges
 
 bjCatalog.InstallComponent strName, strFileNameAndPath, vbNullString, vbNullString
 RegisterInMTS = True
     
RegisterInMTS_Error:
 If Err.Number <> 0 Then
   RegisterInMTS = False
 End If
End Function
Anthony Glenwright
Inventua

dolteanu

dolteanu
  • Members
  • 7 posts

Posted 15 April 2002 - 17:05

Yes, you can export an COM+ app as a .msi file and run it as a custom action,everything is OK if the components have no dependency from other nocomponents dlls.If at least one component has  such a kind of dependency, the msi app cannot register all components.
Any hints regarding that?
dumitru olteanu