Question

Je développe un script en utilisant VBScript et je dois valider le fichier d'entrée en 16 bits BMP.

Au moment où mon script est comme ceci:

Const OverwriteExisting = TRUE

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

Mais comment puis-je valider le fichier d'entrée en BMP 16 bits?



PS: Rappelez-vous que j'ai besoin que cela soit compatible avec mon site et Windows CE (je développerai un programme à l'aide NSBasic)

.
Était-ce utile?

La solution

Je ne suis pas sûr que je vous ai droit (l'anglais étant ma langue seconde), mais si vous devez vérifier si un fichier est une image BMP 16 bits (et non vérifier les pixels réels), vous pouvez utiliser les objets de script Windows image Acquisition (WIA). Voici un exemple:

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

Ce script nécessite que vous ayez wiaaut.dll bibliothèque installée et enregistrée sur votre ordinateur; si vous ne l'avez pas, vous pouvez le télécharger dans le cadre de la WIA SDK .

Voir aussi WIA documentation sur MSDN.

Autres conseils

Vous devez lire les données du fichier et le comparer à la spécification de format BMP .

Il y a trois façons que je connais pour travailler avec des fichiers binaires dans VBScript:

  1. Utilisation du composant ADODB. Cette méthode est une sorte de limite. Vous pouvez trouver un article à ce sujet à Google recherche et trouvé quelques ready-made composants qui offrent cette fonctionnalité.
  2. Vous pouvez également installer ImageMagick et l'utiliser pour identifier le BMP. Cela pourrait être surpuissant pour vos bien.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top