タイトル | : Susieプラグインの使用 |
記事No | : 10947 |
投稿日 | : 2012/11/07(Wed) 15:49 |
投稿者 | : わかな |
こんにちは。vb.net(2005)にてSusieプラグインを使用した画像表示を行なおうと考えています。 ある参考サイトの記載を少し変えて以下の記述を行なったのですが、どうも上手くいきません。
Susieプラグインは「ifgif.spi」を使用。gifファイルはvbで元々扱えますが これが成功してから他の画像拡張子を試そうと考えております。 また、とりあえずは画像表示ではなく画像サイズの取得から行なってみようとしております。
ご教授お願いできないでしょうか。
Option Explicit On Public Class Form1 Private Structure BITMAPINFOHEADER Dim biSize As Long Dim biWidth As Long Dim biHeight As Long Dim biPlanes As Integer Dim biBitCount As Integer Dim biCompression As Long Dim biSizeImage As Long Dim biXPelsPerMeter As Long Dim biYPelsPerMeter As Long Dim biClrUsed As Long Dim biClrImportant As Long End Structure
Private Declare Sub MoveMemory Lib "kernel32" Alias "RtlMoveMemory" (ByVal dest As BITMAPINFOHEADER, ByVal Source As Long, ByVal length As Long) Private Declare Function LocalFree Lib "kernel32" (ByVal MemHandle As Long) As Long Private Declare Function LocalLock Lib "kernel32" (ByVal MemHandle As Long) As Long Private Declare Function LocalUnlock Lib "kernel32" (ByVal MemHandle As Long) As Long Private Declare Function GetPicture Lib "ifgif.spi" (ByVal FileSTR As String, ByVal OffSet As Long, ByVal Mode As Integer, ByVal MemoryHandle As Long, ByVal InfoHandle As Long, ByVal CallBack As Long, ByVal CallBackLong As Long) As Integer
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim BitMapMemoryHandle As Long Dim BitMapInf As Long Dim LocalMemoryBMP As Long Dim LocalMemoryInf As Long Dim BitMapHeader As BITMAPINFOHEADER
'test.gifと言う名称の256×256サイズの画像 GetPicture("D:\test\test.gif", 0, 0, BitMapMemoryHandle, BitMapInf, 0, 0)
LocalMemoryBMP = LocalLock(BitMapMemoryHandle) 'メモリのロック LocalMemoryInf = LocalLock(BitMapInf)
MoveMemory(BitMapHeader, LocalMemoryBMP, Len(BitMapHeader)) 'メモリ移動
'とりあえずは画像表示ではなくサイズを取得してみようとしてますが、取得数値は0になってしまう。 Dim size As Integer = BitMapHeader.biHeight Debug.Print(test)
LocalUnlock(BitMapMemoryHandle) 'メモリロック解除 LocalUnlock(BitMapInf)
LocalFree(BitMapMemoryHandle) 'メモリ開放 LocalFree(BitMapInf) End Sub
|