Zugriff verweigert beim Start des SQL Server Express Dienstes

26/05/2009 - 04:06 von Frank | Report spam
Hallo !

Um sicher zu gehen, dass der SQL Server 2005 Express Dienst gestartet ist,
möchte ich über eine DLL den Dienst durch

Using SQLService As New ServiceProcess.ServiceController("MSSQL$SQLEXPRESS")
If SQLService.Status =
ServiceProcess.ServiceControllerStatus.Stopped Or SQLService.Status =
ServiceProcess.ServiceControllerStatus.StopPending Then
SQLService.Start()
End If
End Using

starten.

Auf meinem Vista-Rechner mit aktivierter Benutzerkontenverwaltung
funktioniert es nicht. Es kommt der Fehler 'Zugriff verweigert'. Wenn ich den
Dienst über die Systemsteuerung starte, kommt die Aufforderung der
Benutzerkontensteuerung dem Vorgang zuzustimmen.

Wie kann ich erreichen, dass in meinem Code auch nach der Zustimmung
automatisch gefragt wird, anstatt gleich den Fehler 'Zugriff verweigert' zu
werfen ?

Danke und Gruß
FRANK PANNIER
 

Lesen sie die antworten

#1 Frank Dzaebel
01/06/2009 - 15:36 | Warnen spam
Hallo Frank Pannier,

Um sicher zu gehen, dass der SQL Server 2005 Express Dienst
gestartet ist, möchte ich über eine DLL den Dienst durch [...]
starten.



Ab Vista/W2008/Win7 hat man standardmàssig nur
normale User-Rechte. Um einen Dienst zu starten, benötigst
Du aber mindestens das "SERVICE_START (0x0010)" Recht.
Du wirst feststellen, dass auch die OS-Befehle:
net start MSSQL$SQLEXPRESS
oder
sc start MSSQL$SQLEXPRESS
letztlich auch bei der API OpenService einen dokumentierten
sauberen "Access denied" Fehler bekommen.
Unter XP arbeitet man ja (leider) oft als Admin.
Letztlich kann man nun u.a. beim Setup (mit Admin-Rechten)
die User-Rechte erhöhen (sc ->Privs), oder die Assembly in
eine beim Setup installierte Codegruppe tun.
Hier ist ein guter Artikel dazu:

[Niedrigste Berechtigungsstufe: So optimieren Sie Ihre Anwendungen für die
Zusammenarbeit mit der Benutzerkontensteuerung von Windows Vista]
http://msdn.microsoft.com/de-de/mag...63486.aspx

ich habe mal hier ein Beispiel-Download gemacht (nur ganz grob) :
http://dzaebel.net/Downloads/Servic...nAdmin.zip


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen