Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   *.exe datei aus Delphi heraus umbenennen (https://www.delphipraxis.net/166767-%2A-exe-datei-aus-delphi-heraus-umbenennen.html)

Vukloc 29. Feb 2012 16:56

AW: *.exe datei aus Delphi heraus umbenennen
 
Hallo und erstmal sorry für die Verspätung, aber leider habe ich im Moment zuhause kein Delphi, kann dafür aber nur zuhause ins Internet. Hoffe das das nächste Woche wieder erledigt ist und dann alle rund läuft.

Als Rückgabewert von MyRenameFile bekomme ich eine 5.

Denke bzw bin ich mir sicher das es an den Adminrechten liegt, habe da heute nochmals was getestet und wenn ich die compilierte Datei (unter Windows 7) mit Rechtsklick-->ausführen als Administrator ausführe dann benennt er mir auch die exe um.

So jetzt muss ich mal schauen wie ich das hinbekomme das das Programm die Adminrechte "beantragt" natürlich mit der Kentniss des Benutzers, gibt es da unterschiede im Bezug auf die verschiedenen Windowsversionen ?

Danke für eure Hilfe

Klaus01 29. Feb 2012 17:03

AW: *.exe datei aus Delphi heraus umbenennen
 
Hallo,

ErrorCode 5 (0x5) ERROR_ACCESS_DENIED
Quelle

Grüße
Klaus

Bummi 29. Feb 2012 17:09

AW: *.exe datei aus Delphi heraus umbenennen
 
Bezüglich des Starts mit erhöhten Rechten .... ob das < Vista auch funktioniert weiß ich nicht ...

Delphi-Quellcode:
 shellexecute(handle,'RunAs','C:\temp\DeinProgramm.exe','','',sw_Show);
 Application.Terminate;

p80286 29. Feb 2012 17:14

AW: *.exe datei aus Delphi heraus umbenennen
 
Zitat:

Zitat von Vukloc (Beitrag 1153693)
Denke bzw bin ich mir sicher das es an den Adminrechten liegt, habe da heute nochmals was getestet und wenn ich die compilierte Datei (unter Windows 7) mit Rechtsklick-->ausführen als Administrator ausführe dann benennt er mir auch die exe um.

Also Du willst sowohl Daten als auch Programm-Dateien die unter c:\Programme liegen, umbenennen?

Zum einen gehören Parameterdateien,Tempdateien usw NICHT in den "Programme"-Ordner!!
Entweder Du hällst Dich an die Vorgaben von Microsoft, Dann landen die Daten irgendwo unter C:\Benutzer oder Du machst Dein eigenes Ding "C:\MeinSuperprogramm".
Im zweiten Fall kannst Du Zugriffsrechte vergeben wie Du lustig bist und kommst niemanden in die Quere. Nachteil ist, das normal gestrickte Programme nicht damit rechnen, daß es jemanden gibt der sich ausserhalb der von MS vorgegebenen Pfade bewegt.

Zum zweiten hat der eingeschränkte Zugriff auf C:\Programme mit dem Adminitrator eigentlich nichts zu tun, der Administrator hat bei MS nur das Recht sich jedes Recht zu holen.
Was Du benötigst, ist das Recht Dateien umzubenennen. Das kann jeder Benutzer erhalten, wenn man will. Aber bevor Du solche Änderungen vornimmst, solltest Du Dich fragen, ob das was Du vorhast auch wirklich so sinnvoll ist.

Gruß
K-H

DeddyH 29. Feb 2012 17:29

AW: *.exe datei aus Delphi heraus umbenennen
 
Es kann aber auch schlicht sein, dass die Programme gerade laufen, dann ist ein Umbenennen auch nicht möglich (selber Fehlercode IIRC).

Vukloc 29. Feb 2012 18:16

AW: *.exe datei aus Delphi heraus umbenennen
 
Ne habs ja getestet Starten per Rechtsklick -> Als Admin ausführen und es klappt, starten per Doppelklick das umbenennen der exe klappt nicht.

Desweietern handelt es sich nicht um Parameterdateien, Tempdateien oder sonstiges.

Der Sinn ist, in ein bestehendes Projekt/Programm (bereits installiert) werden einige bearbeitete Grafiken eingefügt und im gleichen Schritt soll die Startdatei für das Programm umbenannt werden damit ersichtlich ist das die neuen Grafiken vorliegen, die Änderungen sind zum teil so winzig das sie beim betrachten nicht direkt ins Auge fallen.

Delphi-Quellcode:
shellexecute(handle,'RunAs','C:\temp\DeinProgramm.exe','','',sw_Show);
 Application.Terminate;
Muss ich dann auch morgen mal antesten.

Danke

Luckie 29. Feb 2012 19:12

AW: *.exe datei aus Delphi heraus umbenennen
 
Da wird sich der Anwender aber freuen, wenn bei ihm keine Verknüpfungen mehr funktionieren. Und ich als Admin würde den Programmierer in den Pop treten, wenn ich die Verknüfungen auf allen Rechnern wieder in Ordnung bringen dürfte.

p80286 29. Feb 2012 23:19

AW: *.exe datei aus Delphi heraus umbenennen
 
Jo, diese DOS-Mentalität ist nicht auszurotten.
Man muß Windows nicht unbedingt lieben und alles gut finden was dazu gehört, aber ein wenig an die Spielregeln halten ist meist kein Fehler.

Gruß
K-H

himitsu 29. Feb 2012 23:36

AW: *.exe datei aus Delphi heraus umbenennen
 
Der User weiß nicht welche Version installiert ist?

Da frage ich mich, wozu es z.B. die Versions-Ressource gibt.

Außerdem kann diese Verzeichnis doch nur absichtlich verändert werden (wenn man die Rechte gewährt), womit man dann eigentlich auch weiß, was man grade installiert/updated.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:06 Uhr.
Seite 2 von 2     12   

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