Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 07.11.2004, 22:54 Titel: Frage zu Beispiel aus der MonFAQ - Läuft Windows? |
|
|
Hallo.
Die MonsterFAQ hat Folgendes geschrieben: | Mit dem folgenden Programm kann man sogar die Windows-Version ermitteln:
Code: | If WindowsActive%=4.00 Then PRINT "Windows 95"
If WindowsActive%=4.10 Then PRINT "Windows 98"
'
FUNCTION WindowsActive%
DIM Asm AS STRING * 13
MID$(Asm, 1, 5) = CHR$(184) + MKI$(5632) + CHR$(205) + CHR$(47)
MID$(Asm, 6, 5) = CHR$(104) + MKI$(VARSEG(AX)) + CHR$(31) + CHR$(163)
MID$(Asm, 11, 3) = MKI$(VARPTR(AX)) + CHR$(203)
DEF SEG = VARSEG(Asm): CALL ABSOLUTE(VARPTR(Asm)): DEF SEG
IF (AX AND &HFF <> 0) AND (AX AND &HFF <> &H80) AND (AX <> &H1600) THEN
WindowsActive% = ((AX AND &HFF) * 100) + AX \ 256
END IF
END FUNCTION |
|
Was liefert der Code bei reinem DOS zurück?
Viele Grüße!
Sebastian
PS:
BTW: Bei Win 3.1 müsste er doch auch 3.1 zurückliefern, oder? _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 08.11.2004, 22:40 Titel: Re: Danke! |
|
|
Sebastian hat Folgendes geschrieben: | Jaja, bei Interrupts & Co. kann man immer auf dreael zählen |
CALL INTERRUPT ist immer eine feine Sache, denn IBM seinerzeit bei IBM PC/XT und Microsoft haben nun einmal den Software-Interrupt als Schnittstelle und Aufrufmechanismus für Betriebssystem-Routinen festgelegt.
Für mich ist halt ein Betriebssystem-Kernel immer wie eine Bibliothek, zwar eine etwas spezielle, mit einer riesigen Fülle an Routinen. Mit jeder neuen DOS- und Windows-Version hat Microsoft wieder neue APIs hinzugefügt.
Ein gewisser Teil wird durch die internen QB-Befehle abgedeckt; würde man jedoch QB.EXE disassemblieren, so ist dort schlussendlich ein bestimmter Befehl auch nur eingekapseltes CALL INTERRUPT auf Assemblerebene. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
luckyfreddy
Anmeldungsdatum: 02.09.2004 Beiträge: 78 Wohnort: Erkrath-Hochdahl (b. Düsseldorf)
|
Verfasst am: 10.11.2004, 20:00 Titel: |
|
|
Und was ist es nun? Also ich mein, wenn man sich hier der Suchfunktion bemüht ist es vielleicht hilfreich, wenn diese Antwort hier drin steht?! _________________ Gegen Kummer, Angst und Depressionen: Kummerboard.com
Freiwillige Helfer sind gern gesehen! Alles ehrenamtlich! |
|
Nach oben |
|
|
|