![]() |
Delphi Code - kann den jemand für ne DLL umschreiben
hi Jungs,
also ich hab folgenden Code in meinem Projekt um die Laufwerke (CD LWs. E:\ F:\ u.s.w.) zu erkenennen:
Delphi-Quellcode:
soo kann mir diesen code jetzt jemand umschreiben für eine dll ?
function RefreshDriveList(): string;
var i,typ: Integer; s: string; begin for i:=0 to 25 do begin s := Chr(i + 65) + ':\'; typ := GetDriveType(PChar(s)); if typ = DRIVE_CDROM then form1.ComboBox1.Items.Add(s); end; end; also das ich das vielleicht so aufrufen kann: combobox1.items.add(RefreshDriveList()); geht das ? Also ich will eigentlich nur das ich dass praktisch in ne function hab die ich mit einem befehl aufrufen kann ohne das in der function die laufwerke gesetzt werden, denn in ner dll erkennt der ja die combobox nicht !!! danke im voraus. |
Re: Delphi Code - kann den jemand für ne DLL umschreiben
Moin!
Delphi-Quellcode:
Aufruf:
function RefreshDriveList(DrivesList : TStrings): string;
var i,typ: Integer; s: string; begin for i:=0 to 25 do begin s := Chr(i + 65) + ':\'; typ := GetDriveType(PChar(s)); if typ = DRIVE_CDROM then DrivesList.Add(s); end; end;
Delphi-Quellcode:
MfG
RefreshDriveList(ComboBox1.Items);
Muetze1 |
Re: Delphi Code - kann den jemand für ne DLL umschreiben
Und wenn Du dann noch das Funktionsergebniss änderst kannst Du prüfen ob überhaupt ein CD-ROM vorhanden ist.
Delphi-Quellcode:
Aufruf:
function RefreshDriveList(DrivesList : TStrings): Boolean;
var i,typ: Integer; s: string; b_temp : Boolean; begin b_temp := False; for i:=0 to 25 do begin s := Chr(i + 65) + ':\'; typ := GetDriveType(PChar(s)); if typ = DRIVE_CDROM then begin DrivesList.Add(s); b_temp := True; end; end; result := b_temp; end;
Delphi-Quellcode:
if not (RefreshDriveList(ComboBox1.Items)) then
begin ShowMessage ('Keine CD-ROM Laufwerke gefunden'); end; |
Re: Delphi Code - kann den jemand für ne DLL umschreiben
Das wuerde ich so nicht in einer DLL machen. Es werden Strings in der DLL alloziiert.
Es muss deshalb ShareMem verwendet werden was die DLL Delphi-spezifisch macht. Warum ueberhaupt in der DLL machen? Das ist doch eine simple Funktion die ins Hauptprogramm gehoert. Ich nehme daher an das das ganze Design des Programms mangelhaft ist. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz