AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Netzlaufwerk W7 64 Bit

Ein Thema von udo888 · begonnen am 25. Jun 2012 · letzter Beitrag vom 25. Jun 2012
Antwort Antwort
udo888

Registriert seit: 20. Feb 2008
Ort: Radeberg
47 Beiträge
 
Delphi 2009 Enterprise
 
#1

AW: Netzlaufwerk W7 64 Bit

  Alt 25. Jun 2012, 11:23
Korrekt, damit hätte ich des Übels Ursache gefunden! Vielen Dank erstmal!

Ich habe die Batch mit dem "net use ..." als Administrator ausgeführt, worauf der Explorer nichts angezeigt hat. Erst mit einem normalen Start wurde es gelistet.

Das Programm selber ist ein selbst geschriebenes Setup-Programm, welches beim Start die Administrator-Abfrage auslöst. Das Programm liest aus der Registry, dass ein Datenverzeichnis X:\Daten existiert. Da jedoch das Programm in einer "anderen Welt" lebt, findet es das bezeichnete Laufwerk nicht.

Wie aber kann ich ein Laufwerk als Administrator zuweisen? Hier auf dem Test-PC gibt es nur einen Standardbenutzer.
Bei vielen Anwendern habe ich vom jeweiligen Admin zur Installation einen Zugang mit Administrator-Rechten bekommen, war aber nicht der Administrator selber.
Würde bedeuten, dass mein Setup (welches ein Update installieren soll) ins Leere läuft.

Kann ich ein Netzlaufwerk im Programm selber verbinden bzw. die Verbindung herstellen?
Udo

Geändert von udo888 (25. Jun 2012 um 12:01 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Netzlaufwerk W7 64 Bit

  Alt 25. Jun 2012, 15:58
Hallo,

also - eins nach dem anderen

1. Wenn Dein Programm per manifest sagt, dass es höhere Rechte benötigt passiert folgendes:
  • WinXP: User hat die Rechte -> nichts
  • WinXP: User hat die Rechte nicht -> Ausführen als Dialog öffnet sich
  • Vista / Win7: User hat die Rechte -> UAC-Dialog fragt ggf. nach ob die Rechte für dieses Programm gewährt werden sollen
  • Vista / Win7: User hat die Rechte nicht -> ausführen als Dialog um den Prozess die Rechte zu geben
Ab Windows Vista passiert das "Anfordern von höheren Rechten" zusätzlich durch den Dateinamen der exe-Datei. "Update" und "Setup" sind hier nur ein paar Beispiele.

2. Das du das Batch mit erhöhten Rechten ausgeführt hast und im Explorer zunächst nichts gesehen hast sagt ja erstmal nichts. Gab es Fehlermeldungen in der Komandozeile? Hat Dein Setup danach immer noch Probleme gehabt?

3. Wann braucht man Adminrechte für ein Update / Installation:
Es gibt durchaus Fälle, bei denen du keine erhöhten Rechte benötigst. Das kannst aber nur du entscheiden / herausbekommen. Du Programmierst das Update ja Z.B.: Erstellst du Programmverknüpfungen in "All Users\Desktop"? Registrierst du ActiveX-Sachen im System? Installierst du Treiber?
Was ich damit sagen will ist, je nachdem was dein "Installer" macht, braucht er diese Rechte oder eben auch nicht.
Wenn er sie braucht, dann musst du Dich damit auseinander setzen, wie du diese Probleme lösen kannst (Existiert das Netzlaufwerk etc.) - aber erst dann. Wenn nicht, benenne Dein Installer um und alles läuft durch im Benutzerkontext

Gruß, Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  Mit Zitat antworten Zitat
udo888

Registriert seit: 20. Feb 2008
Ort: Radeberg
47 Beiträge
 
Delphi 2009 Enterprise
 
#3

AW: Netzlaufwerk W7 64 Bit

  Alt 25. Jun 2012, 18:42
Danke für die Antwort.

zu 1. und 3.
Das Programm hat "Setup" im Namen, wird also deshalb zu höheren Rechten genötigt. Die Rechte sind auch notwendig, da Einträge unter LOCAL_MACHINE gesetzt werden müssen. Dafür würde jedoch auch eine Benutzeranmeldung mit Administrator-Rechten ausreichend sein.
Das Problem ist, dass ich bei Installationen oft nur einen solchen Benutzerzugang vom Netzwerk-Admin freigeschalten bekomme. Über diesen Zugang verknüpfe ich das Laufwerk und installiere erstmalig - alles paletti.
Das Problem schlägt bei einem Update zu. In der Reg findet dieses zwar den Verweis auf den Datenpfad, da das Laufwerk jedoch nicht verbunden ist, kann er dort keine Installationsdaten auslesen.
Bei ungemappten Laufwerken gibt es demzufolge auch keine Probleme.

zu 2.
Es stimmt schon, wie ich es ausgeführt habe:
- Anmeldung Benutzer mit Admin-Rechten
- Explorer geöffnet
- Batch-Datei mit net use p: \\... als Administrator ausgeführt
- im Explorer wird P: nicht angezeigt
- Setup-Programm funktioniert aber, da Administrator-Rechte angefordert werden
- Batch-Datei noch einmal ohne Administrator ausgeführt
- Explorer zeigt sofort P: an

Mein Problem besteht eigentlich nur noch darin, wie ich beim Verbinden des Netzlaufwerkes auch den Administrator einbeziehen kann.
Oder, wie ich das Laufwerk beim Ausführen des Setup intern verbinden kann.
Vielleicht gibt es noch eine Idee ...
Udo
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
669 Beiträge
 
Delphi 12 Athens
 
#4

AW: Netzlaufwerk W7 64 Bit

  Alt 25. Jun 2012, 18:48
Warum greifst du denn eigentlich nicht direkt auf den UNC-Pfad zu?
  Mit Zitat antworten Zitat
udo888

Registriert seit: 20. Feb 2008
Ort: Radeberg
47 Beiträge
 
Delphi 2009 Enterprise
 
#5

AW: Netzlaufwerk W7 64 Bit

  Alt 25. Jun 2012, 18:53
UNC ist eine Alternative. Bisher war das einheitliche Laufwerk jedoch optimal, da sich der "unwissende" Anwender im Servicefall besser per Telefon durch den Explorer jagen lässt.
Es wird aber wahrscheinlich auf UNC hinauslaufen müssen.
Udo
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
669 Beiträge
 
Delphi 12 Athens
 
#6

AW: Netzlaufwerk W7 64 Bit

  Alt 25. Jun 2012, 18:59
Ich hatte ein ähnliches Problem, da mein Programm auch oft auf irgendwelchen Netzlaufwerken schlummert und von normalen Anwendern dann immer das Verzeichnis gesucht werden musste. Mittlerweile habe ich einen Menüpunkt eingebaut, mit dem man den Windows Explorer direkt im Programm-Verzeichnis öffnen kann. Vielleicht hilft dir der Ansatz ja auch weiter.

Außerdem spricht ja nichts dagegen, dass du für den Normalfall bzw. das normale Programm ein Netzwerk-Laufwerk verbindest, das der Anwender schnell findet, und dennoch im Update-Programm über den UNC-Pfad gehst. Falls ich das Problem richtig verstanden habe.

Bis denn
Bommel
  Mit Zitat antworten Zitat
udo888

Registriert seit: 20. Feb 2008
Ort: Radeberg
47 Beiträge
 
Delphi 2009 Enterprise
 
#7

AW: Netzlaufwerk W7 64 Bit

  Alt 25. Jun 2012, 21:19
Danke, das ist ein Ansatz, den ich aufgreifen werde.
Ich werde einfach beim nächsten Update die Laufwerksangabe in UNC umsetzen. Das Laufwerk kann ich dann für den Service stehen lassen.
Udo
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#8

AW: Netzlaufwerk W7 64 Bit

  Alt 25. Jun 2012, 21:44
Mein Problem besteht eigentlich nur noch darin, wie ich beim Verbinden des Netzlaufwerkes auch den Administrator einbeziehen kann.
Oder, wie ich das Laufwerk beim Ausführen des Setup intern verbinden kann.
Falls Du immer noch nach einer Möglichkeit suchst. Bei den Schweizern habe ich dieses Beispiel gefunden. Vielleicht hilft Dir ja das.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Antwort Antwort

 

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 04:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz