AGB  ·  Datenschutz  ·  Impressum  







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

LB_DIR

Ein Thema von City Light · begonnen am 1. Jul 2003 · letzter Beitrag vom 3. Jul 2003
Thema geschlossen
Seite 1 von 2  1 2      
Benutzerbild von City Light
City Light

Registriert seit: 17. Sep 2002
314 Beiträge
 
#1

LB_DIR

  Alt 1. Jul 2003, 22:46
Hallo @ll

Folgender Code funktioniert nicht unter Windows ME nicht...
Delphi-Quellcode:
var
  path: string;
begin
  path:='C:\Eigene Dateien\Eigene Programme\' + '*.*';
  ListBox1.Perform(LB_DIR, DDL_READWRITE, LongInt(@path[1]));
Unter Windows XP geht er aber nur unter ME nicht ich vermute mal das es sich wegen diesen Format 8.5 oder so handelt also...C:\Programme ist gleich C:\Prog~1

wie bekomme ich das nun gebacken das es auch unter MS Windows ME geht
Bis bald man liest sich
Tino
 
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2
  Alt 2. Jul 2003, 00:55
Moin Tino,

da ich mit Perform schon schlechte Erfahrungen gemacht habe, probier's doch erst einmal ersatzweise direkt mit SendMessage, vielleicht hilft das schon.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
 
Benutzerbild von City Light
City Light

Registriert seit: 17. Sep 2002
314 Beiträge
 
#3
  Alt 2. Jul 2003, 10:35
Morgen

Damit geht es leider auch nicht...die Verzeichnis namen sind zu lang!
Ich weiß im Moment leider auch nicht mehr weiter.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  path: string;
begin
  path:='C:\Eigene Dateien\Eigene Programme';
  SendMessage(ListBox1.Handle,LB_DIR,DDL_READWRITE,lParam(PChar(path+'\*.*')));
end;
Bis bald man liest sich
Tino
 
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#4
  Alt 2. Jul 2003, 13:29
Moin Tino,

eine Idee noch:
(mangels ME kann ich das leider immer nicht ausprobieren)

probier's mal mit:

Code:
path:=[color=red]'"'+[/color]'C:\Eigene Dateien\Eigene Programme'[color=red]+'"'[/color];
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
 
Benutzerbild von City Light
City Light

Registriert seit: 17. Sep 2002
314 Beiträge
 
#5
  Alt 2. Jul 2003, 15:35
Leider half das auch nicht weiter...
Bis bald man liest sich
Tino
 
Marco Haffner
(Gast)

n/a Beiträge
 
#6
  Alt 2. Jul 2003, 20:40
Existiert auf dem Windows ME Rechner auch der Ordner C:\Eigene Dateien\Eigene Programme?

Und übrigens, 8.3: 8 Zeichen für den Namen, 3 für die Erweiterung.
 
Benutzerbild von City Light
City Light

Registriert seit: 17. Sep 2002
314 Beiträge
 
#7
  Alt 2. Jul 2003, 23:00
Zitat von Marco Haffner:
Existiert auf dem Windows ME Rechner auch der Ordner C:\Eigene Dateien\Eigene Programme?
Hallo Marco

Ja er Existiert!

habe Ihn selbst angelegt, dass Problem ist das LB_DIR mit dem Format 8.3 (danke für den tipp)zumindest unter MS Windows ME (soweit ich weiß) nicht um gehen kann.
Bis bald man liest sich
Tino
 
Marco Haffner
(Gast)

n/a Beiträge
 
#8
  Alt 2. Jul 2003, 23:30
Zitat von City Light:
Ja er Existiert!
Dann ist gut.

Ich habe grad' mal nachgesehen, LB_DIR arbeitet in der tat unter Windows 95/98/ME nur mit kurzen Dateinamen, naja, mußt Du halt erst den Pfad mit GetShortPathName in einen kurzen Pfad umwandeln.
 
Benutzerbild von City Light
City Light

Registriert seit: 17. Sep 2002
314 Beiträge
 
#9
  Alt 2. Jul 2003, 23:46
hmm...haste du vieleicht ein Beispiel wie man das mit GetShortPathName(path,??? ,???); umgeht wer dir wirklich dankbar.
Bis bald man liest sich
Tino
 
Marco Haffner
(Gast)

n/a Beiträge
 
#10
  Alt 3. Jul 2003, 00:07
Bitte sehr:
Delphi-Quellcode:
function ShortFileName(const Path: string): PChar;
var
  Tmp: array[0..MAX_PATH + 1] of Char;
begin
  if (GetShortPathName(PChar(Path), Tmp, SizeOf(Tmp) - 1) = 0) then
    Result := PChar(Path)
  else
    Result := Tmp;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  Path: string;
begin
  Path := 'C:\Eigene Dateien\Eigene Programme\*.*';
  SendMessage(ListBox1.Handle, LB_DIR, DDL_READWRITE, lParam(ShortFileName(Path)));
end;
 
Thema geschlossen
Seite 1 von 2  1 2      


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 13:37 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