Deutsches AutoHotkey Homepage AutoHotkey Community
Wir helfen uns gegenseitig aus der Patsche
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Mehrere Dateien überprüfen?!?

 
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Ich brauche Hilfe!
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
ron2875



Anmeldedatum: 16.07.2008
Beiträge: 13

BeitragVerfasst am: Mi Aug 13, 2008 9:06 am    Titel: Mehrere Dateien überprüfen?!? Antworten mit Zitat

Hallo,
ich versuche bei einem Programmstart zu überprüfen, ob Dateien vorhanden sind, wenn nicht, sollen sie installiert werden.

Nun habe ich folgendes probiert:
Code:
 
if FileExist := ("C:\Elvis_Neu.txt""C:\ELVIS_Verification.txt")
{
  FileInstall, C:\Elvis_Neu.txt, C:\Elvis_Neu.txt, 0
  FileInstall, C:\ELVIS_Verification.txt, C:\ELVIS_Verification.txt, 0
  MsgBox, 0, FileInstall, Dateien wurden installiert!
}
else


Leider ist das wohl Quatsch, aber mir fehlt die Idee, die beiden Dateien auf Existenz zu prüfen. Es muss halt klar sein, ob BEIDE vorhanden sind.

Danke für Eure Hilfe,
Ron
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Obi-Wahn



Anmeldedatum: 19.04.2006
Beiträge: 729
Wohnort: Wien

BeitragVerfasst am: Mi Aug 13, 2008 9:11 am    Titel: Antworten mit Zitat

Mach einfach beide Fileinstall.
Wenn die Datei vorhanden ist, wird die Datei eh nicht installiert, sofern der letzte parameter nicht ne 1 ist...
_________________
Garten ist eine Kunstnatur
Das Leben ist nicht fair. Es ist nur fairer als der Tod, das ist alles.
Obi-Wahns Codeschnipsel @ securityvision.ch
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ron2875



Anmeldedatum: 16.07.2008
Beiträge: 13

BeitragVerfasst am: Mi Aug 13, 2008 9:17 am    Titel: Antworten mit Zitat

Hallo,

das habe ich auch herausgefunden, aber ich möchte eine MsgBox Abfrage machen, ob der User installieren möchte, wenn nicht vorhanden!

Danke,
Ron
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Obi-Wahn



Anmeldedatum: 19.04.2006
Beiträge: 729
Wohnort: Wien

BeitragVerfasst am: Mi Aug 13, 2008 9:22 am    Titel: Antworten mit Zitat

Dann mach halt:
Code:
Msgbox, 36, Installieren?, Sollen die Dateien installiert werden?
IfMsgbox, Yes
   {
   FileInstall, wasweisich.1
   FileInstall, wasweisich.2
   }

_________________
Garten ist eine Kunstnatur
Das Leben ist nicht fair. Es ist nur fairer als der Tod, das ist alles.
Obi-Wahns Codeschnipsel @ securityvision.ch
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ron2875



Anmeldedatum: 16.07.2008
Beiträge: 13

BeitragVerfasst am: Mi Aug 13, 2008 9:26 am    Titel: Antworten mit Zitat

Das würde bedeuten, dass die Abfrage bei jedem Programmstart kommt, ich hätte sie aber gerne nur auf einem "neuen" System, also wenn Dateien nicht vorhanden, dann Abfrage, sonst normaler Programmstart!

Danke,
Ron
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
BoBo²
Gast





BeitragVerfasst am: Mi Aug 13, 2008 9:31 am    Titel: Antworten mit Zitat

Wenn du überprüfen möchtest ob existent, müsstest du erstmal wissen wo existent. Und ne 120 GB Platte nach einem Programm zu scannen kann dauern. Es wäre also sinniger (und gebräuchliche Praxis) die (bereits) installierte Version einen Eintrag in der Registry vornehmen zu lassen, welcher von einer 'Nachinstallation' auf Existenz/Werte hin abgefragt wird.
Nach oben
fredchf



Anmeldedatum: 18.09.2006
Beiträge: 716
Wohnort: Deutschland

BeitragVerfasst am: Mi Aug 13, 2008 11:16 am    Titel: Antworten mit Zitat

hallo!
warum nicht so? Wink
Code:
If !FileExist("C:\Elvis_Neu.txt") or !FileExist("C:\ELVIS_Verification.txt")
  {
    MsgBox, 36, Installieren?, Mindestens eine Datei nicht gefunden,sollen die Dateien installiert werden?
    IfMsgBox, Yes
      {
        FileInstall, C:\Elvis_Neu.txt, C:\Elvis_Neu.txt, 0
        FileInstall, C:\ELVIS_Verification.txt, C:\ELVIS_Verification.txt, 0
        MsgBox, 0, FileInstall, Dateien wurden installiert!
      }
  }
Else
  MsgBox, Dateien bereits Vorhanden...

_________________
Mit freundlichen Grüßen
fredchf
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
DerRaphael



Anmeldedatum: 09.01.2008
Beiträge: 1232
Wohnort: 127.0.0.1

BeitragVerfasst am: Mi Aug 13, 2008 11:49 am    Titel: Antworten mit Zitat

gleicher einsatz, verallgemeinerte form

Code:
installFiles := "elvis1.txt|elvis2.txt"
fehlt := ""
Loop,Parse,installFiles,|
{
   if !(FileExist(A_LoopField))
      fehlt .= A_LoopField "`n"
}
if (StrLen(Fehlt)!=0) {
   MsgBox,17,Fehlende Dateien,Folgende Dateien fehlen, sollen Diese installiert werden?`n`n%fehlt%
   IfMsgBox, OK
   {
      FileInstall,elvis1.txt,elvis1.txt,0
      FileInstall,elvis2.txt,elvis2.txt,0
   }
}


grüße
dR
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
ron2875



Anmeldedatum: 16.07.2008
Beiträge: 13

BeitragVerfasst am: Mi Aug 13, 2008 1:46 pm    Titel: Antworten mit Zitat

SUPER!!!!

Vielen Dank schon mal, da bringt mich weiter...

Kann ich auch den "Link"

Code:

 or !FileExist("%A_Desktop%\Elvis_Neu.txt.lnk")


irgendwie funktionierend machen???

Wenn ich das so dahinter setze, sagt er immer, er hätte eine Datei nicht gefunden...

Gruß und Danke,
Ron
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
DerRaphael



Anmeldedatum: 09.01.2008
Beiträge: 1232
Wohnort: 127.0.0.1

BeitragVerfasst am: Mi Aug 13, 2008 1:53 pm    Titel: Antworten mit Zitat

es muss heißen
Code:
fileexist(a_desktop "meinlink.lnk")

du verwendetest eine falsche syntax. in der ich brauche hilfe übersicht findest du oben eine hilfreiche link sammlung - dort gibt es den verweis zu denicks tutorial zum umgang mit variablen. sehr emfehlenswert.

grüße
dR
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
ron2875



Anmeldedatum: 16.07.2008
Beiträge: 13

BeitragVerfasst am: Mi Aug 13, 2008 2:09 pm    Titel: Antworten mit Zitat

Noch mal, Bitte!

Also, was genau ist denn jetzt hier falsch?

Code:

If !FileExist("C:\Elvis_Neu.txt") or !FileExist("C:\ELVIS_Verification.txt") or !FileExist(A_Desktop "Elvis_Neu.txt.lnk") or !FileExist(A_Desktop "ELVIS_Verification.txt")
  {
    MsgBox, 0, Erstinstallation!, Sie starten das Tool zum ersten Mal! Es folgen einige Kopiervorgänge, die bestätigt werden müssen! Danke!
    MsgBox, 36, Installieren?, Mindestens eine Datei wurde nicht gefunden, sollen die Dateien installiert werden?
    IfMsgBox, Yes


Ich verstehe nicht, warum er immer neu installiert? Er erkennt nicht, das die Desktop Dateien schon da sind, die anderen funktionieren!

Gruß
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Obi-Wahn



Anmeldedatum: 19.04.2006
Beiträge: 729
Wohnort: Wien

BeitragVerfasst am: Mi Aug 13, 2008 2:15 pm    Titel: Antworten mit Zitat

Probier mal:
Code:


If !FileExist("C:\Elvis_Neu.txt") or !FileExist("C:\ELVIS_Verification.txt") or !FileExist(A_Desktop . "\Elvis_Neu.txt.lnk") or !FileExist(A_Desktop . "\ELVIS_Verification.txt")
  {
    MsgBox, 0, Erstinstallation!, Sie starten das Tool zum ersten Mal! Es folgen einige Kopiervorgänge, die bestätigt werden müssen! Danke!
    MsgBox, 36, Installieren?, Mindestens eine Datei wurde nicht gefunden, sollen die Dateien installiert werden?
    IfMsgBox, Yes

_________________
Garten ist eine Kunstnatur
Das Leben ist nicht fair. Es ist nur fairer als der Tod, das ist alles.
Obi-Wahns Codeschnipsel @ securityvision.ch
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Ich brauche Hilfe! Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de