AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi "Als Administrator ausführen" URLDownloadToFile geht nicht mehr
Thema durchsuchen
Ansicht
Themen-Optionen

"Als Administrator ausführen" URLDownloadToFile geht nicht mehr

Ein Thema von SearchBot · begonnen am 27. Sep 2020 · letzter Beitrag vom 28. Sep 2020
Antwort Antwort
SearchBot

Registriert seit: 27. Jun 2004
Ort: N-W vom Bodensee
311 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

"Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 27. Sep 2020, 20:34
Hallo,

ich hab das seltsame Phänomen, daß mein Programm, wenn es als Administrator ausgeführt wird, keine Downloads mehr machen kann - ohne Admin-Rechte geht es mit dem Runterladen aber prima.

Ich benötige die Adminrechte nur, um den Netzwerkadapter automatisch neu zu starten (weil der bei meinem Chuwi-Tablet sporadisch abstürzt, und einfach de- und wieder aktivieren hilft) und automatisch, weil die Anwendung unbeaufsichtigt arbeitet, und die Umgebung automatisch intakt halten soll.
Der Anwender kann mein Programm auch normal starten, wenn er diese Funktion nicht braucht. Ich möchte sie nicht gleich mit gehobenen Rechten ausliefern.

Woran kann es liegen, daß URLDownloadToFile (von urlmon-Unit) mit Adminrechten keine Datei (einfache txt-Datei von einer https-Webseite) herunterladen kann, ohne die Rechte aber schon?
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#2

AW: "Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 27. Sep 2020, 20:46
Um der Ursache näherzukommen, solltest du den Rückgabewert der Funktion MSDN-Library durchsuchenURLDownloadToFile auswerten.

Grüße
Dalai
  Mit Zitat antworten Zitat
SearchBot

Registriert seit: 27. Jun 2004
Ort: N-W vom Bodensee
311 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: "Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 27. Sep 2020, 21:13
Okay..

Normal: 0
Als Admin: 0

Hilft nicht weiter
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#4

AW: "Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 27. Sep 2020, 21:23
Wie ist es mit einer anderen URL? Mal den Cache des IE gelöscht?

Grüße
Dalai
  Mit Zitat antworten Zitat
SearchBot

Registriert seit: 27. Jun 2004
Ort: N-W vom Bodensee
311 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: "Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 27. Sep 2020, 21:23
Hm..

kann es sein, daß als Admin ausgeführte Programme einen anderen Dateipfad als Programmordner verwenden?

Ich lese den Download später ein und normal einfach so memo.LoadFromFile('temp.txt') , was normal geht, aber beim Admin muss ich den Pfad extra dazu schreiben memo.LoadFromFile(extractfilepath(application.exename)+'temp.txt') Dann geht es, habe ich gerade bemerkt...
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#6

AW: "Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 27. Sep 2020, 22:02
Sich darauf zu verlassen, dass das Arbeitsverzeichnis schon stimmen wird, ist nie eine gute Idee. Pfade gibt man immer absolut an, am sinnvollsten aus Variablen zusammengebaut. Aber nie hartkodiert oder unter der Annahme "Den Pfad gibt's auf jedem System".

Grüße
Dalai
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.490 Beiträge
 
Delphi 7 Professional
 
#7

AW: "Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 28. Sep 2020, 10:07
Wenn ich bei Programmen sicherstellen möchte, dass das Programmverzeichnis auch das Arbeitsverzeichnis ist, gibt es im FormCreate (oder einer anderen, beim Progammstart garantiert ausgeführten Stelle) diese Zeile:  ChDir(ExtractFilePath(Application.ExeName)); Das ist z. B. bei Programmen sinnvoll, die grundsätzlich von 'ner externen Festplatte gestartet werden und deren Ein- und Ausgabedaten auch auf dieser Festplatte liegen.

Bei Programmen, die regulär installiert werden, ist dieses Vorgehen eher kontraproduktiv.
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.067 Beiträge
 
Delphi 12 Athens
 
#8

AW: "Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 28. Sep 2020, 11:16
Ich benötige die Adminrechte nur, um den Netzwerkadapter automatisch neu zu starten ...
Vielleicht liegt es ja genau daran.
Hast Du mal versucht als Admin zu starten, OHNE den Netzwerkadapter zurückzusetzen ?

Das sollte sich doch gleich verhalten wenn Du das Rücksetzen mal einfach rausnimmst.
  Mit Zitat antworten Zitat
Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
759 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: "Als Administrator ausführen" URLDownloadToFile geht nicht mehr

  Alt 28. Sep 2020, 12:28
Hm..

kann es sein, daß als Admin ausgeführte Programme einen anderen Dateipfad als Programmordner verwenden?

Ich lese den Download später ein und normal einfach so memo.LoadFromFile('temp.txt') , was normal geht, aber beim Admin muss ich den Pfad extra dazu schreiben memo.LoadFromFile(extractfilepath(application.exename)+'temp.txt') Dann geht es, habe ich gerade bemerkt...
Ich nehme an du beziehst dich auf Windows.
- GetCurrentDir hast du (bei deiner "Ohnepfad" Lösung) mal abgefragt (?).
- U.a. mithilfe von ProcMon siehst du wohin die Datei geschrieben wird.
- Relative Pfade solltest du eh vermeiden. Das Setzen eines Dirs beim Programmstart muss nicht heissen, dass diese Wahl bestehen bleibt. (siehe m$)
- Ins Verzeichnis der App sollte man keine Daten schreiben. Dafür sind andere Ordner vorgesehen.
Michael Gasser
  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 23:41 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