Programmieren - alles kontrollieren 4.941 Themen, 20.715 Beiträge

DOS-Box kontrolle in VB 6

(Anonym) / 2 Antworten / Baumansicht Nickles

Hi Leute,
ich schreibe ein Programm in Vb 6 das über sendkeys das Menu der Dos Box steuert ( Wird mit Alt-Space aufgerufen)
Nun habe ich festgestellt das je nach Windows Version die Dos Box Menues anders mit Tastatur Befehlen belegt sind.
z.b. Win 98 Markieren = M
und Win 95 Markieren = k
vorher bei beiden natürlich Alt-Space B

Nun meine Frage : Wer weiß welche Windows Version (DOS-Box) mit welchen Tastencodes gesteuert wird.

Vielen Dank im voraus :-)

bei Antwort benachrichtigen
T-Rex (Anonym) „DOS-Box kontrolle in VB 6“
Optionen

Wenn ich Dein Problem richtig verstehe, möchtest Du herausfinden, welche OS-Version läuft und anhand dieser Version die Codes senden.
Ich habe ein kleines VB-Listing mitgesendet. Wenn die Sub erfolgreich
beendet wurde, kannst Du Dir mit dwMajorVersion die Versionsnummer
auslesen. Schon kannst Du die Befehle entsprechend absetzen

Bis denn dann.

T-Rex
--------------------

Option Explicit

Public Enum eOSVersionName
VER_PLATFORM_WIN32S = 0 ' Win32s on Win 3.1
VER_PLATFORM_WIN32_WINDOWS = 1 ' Win32 on Win 95+
VER_PLATFORM_WIN32_NT = 2 ' Win32 on Win NT
End Enum

Private Type tOSVersionInfo
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformID As Long
szCSDVersion(0 To 127) As Byte
End Type

Private OSVersionInfo As tOSVersionInfo

Private Declare Function GetVersionEx Lib "kernel32.dll" Alias "GetVersionExA" _
(lpVersionInfo As tOSVersionInfo) As Boolean

Private Function GetOSVersion() As Integer
' Größe des Datentypes berechnen. WICHTIG für die API!!!
OSVersionInfo.dwOSVersionInfoSize = Len(OSVersionInfo)

' Rückgabewert setzen
If GetVersionEx(OSVersionInfo) Then
GetOSVersion = vbYes
Else
GetOSVersion = vbNo
End If
End Function

 GrüßeT-Rex 
bei Antwort benachrichtigen
(Anonym) Nachtrag zu: „DOS-Box kontrolle in VB 6“
Optionen

Erstmal Danke für die schnelle Hilfe. Trozdem trifft es das Problem nicht ganz. Ich versuche es noch einmal zu erklären.
Mein Problem ist das ich nicht weis welche Windows Version (Build Nr.) welche "Art" DOS-Box Steuerung hat. Windows 98 und 98se sind z.b gleich
Aber irgendwo bei Windows 95a,95b,95c wird ein Unterschied gemacht. Ich weis also nicht ab welcher Windows Version welche DOS Box Steuerung
verwendet wird.
Ich habe aber auch nicht die Möglichkeit mir alle Versionen anzuschauen. Die genaue Buildsnummer lässt sich über API ja ermitteln.
Vieleicht fällt euch ja nochetwas dazu ein.

Danke schon mal :-)

bei Antwort benachrichtigen