Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

festplatten auslesen

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
micdah



Anmeldungsdatum: 02.12.2011
Beiträge: 71

BeitragVerfasst am: 04.01.2012, 21:02    Titel: festplatten auslesen Antworten mit Zitat

hier es zeigt einen verschiedene festplatten an :
Code:
CLS

INPUT "welche festplatte soll eingelesen werden ? (z.B.: C <---GROá schreiben! (eingabetaste drcken!))bitte keine cd-/dvd-/disketten oder wechseldatenträger angeben !", fp$

CLS
SELECT CASE fp$

CASE "A": SHELL "dir A:\"

CASE "B": SHELL "dir B:\"

CASE "C": SHELL "dir C:\"

CASE "D": SHELL "dir D:\"

CASE "E": SHELL "dir E:\"

CASE "F": SHELL "dir F:\"

CASE "G": SHELL "dir G:\"

CASE "H": SHELL " dir H:\"

CASE "I": SHELL "dir I:\"

CASE "J": SHELL "dir J:\"

CASE "k": SHELL "dir K:\"

CASE "L": SHELL "dir L:\"

CASE "M": SHELL "dir M:\"

CASE "N": SHELL "dir N:\"

CASE "O": SHELL "dir O:\"

CASE "P": SHELL "dir P:\"

CASE "Q": SHELL "dir Q:\"

CASE "R": SHELL "dir R:\"

CASE "S": SHELL "dir S:\"

CASE "T": SHELL "dir T:\"

CASE "U": SHELL "dir U:\"

CASE "V": SHELL "dir V:\"

CASE "W": SHELL "dir W:\"

CASE "X": SHELL "dir X:\"

CASE "Y": SHELL "dir Y:\"

CASE "Z": SHELL "dir Z:\"

END SELECT


SLEEP

END


noch verbesserungen ?

/edit dreael: Code-Tags bereinigt und das Ganze als normales Diskussionsthema umplatziert.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 04.01.2012, 21:23    Titel: Antworten mit Zitat

hi micdah,
es war sicherlich keine schlechte Idee von KuhBasic auf FB umzusteigen happy
Wenn du dein 'Projekt' mit etwas mehr Inhalt füllen möchtest, findest du im FB-Portal sicherlich noch mehr Ideen als diese:
http://www.freebasic-portal.de/code-beispiele/dateien-laufwerke/belegten-freien-speicherplatz-ermitteln-69.html
Es ist nicht schön für sich selbst Reklame zu machen, aber da wußte ich wenigstens, daß es diesen Code gibt..
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1837
Wohnort: [JN58JR]

BeitragVerfasst am: 04.01.2012, 23:19    Titel: Re: festplatten auslesen Antworten mit Zitat

Du kanst den coe beträchtlich reduzieren, indem du in der select anweisung die elemente kompakter egstaltest.

DU nutzt hierfür einfach die für select mögliche auflistung

Code:

select case asc(string)
    case 1 to 10
end select


das funktioniert jedoch nur mit zahlenwerten.
da du eingaben hast, die von A bis Z sind, kannst du deren ASCII-Code nutzen, um die einschränkung vorzunehmen

A = 65 .... Z = 90

Problematisch wird es, wenn du auch noch Groß udn kleinschreibung beachten möchtest.

du kannst entweder sowohl gros als auch klein aufführen
a = 97 ... z = 122

was dann so aussieht:
Code:

select case asc(string)
    case 65 to 90, 97 to 122
end select


oder du convertierst die eingabe vorher via UCase oder LCase zu gros / klein schreibung

Code:

select case asc(UCase(string))
    case 65 to 90
end select


anschliessend kannst du nach der selektierung des eingabebereiches dein shell aufrufen mit:
Code:

Shell "dir " & String & ":\"


sähe dann in komprimierter version so aus:
Code:

CLS

INPUT "welche festplatte soll eingelesen werden ? (z.B.: C <---GROá schreiben! (eingabetaste drcken!))bitte keine cd-/dvd-/disketten oder wechseldatenträger angeben !", fp$

CLS
SELECT CASE Asc(UCase(fp$))
    case 65 to 90: Shell "dir " & fp$ & ":\"
End Select

SLEEP

END



MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2507
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 05.01.2012, 15:00    Titel: Antworten mit Zitat

Da das Thema in dieser Form klar kein Projekt darstellt (ein solches wäre es erst, wenn Du z.B. eine FUNCTION in einer kleinen Bibliothek bereitstellen würdest, mit der man eine Datei auswählen kann, also "Datei"-"Öffnen..."-Dialog, so dass es jeder hier als Baustein brauchen kann, wenn er irgendwo ein Dateidialog benötigt), habe ich es entsprechend einmal umplatziert.

An dieser Stelle vielleicht ein interessanter MSDN-Link:

http://msdn.microsoft.com/en-us/library/x0s9y250%28v=VS.84%29.aspx

d.h. mit dieser Enumeration kannst Du sämtliche Laufwerke inkl. Typ ermitteln. In QB würde ein kleines .VBS diese Aufgabe lösen, welches eine Laufwerksliste ins %TEMP% hineinschreibt, in FreeBasic können natürlich die passenden Win32-APIs aufgerufen werden.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz