AGB  ·  Datenschutz  ·  Impressum  







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

ShellExecute

Ein Thema von Kratos · begonnen am 8. Jun 2020 · letzter Beitrag vom 26. Mär 2021
Antwort Antwort
Seite 2 von 4     12 34      
Kratos

Registriert seit: 15. Okt 2019
51 Beiträge
 
Delphi 10.3 Rio
 
#11

AW: ShellExecute

  Alt 8. Jun 2020, 11:05
Ihr glaubt ja gar nicht wie verdammt bescheuert ich bin!
Ich hatte vor einiger Zeit auf einer anderen Platte ein Backup meines Projekts angelegt.
An meinem Backup arbeite ich ja aber nicht aktiv, sondern arbeite auf einer ganz anderen Partition. Ich hab die bat in meinen Backup-Ordner gelegt.
Oh my fcking god!

Es funktioniert jetzt


Ich bedanke mich dennoch bei allen für eure großartige Hilfe, besonders bei @Moombas.
Deine detailreiche Erklärung hat mich trotzdem weiter gebracht

VG Kratos

Geändert von Kratos ( 8. Jun 2020 um 12:01 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Moombas
Moombas

Registriert seit: 22. Mär 2017
Ort: bei Flensburg
525 Beiträge
 
FreePascal / Lazarus
 
#12

AW: ShellExecute

  Alt 8. Jun 2020, 11:08
Naja Detailreich fand ich sie nun nicht.

Generell kann ich dir bei soetwas nur empfehlen, wie es Günther schrieb: Schau dir das wo es nicht funktioniert im Debugger an und/oder gebe einfach mal aus (hier der Pfad+Dateiname), was du an eine Funktion übergibst (sofern generiert und nicht fix übergeben).

Dann wird man in der Regel schnell fündig wo der Hase im Pfeffer liegt.
Der Weg ist das Ziel aber man sollte auf dem Weg niemals das Ziel aus den Augen verlieren.

Geändert von Moombas ( 8. Jun 2020 um 11:11 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.346 Beiträge
 
Delphi 11 Alexandria
 
#13

AW: ShellExecute

  Alt 8. Jun 2020, 11:45
Ich hatte vor einiger Zeit auf einer anderen Platte ein Backup meines Projekts angelegt.
An meinem Backup arbeite ich ja aber nocht aktiv, sondern arbeite auf einer ganz anderen Partition.
Dafür gibt es Versionsverwaltungen wie Git oder SVN, dann braucht man kein Backup in Form von kopierten oder gezippten Quelltextverzeichnissen und man kann auch viel bequemer damit arbeiten...
https://entwickler-ecke.de/topic_Kur..._115462,0.html
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von Moombas
Moombas

Registriert seit: 22. Mär 2017
Ort: bei Flensburg
525 Beiträge
 
FreePascal / Lazarus
 
#14

AW: ShellExecute

  Alt 8. Jun 2020, 11:54
@Moombas
Ich möchte später mein eigenes Programm schließen, die alte exe löschen, eine neue exe in den Ordner kopieren und anschließend wieder ausführen lassen.
Deswegen hatte ich mir gedacht, dass ich das ganze in eine batch-Datei auslagere und schon mal mit einfachen Textdateien diesen Vorgang übe.^^
@Kratos: Da dein Problem behoben zu sein scheint, möchte ich nochmal hier drauf eingehen (s.o.).
Das hört sich nach einer Update-Routine an.
Klingt evtl. etwas merkwürdig aber ich würde es (gerade zum Lernen) an deiner Stelle auch in Delphi schreiben.
Insbesondere wenn solche Update-Routinen später etwas umfangreicher werden, z.B. mit der Einbindung einer Möglichkeit des Rollback, falls das Update fehlschlägt etc. wird das in einer Batch nachher schnell unübersichtlich oder auch nicht praktikabel.
Der Weg ist das Ziel aber man sollte auf dem Weg niemals das Ziel aus den Augen verlieren.
  Mit Zitat antworten Zitat
Kratos

Registriert seit: 15. Okt 2019
51 Beiträge
 
Delphi 10.3 Rio
 
#15

AW: ShellExecute

  Alt 8. Jun 2020, 12:15
@jaenicke

Git und SVN sind mir bekannt, auch wenn ich diese noch nicht genutzt habe.
Danke für deinen Tipp, nun scheint es wohl doch an der Zeit zu sein, dass ich mich näher damit beschäftige.^^

@Moombas

Du liegts richtig. Ich wollte eine abgespeckte Update-Routine implementieren.
Wenn ich dies ebenfalls in delphi programmieren soll, sollte man dies gleich mit in das Hauptprogramm mit rein nehmen oder sollte ich ein weiteres Programm schreiben, welches ich aus meinem Hauptprogramm heraus starte?
  Mit Zitat antworten Zitat
Benutzerbild von Moombas
Moombas

Registriert seit: 22. Mär 2017
Ort: bei Flensburg
525 Beiträge
 
FreePascal / Lazarus
 
#16

AW: ShellExecute

  Alt 8. Jun 2020, 12:20
Du kannst ja eine Datei nicht überschreiben, während diese noch läuft. Daher kommst du über eine separate Exe (oder ähnliches) nicht drum herum.
Aber eben diese würde ich trotzdem halt in Delphi schreiben, weil es für dich "Training" bedeutet und der Umfang dessen mit der Zeit steigen wird (je nach Programmumfang).

Es ist zudem einfacher, ein solches Programm mit wachsen zu lassen, als dieses komplett nachträglich mit einzubauen.
Der Weg ist das Ziel aber man sollte auf dem Weg niemals das Ziel aus den Augen verlieren.
  Mit Zitat antworten Zitat
Kratos

Registriert seit: 15. Okt 2019
51 Beiträge
 
Delphi 10.3 Rio
 
#17

AW: ShellExecute

  Alt 8. Jun 2020, 12:51
@Moombas

Alles klar, danke dir!
Das dachte ich mir schon.
Dann werde ich das so handhaben.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.346 Beiträge
 
Delphi 11 Alexandria
 
#18

AW: ShellExecute

  Alt 8. Jun 2020, 12:55
Du kannst ja eine Datei nicht überschreiben, während diese noch läuft. Daher kommst du über eine separate Exe (oder ähnliches) nicht drum herum.
Man kann aber die Datei normalerweise umbenennen während sie läuft. Man kann auch die gleiche Exe mit Parametern erneut starten und hat dann zwar mehrere Instanzen, aber immer noch nur eine Exe.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von Moombas
Moombas

Registriert seit: 22. Mär 2017
Ort: bei Flensburg
525 Beiträge
 
FreePascal / Lazarus
 
#19

AW: ShellExecute

  Alt 8. Jun 2020, 13:57
Ok, das mit den Parametern kenne/weiß ich. Das mit dem umbenennen war mir neu, weil mir das bisher noch nie als use-case aufgetreten ist.

Wenn ich @Jaenicke also richtig verstehe: Programm starten -> In diesem benennt die Update-Prozedur die eigene Exe um, kopiert die neue rein und startet diese und beendet die alte.
Die neue löscht dann wiederum die umbenannte exe und alles ist schick mit nur einer exe-Datei.

Hmm, hört sich interessant an.
Ich für meinen Teil bleibe aber wohl eher dabei das zu splitten.
Der Weg ist das Ziel aber man sollte auf dem Weg niemals das Ziel aus den Augen verlieren.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.140 Beiträge
 
Delphi 12 Athens
 
#20

AW: ShellExecute

  Alt 8. Jun 2020, 14:54
Auf Netzlaufwerken, bzw. umgeleiteten Unterverzeichnisen zu Einem, da geht das mit dem Umbenennen eventuell oft nicht. (kommt drauf an, wie der Server am enderen Ende die Sperren behandelt)

Es gibt hier im Forum auch irgendwo eine Komponente, welche das mit dem Update handelt.
> Hier im Forum suchenUpdater irgendwas

Und ansonsten mehrere Threads, wo man den einen oder anderen hilfreichen Hinweis/Tipp bestimmt findet.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 8. Jun 2020 um 14:58 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 4     12 34      


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:08 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