AGB  ·  Datenschutz  ·  Impressum  







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

Updater Errors :'(

Ein Thema von Berlinermauer · begonnen am 7. Okt 2007 · letzter Beitrag vom 10. Okt 2007
Antwort Antwort
Berlinermauer

Registriert seit: 3. Okt 2007
Ort: 0x0000
213 Beiträge
 
Delphi 7 Personal
 
#1

Updater Errors :'(

  Alt 7. Okt 2007, 18:15
Hi ich hab einen Updater gemacht doch blick ich die errors nicht

deklaration :
Delphi-Quellcode:
 Version: File;
 Versionfrominternet: File;
 ReadenVersion: String;
 ReadenVersion2: String;
 SetupPath: TStream;
 SetUPonlinePath: File;
 TSTREAMONLINEVERSION: TStream;
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
TSTREAMONLINEVERSION := TFileStream.Create('./data/OnlineVersion.ini', fmCreate);
 try
   Downloader.Get('http://www.gooooogle.de/Version.ini',TSTREAMONLINEVERSION);
 finally
 end;

assignfile(Version,'./data/BatchMakerVersion.ini');
rewrite(Version); // Öffne die Datei für den Schreib-Modus
ReadLn(Version,ReadenVersion);
CloseFile(Version);
assignfile(Versionfrominternet,'./data/OnlineVersion.ini');
rewrite(Versionfrominternet); // Öffne Datei für den Schreib Modus
ReadLn(Versionfrominternet,ReadenVersion2);
CloseFile(Versionfrominternet);

If ReadenVersion < ReadenVersion2 then begin// Wenn die Version im Internet neuer ist ...
// Frag benutzer nach Aktion und wenn Ja, dann update
If MessageDlg('Es sind Updates vorhanden ! Sollen diese Jetzt Gedownloadet werden ?', mtConfirmation, [mbyes, mbno], 0) = mrYes then begin
// Benutzer Stimmt zu !
SetupPath := TFileStream.Create('./data/setup.exe', fmCreate);
try
Downloader.Get('http://www.goooogle.de/BatchMaker/setup.exe',SetupPath);
finally
SetupPath.Free;
// Gedownloadet ...
MessageDlg ('Das Update Wurde Erfolgreich Heruntergeladen ... Der Installer führt sie durch das Update','Erfolg !');
ShellExecute(Handle, nil, SetupPath, nil, PChar(CurrentDir), SW_NORMAL); // Starte die Setup.exe
Form1.Close
end
end
Else // Benutzer möchte kein Update
MessageDlg('Abgebrochen. Sie Werden beim nächsten Start von Windows nocheinmal gefragt.', mtInformation, [mbOK], 0)
Else
// Computer hat die Neuste Version
end;
end.
Errors :

[Fehler] Unit1.pas(645): Inkompatible Typen: 'procedure, untyped pointer or untyped parameter' und 'String'
[Fehler] Unit1.pas(649): Inkompatible Typen: 'procedure, untyped pointer or untyped parameter' und 'String'
[Fehler] Unit1.pas(662): Inkompatible Typen: 'TMsgDlgType' und 'String'
[Fehler] Unit1.pas(663): Undefinierter Bezeichner: 'ShellExecute'
[Fehler] Unit1.pas(663): Undefinierter Bezeichner: 'CurrentDir'
[Fehler] Unit1.pas(669): 'END' erwartet, aber 'ELSE' gefunden
[Fehler] Unit1.pas(672): '.' erwartet, aber ';' gefunden




EDIT : Echte Links entfernt
Marc S.
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#2

Re: Updater Errors :'(

  Alt 7. Okt 2007, 18:45
Hi Berlinermauer,

ich hab deinen Code mal formatiert (Ordnung muss sein ) und dabei gleich den vorletzten Fehler gefunden/berichtigt. Dir fehlte ein "end;" und ein "else" war zuviel ...

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
     TSTREAMONLINEVERSION := TFileStream.Create('./data/OnlineVersion.ini', fmCreate);
     try
        Downloader.Get('http://www.gooooogle.de/Version.ini',TSTREAMONLINEVERSION);
     finally
     end;
     assignfile(Version,'./data/BatchMakerVersion.ini');
     rewrite(Version); // Öffne die Datei für den Schreib-Modus
     ReadLn(Version, ReadenVersion);
     CloseFile(Version);
     assignfile(Versionfrominternet,'./data/OnlineVersion.ini');
     rewrite(Versionfrominternet); // Öffne Datei für den Schreib Modus
     ReadLn(Versionfrominternet,ReadenVersion2);
     CloseFile(Versionfrominternet);
     If ReadenVersion < ReadenVersion2 then // Wenn die Version im Internet neuer ist ...
     begin
          // Frag benutzer nach Aktion und wenn Ja, dann update
          If MessageDlg('Es sind Updates vorhanden ! Sollen diese Jetzt Gedownloadet werden ?', mtConfirmation, [mbyes, mbno], 0) = mrYes then
          begin
               SetupPath := TFileStream.Create('./data/setup.exe', fmCreate);
               try
                  Downloader.Get('http://www.goooogle.de/BatchMaker/setup.exe',SetupPath);
               finally
               SetupPath.Free;
               // Gedownloadet ...
               MessageDlg ('Das Update Wurde Erfolgreich Heruntergeladen ... Der Installer führt sie durch das Update','Erfolg !');
               ShellExecute(Handle, nil, SetupPath, nil, PChar(CurrentDir), SW_NORMAL); // Starte die Setup.exe
               Form1.Close
               end;
          end Else MessageDlg('Abgebrochen. Sie Werden beim nächsten Start von Windows nocheinmal gefragt.', mtInformation, [mbOK], 0)
    end;
end;
"Readln" kannst du nur auf Textdateien anwenden, die ersten beiden Fehler verschwinden, wenn du "File" durch "Text" ersetzt.

Delphi-Quellcode:
var
  Form1: TForm1;
  Version: Text;//File;
  Versionfrominternet: Text;//File;
  ReadenVersion: String;
  ReadenVersion2: String;
  SetupPath: TStream;
  SetUPonlinePath: File;
  TSTREAMONLINEVERSION: TStream;
Die Variable "CurrentDir" kennt er nicht, was soll sie denn beinhalten,
eventuell lässt sie sich durch "ExtractFilePath(Application.exename)" ersetzen.

Hast du die Unit eingebunden, die "ShellExecute" enthält?


Ich hoffe dir geholfen zu haben,

MfG,
Bug
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
Berlinermauer

Registriert seit: 3. Okt 2007
Ort: 0x0000
213 Beiträge
 
Delphi 7 Personal
 
#3

Re: Updater Errors :'(

  Alt 7. Okt 2007, 19:17
@ Current Dir :
das soll er nicht er solls in ./data/setup.exe starten !

und an den Rest THX
Marc S.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Updater Errors :'(

  Alt 7. Okt 2007, 19:20
Eine finally ohne Inhalt bringt auch nix.

Eine Datei mit rewrite zu öffnen und danach readln zu machen bringt auch nix (weil datei ist ja leer)
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Berlinermauer

Registriert seit: 3. Okt 2007
Ort: 0x0000
213 Beiträge
 
Delphi 7 Personal
 
#5

Re: Updater Errors :'(

  Alt 7. Okt 2007, 19:25
wir würde das dann aussehen ? Also wenn die Bugs behoben wären ... das finally bekomm ich ja raus aber wie kann ich das machen ich dachte rewrite öffnet die Datei für den Schreib Modus oder so
Marc S.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Updater Errors :'(

  Alt 7. Okt 2007, 19:32
rewrite legt eine Datei neu and (und löscht die bestehende)
reset öffnet zum lesen und zum schreiben

readln ist aus Datei lesen
writeln in Datei schreiben


Evtl. solltest du besser dir eine hübsche Klasse suchen (Tfilestream oder TInifile)
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Berlinermauer

Registriert seit: 3. Okt 2007
Ort: 0x0000
213 Beiträge
 
Delphi 7 Personal
 
#7

Re: Updater Errors :'(

  Alt 9. Okt 2007, 18:36
So hab ich es jetzt :

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
     TSTREAMONLINEVERSION := TFileStream.Create('./data/OnlineVersion.ini', fmCreate);
     try
        Downloader.Get('http://www.gooogle.de/BatchMaker/Version.ini',TSTREAMONLINEVERSION);
     finally
     end;
     assignfile(Version,'./data/BatchMakerVersion.ini');
     reset(Version); // Öffne die Datei für den Schreib-Modus
     ReadLn(Version, ReadenVersion);
     CloseFile(Version);
     assignfile(Versionfrominternet,'./data/OnlineVersion.ini');
     reset(Versionfrominternet); // Öffne Datei für den Schreib Modus
     ReadLn(Versionfrominternet,ReadenVersion2);
     CloseFile(Versionfrominternet);
     If ReadenVersion < ReadenVersion2 then // Wenn die Version im Internet neuer ist ...
     begin
          // Frag benutzer nach Aktion und wenn Ja, dann update
          If MessageDlg('Es sind Updates vorhanden ! Sollen diese Jetzt Gedownloadet werden ?', mtConfirmation, [mbyes, mbno], 0) = mrYes then
          begin
               SetupPath := TFileStream.Create('./data/setup.exe', fmCreate);
             try
               Downloader.Get('http://www.gooogle.de/BatchMaker/setup.exe',SetupPath);
                // Gedownloadet ...
                  except ShowMessage('Entweder Haben sie Kein Internet oder der Hoster hat mich gekickt ^^;)');
                  // sage dem user dass die datei nicht gedownloaded hat können
                  end;
               ShowMessage('Das Update Wurde Erfolgreich Heruntergeladen ... Der Installer führt sie durch das Update');
               ShellExecute(Handle, nil, SetupPath, nil, PChar('./'), SW_NORMAL); // Starte die Setup.exe
             Form1.Close
               end;
          end Else MessageDlg('Abgebrochen. Sie Werden beim nächsten Start von Windows nocheinmal gefragt.', mtInformation, [mbOK], 0);

          end.
errors:
Zitat:
Erzeugen
[Fehler] Unit1.pas(663): Undefinierter Bezeichner: 'ShellExecute'
[Fehler] Unit1.pas(668): ';' erwartet, aber '.' gefunden
[Fehler] Unit1.pas(673): Deklaration erwartet, aber Dateiende gefunden
[Fataler Fehler] Project1.dpr(6): Verwendete Unit 'Unit1.pas' kann nicht compiliert werden
Marc S.
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#8

Re: Updater Errors :'(

  Alt 9. Okt 2007, 19:39
Hi Berlinermauer,

"ShellExecute" ist in der Unit "shellapi" deklariert.
Hast du die unter "uses" eingetragen.
uses {hier müsste schon eine Menge stehen} ..., shellapi; Desweiteren fehlt vor "end.", das die Unit abschließt, ein "end;", welches die Funktion abschließt.

MfG,
Bug
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
Berlinermauer

Registriert seit: 3. Okt 2007
Ort: 0x0000
213 Beiträge
 
Delphi 7 Personal
 
#9

Re: Updater Errors :'(

  Alt 10. Okt 2007, 16:45
ich Danke euch 1000 Mal Leute ! Luv U ^^

Ihr seid gut achja ich leibe die Smiles und am liebsten den ^^
Marc S.
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#10

Re: Updater Errors :'(

  Alt 10. Okt 2007, 17:07
Und bei Gelegenheit auch mal Delphi-Grundlagen lernen.
  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:57 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