vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

Visual-Basic Einsteiger
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem) 
Autor: Majuz
Datum: 14.06.09 00:20

Ich bins nochmal....

Ich hab jetzt gemerkt, dass Sektor 0 meines Programms Sektor 251 des anderen Programms entspricht. Also liest er bei dem ersten Aufruf der Funktion "ReadSectorFromDrive" gleich Sektor 251 ein anstatt 0. Woran könnte das liegen?

Hier mal mein Code aus dem Modul:
'Windows-Variablen / Konstanten:
Private Type OVERLAPPED
    Internal                As Long
    InternalHigh            As Long
    offset                  As Long
    OffsetHigh              As Long
    hEvent                  As Long
End Type
Private Const GENERIC_READ = &H80000000
Private Const GENERIC_WRITE = &H40000003
Private Const OPEN_EXISTING = 3
Private Const INVALID_HANDLE_VALUE = -1
Private Const FILE_DEVICE_FILE_SYSTEM = &H9
Private Const METHOD_BUFFERED = 0
Private Const FILE_READ_DATA = (&H1)
Private Const FILE_WRITE_DATA = (&H2)
'API-Deklarationen
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" _
    (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, _
    ByVal dwShareMode As Long, lpSecurityAttributes As Any, _
    ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes _
    As Long, _
    ByVal hTemplateFile As Long) As Long
 
Declare Function ReadFile Lib "kernel32" (ByVal hFile As Long, _
         lpBuffer As Any, ByVal nNumberOfBytesToRead As Long, _
         lpNumberOfBytesRead As Long, ByVal lpOverlapped As Long) As Long
 
Private Declare Function CloseHandle Lib "kernel32" _
    (ByVal hObject As Long) As Long
'Im Modul benötigt:
Dim lngFileHandle As Long       'Handle für Drive
Dim CreateFileError 'Fehler beim Erzeugen des Handles
Dim ReadFileError 'Fehler beim Lesen vom Laufwerk
 
Sub GetDriveHandle(Drivename$)
'muss zuerst aufgerufen werden um Zugang zum Drive zu bekommen
'Fehlervariablen zurücksetzen
CreateFileError = 0
ReadFileError = 0
FileName$ = "\\.\" & Drivename$
lngFileHandle = CreateFile(FileName$, GENERIC_READ Or GENERIC_WRITE, _
  FILE_SHARE_READ, ByVal 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, ByVal 0)
 
    'Bei Fehlschlag aussteigen2
    If (lngFileHandle = INVALID_HANDLE_VALUE) Then
        MsgBox "Invalid handle!"
        CreateFileError = 1
        Exit Sub
    Else
        'MsgBox "File handle:" & Str$(lngFileHandle)
    End If
 
End Sub
 
Sub ReadSectorFromDrive(buffer() As Byte)
'liest 512 Bytes (1 Sektor) in buffer() ein
    If CreateFileError Then
        ReadFileError = 1
        Exit Sub
    End If
 
    retReadFile& = ReadFile(lngFileHandle, buffer(0), 512, BytesRead&, 0&)
    If retReadFile& = 0 Then
        MsgBox "Readfile returns " & Str$(retReadFile&) & vbCrLf & "Read Error!"
        ReadFileError = 1
        Exit Sub
    End If
End Sub
 
Sub CloseDriveHandle()
CloseHandle lngFileHandle
End Sub
Das Schreiben der Sektoren wäre mir eigentlich viel wichtiger. Das lesen bräuchte ich höchstens um das geschriebene zu überprüfen (falls Sektoren defekt sind).
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Sektoren einer SD-Karte beschreiben (ohne Dateisystem)5.477Majuz12.06.09 13:12
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.811Majuz13.06.09 00:28
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.662Majuz14.06.09 00:20
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.502Majuz14.06.09 22:38
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.635Majuz15.06.09 17:35
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.435Majuz16.06.09 20:40
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.529Arne Elster16.06.09 22:00
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.496Arne Elster16.06.09 22:30
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.536Majuz17.06.09 17:54
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.434Majuz18.06.09 08:16
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.424Majuz18.06.09 21:20
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.381Majuz16.06.09 08:22
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.473Agrypnie21.06.09 08:08
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)3.564Majuz21.06.09 10:47
Re: Sektoren einer SD-Karte beschreiben (ohne Dateisystem)2.725NormBot05.03.13 22:48

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-2024 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