English
Source / code snippets

Show Laufwerksdaten system

 

CompileMarkSeparation
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
System: Laufwerksdaten anzeigen
Testprogramm für die Prozedur InfoLaufwerk.
Die Prozedur InfoLaufwerk holt Informationen zu einem Laufwerk (Diskette, Platte, CD ...)
Das Testprogramm liest in eine Bereichsvariable für alle im PC vorhandenen Laufwerke
die Laufwerksbuchstaben ein.
Mit Hilfe der gefundenen Laufwerke werden die Informationen mit der Prozedur gelesen
und pro Laufwerk als Zeile in die Listboxliste übertragen.
Die Anzeige erfolgt in einer Listbox.
Entwickelt unter Profan 7.5 und Windows 2000
----------------------------------------------------------------------------------
Version 1.0  6.06.2005.      Das Programmbeispiel kann frei benutzt werden, für
Schäden kann keine Haftung übernommen werden.
Autor: Gerhard Putschalka
email: g.putschalka@web.de
homepage: http://members.telering.at/g.putschalka/index.html
----------------------------------------------------------------------------------
Declare LaufwerkType$,Laufwerknummer$,Volum-Id$,Dateisystem$,Dateisystem-Flags$
Declare Buf#,Drv$,X%,Y&
Def GetDriveString(2) ! KERNEL32,GetLogicalDriveStringsA
Def GetDriveType(1)   ! KERNEL32,GetDriveTypeA
 $I InfoLaufwerk.inc
die Daten der Laufwerke befinden sich in der Listboxliste. Um die Daten formatiert
anzeigen zu können wird eine Listbox verwendet der Tabulatorstopps zugeordnet werden.

Proc Zeige_die_Daten_an

    Declare Dlg%,LiBox%,EndBut%
    Dlg% = @CreateDialog(%Hwnd,Laufwerksdaten anzeigen,10,10,530,460)
    @CreateText(Dlg%,LW,10,8,35,18)
    @CreateText(Dlg%,Typ,45,8,35,18)
    @CreateText(Dlg%,int. Nummer,80,8,80,18)
    @CreateText(Dlg%,Volume-Id,185,8,80,18)
    @CreateText(Dlg%,DateiSystem,330,8,85,18)
    @CreateText(Dlg%,Flags,440,8,40,18)
    @CreateText(Dlg%,Typ:,10,290,35,18)
    @CreateText(Dlg%,0 =  ???,60,290,150,18)
    @CreateText(Dlg%,1 = no Root directory,60,310,150,18)
    @CreateText(Dlg%,2 = Removable Disk,60,330,150,18)
    @CreateText(Dlg%,3 = Fixed Disk,60,350,150,18)
    @CreateText(Dlg%,4 = Remote drive,60,370,150,18)
    @CreateText(Dlg%,5 = CD-Rom,60,390,150,18)
    @CreateText(Dlg%,6 = RAM Disk,60,410,150,18)
    EndBut% = @CreateButton(Dlg%,Ende,440,290,65,30)
    LiBox% = @CreateListBox(Dlg%,,10,25,500,250)
    setze Tabulatoren in die Listbox
    Dim Buf#,20
    Long Buf#,0 = 20
    Long Buf#,4 = 35
    Long Buf#,8 = 86
    Long Buf#,12 = 170
    Long Buf#,16 = -235  Negativwert: rechtsbündig stellen
    @SendMessage(LiBox%,$0192,5,Buf#)  setze die Tabulatoren
    Dispose Buf#
    übertrage die Listboxliste in die Listbox (inklusive der Tab-Bytes)
    @MoveListToList(LiBox%)

    WhileNot @GetFocus(EndBut%)

        WaitInput

    EndWhile

EndProc

=============
Programmstart
=============
cls
-------------- entweder
ist nur ein bestimmtes Laufwerk auszuwerten so genügen folgende Anweisungen:
Drv$ = C:    wenn die Daten von C: erfaßt werden sollen
InfoLaufwerk Drv$   Aufruf der Prozedur
Die Returnvariable enthält die Daten, durch Tabulatoren getrennt.
holen der einzelnen Werte in Variablen
Drv$   ist unverändert
LaufwerkType$ = @Substring$(@$(0),2,@Chr$(9))
Laufwerknummer$ = @Substring$(@$(0),3,@Chr$(9))
Volum-Id$ = @Substring$(@$(0),4,@Chr$(9))
Dateisystem$ = @Substring$(@$(0),5,@Chr$(9))
Dateisystem-Flags$ = @Substring$(@$(0),6,@Chr$(9))
End
------------ oder
die Daten aller Laufwerke holen und in der Listboxliste sammeln (pro Laufwerk eine Zeile):
die 6 Daten jeder Zeile sind durch Tabulatorbytes getrennt.
Dim Buf#,150
Clear Buf#
Y& = GetDriveString(148,Buf#)  hole alle Laufwerksbuchstaben
ClearList
X% = 0

While (X% < Y&)

    Drv$ = @Left$(@String$(Buf#,X%),2)+
    InfoLaufwerk Drv$  Buchstabe+:   z.B.: C:
    in @$(0) ist der String mit den Daten des Laufwerks Drv$ (Aufbau siehe oben)
    AddString @$(0)  füge die Daten zur Listboxliste hinzu
    X% = (X% + 4)

EndWhile

Dispose Buf#
Zeige_die_Daten_an
End
 
07/15/07  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

no Systemprofil laid out. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Please register circa a Posting To verfassen.
 

Topic-Options

3.434 Views

Untitledvor 0 min.
Julian Schmidt06/30/11

Themeninformationen

this Topic has 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Authors  |  Chat  |  Privacy Policy  |  Download  |  Entrance  |  Help  |  Merchantportal  |  Imprint  |  Mart  |  Interfaces  |  SDK  |  Services  |  Games  |  Search  |  Support

One proposition all XProfan, The there's!


My XProfan
Private Messages
Own Storage Forum
Topics-Remember-List
Own Posts
Own Topics
Clipboard
Log off
 Deutsch English Français Español Italia
Translations

Privacy Policy


we use Cookies only as Session-Cookies because of the technical necessity and with us there no Cookies of Drittanbietern.

If you here on our Website click or navigate, stimmst You ours registration of Information in our Cookies on XProfan.Net To.

further Information To our Cookies and moreover, How You The control above keep, find You in ours nachfolgenden Datenschutzerklärung.


all rightDatenschutzerklärung
i want none Cookie