AGB  ·  Datenschutz  ·  Impressum  







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

autostart, datei im onCreate Ereignis laden

Ein Thema von uht · begonnen am 26. Sep 2006 · letzter Beitrag vom 27. Sep 2006
Antwort Antwort
uht

Registriert seit: 3. Dez 2005
46 Beiträge
 
Delphi 2005 Personal
 
#1

autostart, datei im onCreate Ereignis laden

  Alt 26. Sep 2006, 21:47
Hallo,

ich habe ein kleines wakeonlan-Tool geschrieben (gibt es zwar schon zu Haufen aber ihr wisst ja, der Lerneffekt...), dass sich in den Autostart eintragen lässt.
Im onCreate Ereignis des Tools lasse ich die ini-Datei mit dem Port und den Listeneinträgen der zu weckenden Rechner laden.
Wenn ich das Tool manuell starte wird die ini-Datei anstandslos geladen und die Werte richtig in die Liste eingetragen usw. ...
Genauso, ohne jegliche Probleme läuft das auch mit dem Autostart auf meinem WinXP Rechner ab, mit dem ich das Programm geschrieben habe. Wenn ich es aber auf meinen Win2000 Rechnern mit dem Autostart laufen lasse, lädt er mir entweder nur die erste Zeile der ini-Datei oder bringt mir gleich eine Zugriffsverletzung. Beim manuellen Start auf den Win2000 Rechnern läuft ebenfalls alles ohne Probleme.

Hat jemand eine Ahnung an was das liegen könnte?
Zum besseren Verständnis hier der Code zum Laden:
Delphi-Quellcode:
procedure Twakemeup.FormCreate(Sender: TObject);
  var datei: textfile;
      dummy: String;
      regist: TRegistry;
  begin
                               // lädt die Einstellungen
    if fileexists(dateiname)then
    begin
      Assignfile(datei,dateiname);
      Reset(datei);

      Readln(datei,dummy);
      EPort.Text:= dummy; // Port auslesen

      while not eof(datei) do // MAC Adressen auslesen
      begin
        Readln(datei,dummy);
        LBRechner.Items.Add(dummy); // und in ListBox eintragen
      end;
      CloseFile(datei);
    end;
  ...
  end;
und anbei noch die .exe mit der ini-Datei zum testen.
Angehängte Dateien
Dateityp: zip wakeonlan_176.zip (276,3 KB, 3x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: autostart, datei im onCreate Ereignis laden

  Alt 26. Sep 2006, 22:11
Welchen Wert enthät die Variable dateiname?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
uht

Registriert seit: 3. Dez 2005
46 Beiträge
 
Delphi 2005 Personal
 
#3

Re: autostart, datei im onCreate Ereignis laden

  Alt 26. Sep 2006, 22:41
dateiname habe ich als Konstante mit dem Wert 'settings.ini' deklariert.

Wenn es hilfreich ist, kann ich auch den ganzen Quelltext posten, ist ja nicht viel und auch kein Geheimnis.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: autostart, datei im onCreate Ereignis laden

  Alt 26. Sep 2006, 22:46
Und woher soll Windows wissen wo sich diese Datei befindet? Seit DOS 2.0 kennt das Betriebssystem eine Verzeichnisstruktur.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
uht

Registriert seit: 3. Dez 2005
46 Beiträge
 
Delphi 2005 Personal
 
#5

Re: autostart, datei im onCreate Ereignis laden

  Alt 26. Sep 2006, 22:56
Oha, daran könnte es liegen.

Aber die settings.ini liegt doch im gleichen Verzeichnis wie die exe, dann ist der Pfad doch egal oder?

Ich probiers gleich morgen früh aus, wenn ich wieder an meinem eigenen Rechner sitze.

Danke
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: autostart, datei im onCreate Ereignis laden

  Alt 26. Sep 2006, 23:16
Nein, ist es eben nicht. Die Datei wird im aktuellen Arbeitsverzeichnis gesucht und wenn du eine Verknüpfung im Autostart hast, ist das das Verzeichnis, wo die Verknüpfung liegt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Cyberbob
Cyberbob

Registriert seit: 24. Jan 2005
Ort: Karben
626 Beiträge
 
Delphi XE7 Architect
 
#7

Re: autostart, datei im onCreate Ereignis laden

  Alt 27. Sep 2006, 01:00
Ich würde die Konstante in eine Variable (Evtl. global) umwandeln und dann oben in deinem OnCreate-Erreignis vollgendes zuweisen:

dateinane := ExtractFileName(ParamStr(0)) + '\settings.ini';

Gruss
Christian
Christian
  Mit Zitat antworten Zitat
uht

Registriert seit: 3. Dez 2005
46 Beiträge
 
Delphi 2005 Personal
 
#8

Re: autostart, datei im onCreate Ereignis laden

  Alt 27. Sep 2006, 17:27
Hat geklappt!

Vielen Dank an euch beide.
  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: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