Einzelnen Beitrag anzeigen

Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#4

AW: IOCTL_SCSI_MINIPORT: Wer weiß, wie?

  Alt 2. Apr 2012, 07:34
Hallo,

vielen Dank für Eure Antworten.
Werde ich gleich mal durchprobieren...

Das wichtigste:
Ich versuche immer noch die Umdrehungsgeschwindigkeit der HD rauszukriegen (, um eine SSD erkennen zu können).
(Mit IOCTL_ATA_PASS_THROUGH, wie empfohlen, packe ich es nicht.) Mit IOCTL_SCSI_MINIPORT soll es gehen. Deshalb heißt die Ausgabe übrigens auch rpm. Aber das hätte ich schreiben sollen. Entschuldigung!

Das obige Beispiel hatte ich in C irgendwo im Netz gefunden. Dort hat es allerdings auch nicht geklappt - nur mit ganz anderen Fehlermeldungen.
Ich finde es aber im Moment nicht wieder, deswegen kein Link.
Da war eine Antwort:
All IOCTL_SCSI_MINIPORT requests must begin with an SRB_IO_CONTROL
structure. That is then followed by the specific data for the request you
are making -- the NVCACHE_REQUEST_BLOCK in this case.

So:
struct {
SRB_IO_CONTROL sic;
NVCACHE_REQUEST_BLOCK nrb;
} request;

The output then contains all of that, plus the NV_FEATURE_PARAMETER:
struct {
SRB_IO_CONTROL sic;
NVCACHE_REQUEST_BLOCK nrb;
NV_FEATURE_PARAMETER nfp;
} request;

Ich habe das mal probiert. Wahrscheinlich habe ich das auch falsch gemacht. Jedenfalls hat es auch nichts gebracht.
Möglich wäre tatsächlich die Mindestgröße des Buffers!

Gruß
Mattze
  Mit Zitat antworten Zitat