Fehler Service-Installer/In Setup einbinden

DrMueller

Erfahrenes Mitglied
Hallo Leute,
ich hätte zwei Frägelchen, vielleicht kann mir ja jemand helfen.

1. Ich habe bereits einmal in einer Schnittstelle einen Dienst ausprogrammiert.
Der Installer-Teil sah wie folgt aus:

Code:
Imports System.ComponentModel
Imports System.Configuration.Install
Imports System.ServiceProcess

Public Class hiSoftInstaller
  Private Const SERVICENAME As String = "name"
  Private Const DESCRIPTION As String = "describtion"

  '####################################################################################
  '#   Description: Konstruktor. 
  '#
  '#   Author:  Müller Matthias
  '#   Datum:   07.03.08
  '#   Version: 1.0
  '#   Changes: 
  '####################################################################################
  Public Sub New()
    MyBase.New()
    Dim hiSoftProcessInstaller As ServiceProcessInstaller _
     = New ServiceProcessInstaller()
    Dim hiSoftServiceInstaller As ServiceInstaller _
     = New ServiceInstaller()
    hiSoftProcessInstaller.Account = ServiceAccount.LocalSystem
    hiSoftServiceInstaller.StartType = ServiceStartMode.Manual

    hiSoftServiceInstaller.ServiceName = SERVICENAME
    hiSoftServiceInstaller.Description = DESCRIPTION

    Installers.Add(hiSoftServiceInstaller)
    Installers.Add(hiSoftProcessInstaller)
  End Sub

End Class

Dies funktioniert soweit. Nun habe ich bei einer neuen Schnittstelle die Verweise/Namespaces etc. alles rüberkopiert, aber er meldet mit, dass Installers nicht deklariert worden ist.
Bei der anderen Schnittstelle musste ich das gar nicht machen.
Ich habe diesen Installer vom MSDN-Beispiel kopiert und einfach abgeändert, darum bin ich nicht so der Spezialist. Kann sich wer erklären wieso zwei völlig indentische Projekte anders verhalten?


2. Bisweilen musste ich be einer Installation den Installer mittels InstallUtil einsetzen. Ist es möglich diese Befehle über den InstallShield direkt mitzugeben?
 

Nico Graichen

Erfahrenes Mitglied
Hi

zu 1.
Ich finde keine Stelle, in der Installer steht und nicht deklariert sein könnte. Könntest du im Code die Stelle bitte markieren, die angemeckert wird?

zu 2.
Wenn du das mit geliefert InstallProjekt von VS nutzt kannst du in den Eigenschaften der Service-Assembly einstellen, dass sie registriert werden soll bzw sich selbst registriert
 

DrMueller

Erfahrenes Mitglied
Vielleicht grad noch eine andere Frage:

Beim Dienst selber verlangt .Net penetrant eine
Public Shared Sub main()

Ich habe beim Startobjekt jedoch den Service ausgewählt.
Nun habe ich halt einfach diese main gemacht, aber beim Start der Schnittstelle springt er immer dort rein, und nicht auf

Protected Overrides Sub OnStart(ByVal args() As String)

Hat vielleicht jemand eine Idee, wie ich den Dienst dazu bringe, in den OnStart zu springen?