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:

Hardware Frage

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Dorftrottel
gesperrt


Anmeldungsdatum: 23.04.2005
Beiträge: 97
Wohnort: Welt

BeitragVerfasst am: 19.05.2005, 16:08    Titel: Hardware Frage Antworten mit Zitat

Straswudje (Russisch | keine Rechtschreibgarantie),
ich wollt ma fragen ob mir jemand helfen kann.
Ich will in eins meiner Programme einbauen, dass
es die System informationen anzeigt. Also
Zitat:

Festplatte: (Speicher insgesamt u. Freier Speicher)
Prozessor:
Pentium: bzw. Adm Athlon
RAM Speicher:
Laufwerke:


Ich weiß dass sowas mit QB geht.
Ich hab auch irgendwo so ein Programm gesehen aber wo?

(Laufwerke is klar (kann ich auch) aber der Rest???)

Danke vorab.
Dorftrottel
_________________
Euer Dorftrottel!
Unser Name ist unser Auftrag! lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Devilkevin
aka Kerstin


Anmeldungsdatum: 11.11.2004
Beiträge: 2532
Wohnort: nähe Mannheim

BeitragVerfasst am: 19.05.2005, 16:15    Titel: Antworten mit Zitat

Steht alles in der MonsterFAQ ausser die Speicherkapazität einer Festpallte zwinkern
_________________
www.piratenpartei.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Dorftrottel
gesperrt


Anmeldungsdatum: 23.04.2005
Beiträge: 97
Wohnort: Welt

BeitragVerfasst am: 19.05.2005, 16:17    Titel: Antworten mit Zitat

Zitat:

Festpallte

Hä??? lachen

Danke äh nee befor ich mich bedanke Wo in der MinFAQ steht das?
ach und wo krieg ich das mit der FESTPALLTE ( lachen ) her?
_________________
Euer Dorftrottel!
Unser Name ist unser Auftrag! lächeln


Zuletzt bearbeitet von Dorftrottel am 19.05.2005, 16:22, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 19.05.2005, 16:22    Titel: Antworten mit Zitat

Das kannst du dir aus Verschiedenen Quellen zusammensuchen. Für den RAM kannst du z.B. den QB-Eigenen Befehl FRE benutzen (siehe QB-Online-Hilfe).
Unter WinXP (und evtl sogar unter NT) gibts Informationen über den Prozessor in den Systemumgebungsvariablen, die du mit ENVIRON$ abfragen kannst.

Code:
C:\Dokumente und Einstellungen\Hartinger>set
...
NUMBER_OF_PROCESSORS=1
OS=Windows_NT
...
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 6 Model 5 Stepping 2, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=0502
...
USERNAME=Hartinger
...


Für die Festplatteninfos kannst du DIR missbrauchen:
Code:

C:\Dokumente und Einstellungen\Hartinger>dir
 Volume in Laufwerk C: hat keine Bezeichnung.
 Volumeseriennummer: 4053-FDDF

 Verzeichnis von C:\Dokumente und Einstellungen\Hartinger

18.05.2005  21:57    <DIR>          .
18.05.2005  21:57    <DIR>          ..
14.05.2005  11:47    <DIR>          .jdiskreport
26.03.2005  15:40    <DIR>          Application Data
19.05.2005  16:03    <DIR>          Desktop
18.05.2005  23:01    <DIR>          Favoriten
16.04.2005  00:40    <DIR>          Startmenü
30.04.2005  18:35    <DIR>          WINDOWS
               0 Datei(en)              0 Bytes
               8 Verzeichnis(se),    148.926.464 Bytes frei

C:\Dokumente und Einstellungen\Hartinger>


Die letzte Zeile gibt dir genau das aus, was du brauchst.
Nur kann es etwas schwierig werden, aus dem String die Zahl rauszufinden...

Zu den Laufwerken:
dreael hat dazu einmal ein Programm geschrieben, das einen VBS erstellt, der eine Liste der Laufwerke in eine Datei schreibt.
Dieser lässt sich sicher auch so abändern, dass die anderen Informationen ausgegeben werden; man muss dazu nur die entsprechenden Funktionen kennen....
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
A.K.



Anmeldungsdatum: 02.05.2005
Beiträge: 467
Wohnort: HH

BeitragVerfasst am: 19.05.2005, 16:26    Titel: Antworten mit Zitat

wer es gern ein bischen komplizierter haben möchte, hier ein Auszug aus der MonFaq....

Frage:
--------
Wie lese ich die Systeminfos des PCs aus?

Wie kann ich die Folgenden Daten auslesen und anzeigen lassen.

Ram
Festplatte
Betriebsystem
Grafikkarte
Netzwerkkarte
usw..

Antwort:
--------
< von Andre Klein (A.K.) im QB-Forum, 27.5.2003 >

(( SYSINFO.BAS schon in h://qbmonfaq/progs/neu/...; ))


'********************************************************
' SYSINFO.BAS - Anzeige der Systeminfos
' ===========
' Dieses Programm zeigt den konventionellen Speicher,
' Hardwareaustattung (Low), Festplatteninfos und die
' DOS-Version an.
'
' Weil CALL INTERRUPT verwendet wird, ist das Programm
' nur unter QuickBasic, nicht unter QBasic lauffaehig.
' QB muss mit "QB.EXE /L SYSIN FO.BAS" aufgerufen
' werden, um die QLB einzubinden.
'
' Getestet unter Windows 95. Nicht funktionsfaehig
' unter Windows NT4.
'
' (c) von Andre Klein (A.K.), 27.5.2003
'********************************************************
DECLARE SUB SHOW.PARTITIONS ()
DECLARE SUB NUM2BS (num%, bs$)
TYPE regtypex
ax AS INTEGER
bx AS INTEGER
cx AS INTEGER
dx AS INTEGER
bp AS INTEGER
si AS INTEGER
di AS INTEGER
flags AS INTEGER
ds AS INTEGER
es AS INTEGER
END TYPE

DIM SHARED reg AS regtypex

CLS

'konventionellen Speicher rausfinden
CALL interruptx(&H12, reg, reg) 'BIOS-INT
COLOR 12: PRINT "Speicher"
COLOR 7, 0
PRINT "Konventioneller Speicher:"; reg.ax; "KB"
PRINT

COLOR 12: PRINT "Hardware-Ausstattung"
COLOR 7, 0

'Equipment-Check
CALL interruptx(&H11, reg, reg) 'BIOS-INT
DIM ax2 AS LONG
ax2 = CVL(MKI$(reg.ax) + CHR$(0) + CHR$(0))
PRINT "Disks installiert? :"; ((ax2 AND 1)) 'Bit 0
PRINT "80287 installiert(AT):"; ((ax2 AND 2) \ 2) 'Bit 1
PRINT "Speicherb„nke(in KB) :"; (((ax2 AND 12) \ 4) + 1) * 16 'Bits 2-3
PRINT "Video-Modus :"; ((ax2 AND 4cool \ 16) 'Bits 4-5
PRINT "Diskettenlaufwerke :"; ((ax2 AND 192) \ 64) + 1 'Bits 6-7
PRINT "ser. Schnittstellen :"; ((ax2 AND 3584) \ 512) 'Bits 9-11
PRINT "Game-Adapter? :"; ((ax2 AND 4096) \ 4096) 'Bit 12
PRINT "par. Schnittstellen :"; ((ax2 AND 49152) \ 16384) 'Bits 14-15
PRINT

COLOR 12: PRINT "Festplatten-Infos"
COLOR 7, 0
'Festplatteninfos
SHOW.PARTITIONS

'DOS-Version ermitteln
reg.ax = &H3001
CALL interruptx(&H21, reg, reg)
major$ = LTRIM$(STR$((reg.ax AND 255)))
minor$ = LTRIM$(STR$((reg.ax \ 256)))
PRINT "DOS-Version: "; major$; "."; minor$

SUB NUM2BS (num%, bs$)
'Wandelt die Betriebssystem-Nummer in den BS-Text um
bs$ = ""
IF num% = 0 THEN bs$ = "keins"
IF num% = 1 THEN bs$ = "DOS 12-Bit FAT"
IF num% = 2 THEN bs$ = "XENIX root file system"
IF num% = 3 THEN bs$ = "XENIX /usr file system"
IF num% = 4 THEN bs$ = "DOS 16-Bit FAT (max. 32MB)"
IF num% = 5 THEN bs$ = "DOS 3.3+ extended partition"
IF num% = 6 THEN bs$ = "DOS 3.31+ 16-Bit FAT (>32MB)"
IF num% = 7 THEN bs$ = "OS/2 HPFS * UNIX * WIN NT NTFS"
IF num% = 8 THEN bs$ = "AIX boot partition, Splitdrive"
IF num% = 9 THEN bs$ = "AIX Data partition"
IF num% = 10 THEN bs$ = "OS/2 Boot Manager * OPUS"
IF bs$ = "" THEN bs$ = "Vorhanden aber unbekannt"

END SUB

SUB SHOW.PARTITIONS

'Master-Boot-Record der Festplatte lesen (MBR)
dat$ = STRING$(512, CHR$(0))
reg.ax = &H201
reg.dx = &H80 ' &H80 = 1. Harddisk, &H81 = 2. Harddisk...
reg.cx = &H1
reg.es = VARSEG(dat$)
reg.bx = SADD(dat$)
CALL interruptx(&H13, reg, reg)

'Informationen f?r einzelne Partitionen rausfiltern
p1$ = MID$(dat$, 447, 16)
p2$ = MID$(dat$, 463, 16)
p3$ = MID$(dat$, 479, 16)
p4$ = MID$(dat$, 495, 16)

'Aktive Partition rausfinden
IF ASC(MID$(p1$, 1, 1)) = 128 THEN bo1$ = " JA" ELSE bo1$ = "NEIN"
IF ASC(MID$(p2$, 1, 1)) = 128 THEN bo2$ = " JA" ELSE bo2$ = "NEIN"
IF ASC(MID$(p3$, 1, 1)) = 128 THEN bo3$ = " JA" ELSE bo3$ = "NEIN"
IF ASC(MID$(p4$, 1, 1)) = 128 THEN bo4$ = " JA" ELSE bo4$ = "NEIN"

'Betriebssystemkennung in Text umwandeln
NUM2BS ASC(MID$(p1$, 5, 1)), bs$: bs1$ = bs$
NUM2BS ASC(MID$(p2$, 5, 1)), bs$: bs2$ = bs$
NUM2BS ASC(MID$(p3$, 5, 1)), bs$: bs3$ = bs$
NUM2BS ASC(MID$(p4$, 5, 1)), bs$: bs4$ = bs$

'GrӇe der Partitionen berechnen
pl1# = CVL(MID$(p1$, 13, 4)) * 512
pl2# = CVL(MID$(p2$, 13, 4)) * 512
pl3# = CVL(MID$(p3$, 13, 4)) * 512
pl4# = CVL(MID$(p4$, 13, 4)) * 512

'Informationen auf den Bildschirm schreiben
row% = 14
LOCATE 1 + row%, 1: PRINT "Partition Boot Betriebssystem GrӇe(Byte)"
LOCATE 2 + row%, 1: PRINT " 1"
LOCATE 3 + row%, 1: PRINT " 2"
LOCATE 4 + row%, 1: PRINT " 3"
LOCATE 5 + row%, 1: PRINT " 4"
LOCATE 2 + row%, 13: PRINT bo1$: LOCATE 2 + row%, 20: PRINT bs1$: LOCATE 2 + row%, 52: PRINT pl1#
LOCATE 3 + row%, 13: PRINT bo2$: LOCATE 3 + row%, 20: PRINT bs2$: LOCATE 3 + row%, 52: PRINT pl2#
LOCATE 4 + row%, 13: PRINT bo3$: LOCATE 4 + row%, 20: PRINT bs3$: LOCATE 4 + row%, 52: PRINT pl3#
LOCATE 5 + row%, 13: PRINT bo4$: LOCATE 5 + row%, 20: PRINT bs4$: LOCATE 5 + row%, 52: PRINT pl4#
PRINT

END SUB


-------------------------------------------------------------------------------------
_________________

http://forum.IconSoft.de
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU*
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen Yahoo Messenger MSN Messenger
A.K.



Anmeldungsdatum: 02.05.2005
Beiträge: 467
Wohnort: HH

BeitragVerfasst am: 19.05.2005, 16:33    Titel: Antworten mit Zitat

PRINT "Video-Modus :"; ((ax2 AND 4cool \ 16) 'Bits 4-5

muß nicht cool heißen sondern 48 und eine )
_________________

http://forum.IconSoft.de
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU*
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen Yahoo Messenger MSN Messenger
Dorftrottel
gesperrt


Anmeldungsdatum: 23.04.2005
Beiträge: 97
Wohnort: Welt

BeitragVerfasst am: 19.05.2005, 16:35    Titel: Antworten mit Zitat

Bei
Code:

CALL interruptx(&H12, reg, reg)

kommt immer ein Fehler:
Zitat:

Unterprogramm nicht deffiniert


Help
_________________
Euer Dorftrottel!
Unser Name ist unser Auftrag! lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 19.05.2005, 16:38    Titel: Antworten mit Zitat

Dann binde unter QB.PIF -> Eingenschaften -> Befehlszeile mit einem "/L"
hinter der Befehlszeile die QuickLibrary ein.

Erstelle im Zweifelsfalle eine Batchdatei mit dem Inhalt
Code:

@echo off
rem Pfad vom guten alten QB
c:\qbasic\qb.exe /l c:\qbasic\qb.qlb /run prog.bas


jb


Zuletzt bearbeitet von jb am 19.05.2005, 16:40, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
A.K.



Anmeldungsdatum: 02.05.2005
Beiträge: 467
Wohnort: HH

BeitragVerfasst am: 19.05.2005, 16:39    Titel: Antworten mit Zitat

um den Befehl interruptX zu verwenden mußt du QB zusammen mit der QB.QLB starten. (Bibliothek laden)
Soll heißen:
anstatt "QB.EXE" einzugeben, gibst du "QB.EXE /L" ein.
Achte darauf das sich die QB.QLB im gleichen Verzeichnis befindet.

Für weiter Infos zu Bibliotheken: http://www.iconsoft.de/?show=tutorial_libs
_________________

http://forum.IconSoft.de
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU*
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen Yahoo Messenger MSN Messenger
Quark48



Anmeldungsdatum: 16.10.2004
Beiträge: 559
Wohnort: Saltendorf a.d. Naab bzw. Teublitz i.d. Oberpfalz / Bayern

BeitragVerfasst am: 19.05.2005, 17:41    Titel: Antworten mit Zitat

Hallöle!

Also zur Frage "Wie erfahre ich unter DOS, welchen Prozessor ich habe?"


Ich arbeite grade an einem Prozessorinformationsprogramm (Langes Wort durchgeknallt ). Später mal mach ich den Quellcode dafür jedermann zugänglich lächeln
_________________
Grüßle, Stefan lächeln
***
Wenn ein Programm auf nem alten Rechner gut läuft, dann läuft´s auf nem neuen erst recht! happy
Ich habe/hatte keine feste Spange und auch keine Schwester. Der Rest stimmt. Es tut mir leid... :-/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Dorftrottel
gesperrt


Anmeldungsdatum: 23.04.2005
Beiträge: 97
Wohnort: Welt

BeitragVerfasst am: 19.05.2005, 18:14    Titel: Antworten mit Zitat

Danke
_________________
Euer Dorftrottel!
Unser Name ist unser Auftrag! lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht 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 -> Allgemeine Fragen zu QBasic. 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