user defined type not defined error help please 
Author Message
 user defined type not defined error help please

Can you help a newbie out please, I got the following code from
vb2themax.com. it works great if I start a simple project with just a
command button, and image box. but when I tried to add it to an existing
project I get user defined type not defined error. at

Private Declare Function OleCreatePictureIndirect Lib "olepro32.dll" _

(lpPictDesc As PICTDESC, riid As Any, ByVal fOwn As Long, _

ipic As IPicture) As Long

could someone please tell me why it is happening and how to correct this
error thank you

Option Explicit

Private Type RECT

    Left As Long

    Top As Long

    Right As Long

    Bottom As Long

End Type

Private Type PICTDESC

    cbSize As Long

    pictType As Long

    hIcon As Long

    hPal As Long

End Type

Private Declare Function OleCreatePictureIndirect Lib "olepro32.dll" _

(lpPictDesc As PICTDESC, riid As Any, ByVal fOwn As Long, _

ipic As IPicture) As Long

Private Declare Function GetDesktopWindow Lib "user32" () As Long

Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hDC As Long)
As _

Long

Private Declare Function CreateCompatibleBitmap Lib "gdi32" (ByVal hDC As
Long, _

ByVal nWidth As Long, ByVal nHeight As Long) As Long

Private Declare Function SelectObject Lib "gdi32" (ByVal hDC As Long, _

ByVal hObject As Long) As Long

Private Declare Function BitBlt Lib "gdi32" (ByVal hDCDest As Long, _

ByVal XDest As Long, ByVal YDest As Long, ByVal nWidth As Long, _

ByVal nHeight As Long, ByVal lScreenDC As Long, ByVal XSrc As Long, _

ByVal YSrc As Long, ByVal dwRop As Long) As Long

Private Declare Function DeleteDC Lib "gdi32" (ByVal hDC As Long) As Long

Private Declare Function GetWindowDC Lib "user32" (ByVal hWnd As Long) As
Long

Private Declare Function ReleaseDC Lib "user32" (ByVal hWnd As Long, _

ByVal hDC As Long) As Long

Private Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, _

lpRect As RECT) As Long

' Capture the contents of a window or the entire screen

Function GetScreenSnapshot(Optional ByVal hWnd As Long) As IPictureDisp

Dim targetDC As Long

Dim hDC As Long

Dim tempPict As Long

Dim oldPict As Long

Dim wndWidth As Long

Dim wndHeight As Long

Dim Pic As PICTDESC

Dim rcWindow As RECT

Dim guid(3) As Long

' provide the right handle for the desktop window

If hWnd = 0 Then hWnd = GetDesktopWindow

' get window's size

GetWindowRect hWnd, rcWindow

wndWidth = rcWindow.Right - rcWindow.Left

wndHeight = rcWindow.Bottom - rcWindow.Top

' get window's device context

targetDC = GetWindowDC(hWnd)

' create a compatible DC

hDC = CreateCompatibleDC(targetDC)

' create a memory bitmap in the DC just created

' the has the size of the window we're capturing

tempPict = CreateCompatibleBitmap(targetDC, wndWidth, wndHeight)

oldPict = SelectObject(hDC, tempPict)

' copy the screen image into the DC

BitBlt hDC, 0, 0, wndWidth, wndHeight, targetDC, 0, 0, vbSrcCopy

' set the old DC image and release the DC

tempPict = SelectObject(hDC, oldPict)

DeleteDC hDC

ReleaseDC GetDesktopWindow, targetDC

' fill the ScreenPic structure

With Pic

.cbSize = Len(Pic)

.pictType = 1 ' means picture

.hIcon = tempPict

.hPal = 0 ' (you can omit this of course)

End With

' convert the image to a IpictureDisp object

' this is the IPicture GUID {7BF80980-BF32-101A-8BBB-00AA00300CAB}

' we use an array of Long to initialize it faster

guid(0) = &H7BF80980

guid(1) = &H101ABF32

guid(2) = &HAA00BB8B

guid(3) = &HAB0C3000

' create the picture,

' return an object reference right into the function result

OleCreatePictureIndirect Pic, guid(0), True, GetScreenSnapshot

End Function



Sun, 19 Dec 2004 01:26:47 GMT  
 user defined type not defined error help please
PICTDESC is a user-defined type that must have been present in the previous
example.

--

Randy Birch
MVP Visual Basic
http://www.mvps.org/vbnet/
Please respond only to the newsgroups so all can benefit.


Quote:
> Can you help a newbie out please, I got the following code from
> vb2themax.com. it works great if I start a simple project with just a
> command button, and image box. but when I tried to add it to an existing
> project I get user defined type not defined error. at

> Private Declare Function OleCreatePictureIndirect Lib "olepro32.dll" _

> (lpPictDesc As PICTDESC, riid As Any, ByVal fOwn As Long, _

> ipic As IPicture) As Long

> could someone please tell me why it is happening and how to correct this
> error thank you

> Option Explicit

> Private Type RECT

>     Left As Long

>     Top As Long

>     Right As Long

>     Bottom As Long

> End Type

> Private Type PICTDESC

>     cbSize As Long

>     pictType As Long

>     hIcon As Long

>     hPal As Long

> End Type

> Private Declare Function OleCreatePictureIndirect Lib "olepro32.dll" _

> (lpPictDesc As PICTDESC, riid As Any, ByVal fOwn As Long, _

> ipic As IPicture) As Long

> Private Declare Function GetDesktopWindow Lib "user32" () As Long

> Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hDC As
Long)
> As _

> Long

> Private Declare Function CreateCompatibleBitmap Lib "gdi32" (ByVal hDC As
> Long, _

> ByVal nWidth As Long, ByVal nHeight As Long) As Long

> Private Declare Function SelectObject Lib "gdi32" (ByVal hDC As Long, _

> ByVal hObject As Long) As Long

> Private Declare Function BitBlt Lib "gdi32" (ByVal hDCDest As Long, _

> ByVal XDest As Long, ByVal YDest As Long, ByVal nWidth As Long, _

> ByVal nHeight As Long, ByVal lScreenDC As Long, ByVal XSrc As Long, _

> ByVal YSrc As Long, ByVal dwRop As Long) As Long

> Private Declare Function DeleteDC Lib "gdi32" (ByVal hDC As Long) As Long

> Private Declare Function GetWindowDC Lib "user32" (ByVal hWnd As Long) As
> Long

> Private Declare Function ReleaseDC Lib "user32" (ByVal hWnd As Long, _

> ByVal hDC As Long) As Long

> Private Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, _

> lpRect As RECT) As Long

> ' Capture the contents of a window or the entire screen

> Function GetScreenSnapshot(Optional ByVal hWnd As Long) As IPictureDisp

> Dim targetDC As Long

> Dim hDC As Long

> Dim tempPict As Long

> Dim oldPict As Long

> Dim wndWidth As Long

> Dim wndHeight As Long

> Dim Pic As PICTDESC

> Dim rcWindow As RECT

> Dim guid(3) As Long

> ' provide the right handle for the desktop window

> If hWnd = 0 Then hWnd = GetDesktopWindow

> ' get window's size

> GetWindowRect hWnd, rcWindow

> wndWidth = rcWindow.Right - rcWindow.Left

> wndHeight = rcWindow.Bottom - rcWindow.Top

> ' get window's device context

> targetDC = GetWindowDC(hWnd)

> ' create a compatible DC

> hDC = CreateCompatibleDC(targetDC)

> ' create a memory bitmap in the DC just created

> ' the has the size of the window we're capturing

> tempPict = CreateCompatibleBitmap(targetDC, wndWidth, wndHeight)

> oldPict = SelectObject(hDC, tempPict)

> ' copy the screen image into the DC

> BitBlt hDC, 0, 0, wndWidth, wndHeight, targetDC, 0, 0, vbSrcCopy

> ' set the old DC image and release the DC

> tempPict = SelectObject(hDC, oldPict)

> DeleteDC hDC

> ReleaseDC GetDesktopWindow, targetDC

> ' fill the ScreenPic structure

> With Pic

> .cbSize = Len(Pic)

> .pictType = 1 ' means picture

> .hIcon = tempPict

> .hPal = 0 ' (you can omit this of course)

> End With

> ' convert the image to a IpictureDisp object

> ' this is the IPicture GUID {7BF80980-BF32-101A-8BBB-00AA00300CAB}

> ' we use an array of Long to initialize it faster

> guid(0) = &H7BF80980

> guid(1) = &H101ABF32

> guid(2) = &HAA00BB8B

> guid(3) = &HAB0C3000

> ' create the picture,

> ' return an object reference right into the function result

> OleCreatePictureIndirect Pic, guid(0), True, GetScreenSnapshot

> End Function



Sun, 19 Dec 2004 02:56:15 GMT  
 user defined type not defined error help please
Actually I found out to I had reference the ole automation then it to work
to find but thanks for the help


Quote:
> PICTDESC is a user-defined type that must have been present in the
previous
> example.

> --

> Randy Birch
> MVP Visual Basic
> http://www.mvps.org/vbnet/
> Please respond only to the newsgroups so all can benefit.



> > Can you help a newbie out please, I got the following code from
> > vb2themax.com. it works great if I start a simple project with just a
> > command button, and image box. but when I tried to add it to an existing
> > project I get user defined type not defined error. at

> > Private Declare Function OleCreatePictureIndirect Lib "olepro32.dll" _

> > (lpPictDesc As PICTDESC, riid As Any, ByVal fOwn As Long, _

> > ipic As IPicture) As Long

> > could someone please tell me why it is happening and how to correct this
> > error thank you

> > Option Explicit

> > Private Type RECT

> >     Left As Long

> >     Top As Long

> >     Right As Long

> >     Bottom As Long

> > End Type

> > Private Type PICTDESC

> >     cbSize As Long

> >     pictType As Long

> >     hIcon As Long

> >     hPal As Long

> > End Type

> > Private Declare Function OleCreatePictureIndirect Lib "olepro32.dll" _

> > (lpPictDesc As PICTDESC, riid As Any, ByVal fOwn As Long, _

> > ipic As IPicture) As Long

> > Private Declare Function GetDesktopWindow Lib "user32" () As Long

> > Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hDC As
> Long)
> > As _

> > Long

> > Private Declare Function CreateCompatibleBitmap Lib "gdi32" (ByVal hDC
As
> > Long, _

> > ByVal nWidth As Long, ByVal nHeight As Long) As Long

> > Private Declare Function SelectObject Lib "gdi32" (ByVal hDC As Long, _

> > ByVal hObject As Long) As Long

> > Private Declare Function BitBlt Lib "gdi32" (ByVal hDCDest As Long, _

> > ByVal XDest As Long, ByVal YDest As Long, ByVal nWidth As Long, _

> > ByVal nHeight As Long, ByVal lScreenDC As Long, ByVal XSrc As Long, _

> > ByVal YSrc As Long, ByVal dwRop As Long) As Long

> > Private Declare Function DeleteDC Lib "gdi32" (ByVal hDC As Long) As
Long

> > Private Declare Function GetWindowDC Lib "user32" (ByVal hWnd As Long)
As
> > Long

> > Private Declare Function ReleaseDC Lib "user32" (ByVal hWnd As Long, _

> > ByVal hDC As Long) As Long

> > Private Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long,
_

> > lpRect As RECT) As Long

> > ' Capture the contents of a window or the entire screen

> > Function GetScreenSnapshot(Optional ByVal hWnd As Long) As IPictureDisp

> > Dim targetDC As Long

> > Dim hDC As Long

> > Dim tempPict As Long

> > Dim oldPict As Long

> > Dim wndWidth As Long

> > Dim wndHeight As Long

> > Dim Pic As PICTDESC

> > Dim rcWindow As RECT

> > Dim guid(3) As Long

> > ' provide the right handle for the desktop window

> > If hWnd = 0 Then hWnd = GetDesktopWindow

> > ' get window's size

> > GetWindowRect hWnd, rcWindow

> > wndWidth = rcWindow.Right - rcWindow.Left

> > wndHeight = rcWindow.Bottom - rcWindow.Top

> > ' get window's device context

> > targetDC = GetWindowDC(hWnd)

> > ' create a compatible DC

> > hDC = CreateCompatibleDC(targetDC)

> > ' create a memory bitmap in the DC just created

> > ' the has the size of the window we're capturing

> > tempPict = CreateCompatibleBitmap(targetDC, wndWidth, wndHeight)

> > oldPict = SelectObject(hDC, tempPict)

> > ' copy the screen image into the DC

> > BitBlt hDC, 0, 0, wndWidth, wndHeight, targetDC, 0, 0, vbSrcCopy

> > ' set the old DC image and release the DC

> > tempPict = SelectObject(hDC, oldPict)

> > DeleteDC hDC

> > ReleaseDC GetDesktopWindow, targetDC

> > ' fill the ScreenPic structure

> > With Pic

> > .cbSize = Len(Pic)

> > .pictType = 1 ' means picture

> > .hIcon = tempPict

> > .hPal = 0 ' (you can omit this of course)

> > End With

> > ' convert the image to a IpictureDisp object

> > ' this is the IPicture GUID {7BF80980-BF32-101A-8BBB-00AA00300CAB}

> > ' we use an array of Long to initialize it faster

> > guid(0) = &H7BF80980

> > guid(1) = &H101ABF32

> > guid(2) = &HAA00BB8B

> > guid(3) = &HAB0C3000

> > ' create the picture,

> > ' return an object reference right into the function result

> > OleCreatePictureIndirect Pic, guid(0), True, GetScreenSnapshot

> > End Function



Sun, 19 Dec 2004 06:34:46 GMT  
 
 [ 3 post ] 

 Relevant Pages 

1. Help!!-NEWBIE - Application Wizard -(WROX BOOK) Error- User defined type not defined

2. Help!!-NEWBIE - Application Wizard -(WROX BOOK) Error- User defined type not defined

3. Compile Error: User-defined type not defined

4. Compile Error - User defined type not defined

5. Compile Error - User-Defined type not defined

6. User-Defined type not defined error (MAPI.Session)

7. Compile error: User-defined data type not defined!

8. User-Defined type not defined error (MAPI.Session)

9. ComctlLib; compiler error: User-defined type not defined

10. Error: User-defined type not defined

11. Compile error: User-defined type not defined

12. Compiler Error: User-defined type not defined

 

 
Powered by phpBB® Forum Software