vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Wie übergibt man ein UDT-Array? 
Autor: unbekannt
Datum: 21.04.02 12:45

Hi Daniel,

mySCSI ist ja ein UDT-Array .

Sub Main()
    Dim rVal As Long, nUDTPtr As Long
    Dim jn As Integer
    Dim nDrive As Integer
 
    'Zeiger auf UDT-Array
    nUDTPtr = VarPtr(mySCSI_Info(0))
 
    ' WNASPI32.DLL initialisieren
    rVal = InitializeDLL()
    If rVal = 0 Then
       MsgBox "WNASPI32.DLL not present or no SCSI Host Adapters found!", _
         vbCritical, "Abbruch"
       Exit Sub
    End If
 
    ' // scan SCSI Bus for Disk drives and store Disk Drive(s) information and 
    ' amoun of Disk Drives
    ' // also prevent medium removal for all found disk devices
    amount_of_Disk_Devices = ScanSCSI(nUDTPtr, True)
 
    ' // If no Disk Devices were found exit.......
    If amount_of_Disk_Devices = 0 Then
         MsgBox "No SCSI Disk Drives found!", vbExclamation, "Abbruch"
         Exit Sub
    End If
 
    show_devices
 
    ' Im nachfolgenden wird gefragt, ob man eine Image erstellen
    ' will oder eine Image speichern will.
    jn = MsgBox("Wollen Sie eine Image erstellen oder eine Image speichern. " & _
      String(2, vbCrLf) & _
                "Drücken Sie  wenn Sie eine Image erstellen wollen." & vbCrLf & _
                "Drücken Sie  wenn Sie eine Image speichern wollen." & vbCrLf & _
                "Drücken Sie  wenn Sie die Aktion abbrechen wollen", vbQuestion _
                + vbYesNoCancel, "Frage:")
    If jn = vbCancel Then Exit Sub
 
    If jn = vbYes Then 'Image erstellen
       nDrive = InputBox("Bitte geben Sie die Nummer des Laufwerks ein:", _
         "Laufwerkauswahl")
       If nDrive < 0 Or nDrive > amount_of_Disk_Devices Then Exit Sub
 
       ' Im nachfolgenden ist ein Pfad "hardgecodet"
       MakeImage nUDTPtr, nDrive, "C:	est.sdi"
    End If
 
    If jn = vbNo Then 'Image in Drive speichern
       nDrive = InputBox("Bitte die Nummer des Laufwerks an.", "Dateiangabe" & _
         "erwartet")
       If nDrive < 0 Or nDrive > amount_of_Disk_Devices Then Exit Sub
       StoreImage nUDTPtr, nDrive, "C:	est.sdi"
    End If
End Sub
Die Speicheraddresse des UDT-Arrays kann man mit VarPtr() ermitteln - und hoffen,
dass VB das UDT-Array auch tatsächlich an einem Strück im Speicher angelegt hat. Also im Speicherhandling hat C da VB schon einiges voraus

cu
Lordchen
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
DLL aufrufen mit VB48Daniel19.04.02 18:01
Re: DLL aufrufen mit VB229unbekannt19.04.02 19:10
Re: DLL aufrufen mit VB32Daniel19.04.02 20:32
Schicke mir mal den C-Quell247unbekannt19.04.02 20:36
Re: Schicke mir mal den C-Quell31Daniel19.04.02 21:45
Hi Für einen VS-Enterpriser ...208unbekannt19.04.02 21:52
Also:235unbekannt20.04.02 12:39
DANKE !!29Daniel20.04.02 15:13
Also hier die Umsetzung aus C++240unbekannt20.04.02 16:39
Au, die UDT zeigt ja auf long ...214unbekannt20.04.02 17:27
grrr Mouse zu schnell für Lordchen 208unbekannt20.04.02 17:29
Schon wieder DANKE!!31Daniel20.04.02 17:54
Na, es kommen bestimmt Probs .. (oT)196unbekannt20.04.02 18:05
Hast recht !!28Daniel20.04.02 19:34
Re: Hast recht !!195unbekannt21.04.02 01:35
Aber schon einen Sieg zu verzeichnen 198unbekannt21.04.02 01:45
Re: Aber schon einen Sieg zu verzeichnen 39Daniel21.04.02 02:20
Mit etwas, was ich noch nicht mal testen kann? support?212unbekannt21.04.02 02:55
Wie übergibt man ein UDT-Array?280unbekannt21.04.02 12:45
Re: Wie übergibt man ein UDT-Array?45Daniel21.04.02 19:29
Re: Wie übergibt man ein UDT-Array?26Daniel21.04.02 20:26
Womit Du Recht hast,267unbekannt21.04.02 21:22
hmm61Daniel21.04.02 21:53
Ganz einfach:209unbekannt21.04.02 22:30
Re: Ganz einfach:26Daniel21.04.02 22:53
Re: Ganz einfach:25Daniel22.04.02 08:28

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel