Autor |
Beitrag |
Boldar
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: Sa 27.12.08 20:46
Hallo,
ist das hier
Delphi-Quelltext 1:
| assignfile (f, 'test.irgendwas'); |
Das Gleiche wie
Delphi-Quelltext 1: 2: 3: 4:
| var s: string begin getdir (0, s); assignfile (f, s+test.irgendwas); |
????
Weil bei mir machte es sehr wohl einen Unterschied, aber ich dachte immer es wäre äquivalent??
|
|
jaenicke
      
Beiträge: 19321
Erhaltene Danke: 1749
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Sa 27.12.08 20:50
Meine Standardantwort zu dem Thema ist erstmal dies:
www.delphi-library.d...ewtopic.php?p=499701
Warum du ohne Pfadangabe Probleme bekommst und es eben nicht das selbe ist, siehst du auch in der Demo. Wo nämlich genau ein Problem auftritt ohne dass etwas besonderes gemacht wird.
|
|
Boldar 
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: Sa 27.12.08 20:52
Aber der Getdir-aufruf ermittelt doch auch das arbeitsverzeichnis 
Zuletzt bearbeitet von Boldar am So 28.12.08 15:56, insgesamt 2-mal bearbeitet
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 27.12.08 20:54
Du meinst eher GetCurrentDir, oder? Wobei ich auch nicht schlau daraus werde, was bei Übergabe von 0 an GetDir "Vorgabe" bedeuten soll.
|
|
jaenicke
      
Beiträge: 19321
Erhaltene Danke: 1749
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Sa 27.12.08 20:56
Schau dir mal in Ruhe an was GetDir macht:
www.delphibasics.co.uk/RTL.asp?Name=GetDir
Zitat: | Get the default directory (drive plus path) for a specified drive |
Und deshalb ist es eben nicht das selbe wie wenn du im Arbeitsverzeichnis unterwegs bist.
// EDIT:
Du meinst das was DeddyH meinte:
www.delphibasics.co....p?Name=GetCurrentDir
Und dann ist es in der Tat das selbe.
|
|
Boldar 
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: So 28.12.08 13:03
mmh also ich hab das da her, und die Seite machte bisher einen ganz seriösen Eindruck auf mich... 
|
|
SmileySN
      
Beiträge: 297
WinXP, Win7
Delphi 2010 Professional
|
Verfasst: So 28.12.08 14:03
Das ist soweit auch richtig, solange sich das Default-Laufwerk (0) nicht ändert.
GetDir (DefaultLaufwerk, Pfadname) Wenn 0 im Aufruf von GetDir benutzt wird.
|
|
jaenicke
      
Beiträge: 19321
Erhaltene Danke: 1749
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 28.12.08 14:07
Die 0 benutzt ja das "default drive", das heißt du bekommst so insgesamt das "default directory" auf dem "default drive".
Wie das genau gemeint ist, weiß ich nicht.
Es kann schon sein, dass damit gemeint ist, dass das das Arbeitsverzeichnis zurückgibt, in der Delphi Hilfe steht auch current directory statt default.
Und im Test eben war der Rückgabewert auch gleich dem von GetCurrentDir.
Und die Datei wird so mal gefunden und mal nicht? Bist du sicher, dass das daran liegt und nicht daran, dass sich das Arbeitsverzeichnis geändert hat?
Warum willst du eigentlich nicht auf ein bestimmtes Verzeichnis zugreifen, sondern auf das Arbeitsverzeichnis, das sich ja jederzeit ändern kann?
Du weißt ja nicht wohin das Arbeitsverzeichnis zeigt, es sei denn du setzt es vorher, und dann kannst du genauso gut auch gleich dieses Verzeichnis direkt benutzen.
|
|
Boldar 
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: So 28.12.08 15:56
naja, ich habe das progg 2x mit meinen g-Tasten (Makrotasten) auf der Tastatur verknüpft. Nun habe ich im Treiber jeweils ein unterschiedliches Arbeitsverzeichnis gewählt, sodass das Progg dann eine andere ini benutzt und somit auch was anderes macht...
[Sind die paar Smileys noch erlaubt, Kha??]
|
|
jaenicke
      
Beiträge: 19321
Erhaltene Danke: 1749
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 28.12.08 16:00
Kannst du nicht einfach Parameter an das Programm übergeben? (Die sich mir ParamStr ja leicht auslesen lassen.) 
|
|
Boldar 
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: So 28.12.08 16:01
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 28.12.08 16:03
Eigenschaften der Verknüpfung öffnen und die Parameter unter "Ziel" dahinterschreiben.
Quelltext 1:
| Pfad\Programm.exe /parameter |
|
|
jaenicke
      
Beiträge: 19321
Erhaltene Danke: 1749
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 28.12.08 16:03
Du kannst den Parameter ja in der Verknüpfung angeben.
In den Eigenschaften der Verknüpfung:
Unter Ziel z.B.: Quelltext 1:
| "c:\...\xy.exe" Param1 | ParamStr(1) enthält dann in Delphi den String Param1.
|
|
Boldar 
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: So 28.12.08 16:04
muss man da Param1 inna verknüpfung nich in anführungszeichen setzen? und wie stehts mit Leerzeichen in Parametern??
|
|
jaenicke
      
Beiträge: 19321
Erhaltene Danke: 1749
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 28.12.08 16:05
Wenn der Parameter Leerzeichen enthält, muss er in Anführungszeichen, da sonst die einzelnen Teile als einzelne Parameter ankommen.
|
|
Boldar 
      
Beiträge: 1555
Erhaltene Danke: 70
Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
|
Verfasst: So 28.12.08 16:06
|
|