AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Problem mit Anforderung von Administratorrechten für Treiberinstallation
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit Anforderung von Administratorrechten für Treiberinstallation

Ein Thema von machstuhl · begonnen am 26. Feb 2016 · letzter Beitrag vom 26. Feb 2016
 
machstuhl

Registriert seit: 17. Jul 2012
40 Beiträge
 
#1

Problem mit Anforderung von Administratorrechten für Treiberinstallation

  Alt 26. Feb 2016, 09:50
Freunde der Sonne, ich habe ein Problem.
Ich möchte in einem selbstgeschriebener Installer den Microsoft SQL-Server Native Client installieren. Der Datenbank-Treiber soll beim ersten Starten einmalig installiert werden.

Mein Problem dabei ist, dass auf manchen Rechnern die Installation des Treibers nicht durchgeführt wird, wenn mein Programm nicht als Administrator ausgeführt wird.

Wenn mein Programm nicht als Administrator ausgeführt wird, hole ich mir per 'runas' im ShellExecute Adminrechte. Die Anfrage nach Adminrechten erscheint auch, allerdings passiert danach anscheinend nichts mehr.

Delphi-Quellcode:
  
  function shellExec (APath, AParameter: String) : Boolean;
    rslt := ShellExecute (0, pChar('runas'), pChar(APath), pChar(AParameter), pChar(''), SW_SHOWNORMAL);
    result := ( rslt > 32 );
  end;

  shellExec('msiexec.exe', '-i' + MsiInstaller + ' /qn IACCEPTSQLNCLILICENSETERMS=YES');
  // MsiInstaller ist der Pfad zum NativeClient-Installer
Danach gebe ich dem Programm mittels Sleep(20000) 20 Sekunden Zeit, damit die Installation durchgeführt werden kann. Auf normal schnellen Rechnern dauert die Installation 2-4 Sekunden, sodass die großzügig dimensionierten 20 Sekunden kein Problem sein dürften, bevor es weiter geht.

Aus Gründen der Übersicht habe ich die Fehlerauswertung aus "rslt" hier im Post weggelassen. Daran liegt es nicht, ich bekomme keinen Errorcode zurück.


Hat irgendwer eine Idee, warum die Installation funktioniert, wenn das Programm mit Adminrechten gestartet wird, aber nicht wenn es die Adminrechte selbst anfordert?

Wenn das Programm mit Adminrechten gestartet wird, kommt keine zweite Meldung das Adminrechte angefordert werden für die Treiberinstallation.


Frage: Was muss ich tun, damit der Installer immer ausgeführt wird und mein Programm nicht mit Adminrechten gestartet werden muss.

Gruß und Kuss
  Mit Zitat antworten Zitat
 

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz