Frage

Ich entwickle ein Script mit VBScript und ich brauche die Eingabedatei als ein 16-Bit BMP zu validieren.

Zu der Zeit, mein Skript ist wie folgt aus:

Const OverwriteExisting = TRUE

Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "C:\16bmp.bmp" , "D:\test.bmp", OverwriteExisting

Aber wie kann ich die Eingabedatei als 16-Bit BMP validieren?



PS:. Denken Sie daran, dass ich mit meiner Website und Windows CE kompatibel zu sein (ich werde ein Programm entwickeln, um es mit NSBasic)

War es hilfreich?

Lösung

Ich bin sicher, dass nicht ich habe Sie richtig (Englisch meine zweite Sprache ist), aber wenn Sie überprüfen müssen, ob eine Datei ist ein 16-Bit-BMP-Bild (und nicht die tatsächlichen Pixel überprüfen), können Sie Gebrauch machen das Windows Image Acquisition (WIA) Scripting-Objekte. Hier ein Beispiel:

Const wiaIDUnknown = "{00000000-0000-0000-0000-000000000000}"
Const wiaFormatBMP = "{B96B3CAB-0728-11D3-9D7B-0000F81EF32E}"

Set oImg = CreateObject("Wia.ImageFile")

On Error Resume Next

oImg.LoadFile("C:\image.bmp")

If oImg.FormatID = wiaIDUnknown Then
  ' The file isn't an image file
Else
  Log.Message "Is BMP: " & (oImg.FormatID = wiaFormatBMP)
  Log.Message "Color depth: " & oImg.PixelDepth
End If

Dieses Skript setzt voraus, dass Sie die wiaaut.dll Bibliothek installiert und auf Ihrem Computer registriert; wenn Sie es nicht haben, können Sie es als Teil der WIA SDK .

Siehe auch WIA Dokumentation auf MSDN.

Andere Tipps

würden Sie haben die Dateidaten lesen und vergleichen Sie es mit der BMP-Format-Spezifikation .

Es gibt drei Möglichkeiten, die ich von zu Arbeit weiß mit binären Dateien in VBScript:

  1. die Komponente ADODB verwenden. Diese Methode ist eine Art beschränkt. Sie können einen Artikel über ihn unter Google-Suche und fand einige fertigter Komponenten, die diese Funktionalität.
  2. bieten
  3. Sie können auch installieren ImageMagick und es verwenden, die BMP zu identifizieren. Das könnte für Ihre Zwecke sein Overkill though.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top