Use - Simple DLL

Category: DLLs

Date: 03-28-2012

Return to Index


 
'This snippet shows how to use the simple DLL created in the snippet:  http://gbl_00297
 
'To use exported Subs/Functions from a DLL, you must Declare each Sub/Function.
'See the snippet ".Declare Syntax" for more information on Declare syntax options. http://gbl_00080
 
'Primary Code:
'In this case, there are two functions to Declare. Each has a single Long argument.
Declare Function FlipCoin LIB "gbsnippets_temp.dll" ALIAS "FlipCoin" (uLimit As LongAs Long
Declare Function PleaseWait LIB "gbsnippets_temp.dll" ALIAS "PleaseWait" (hParent as DwordAs Long
'Once Declared, a function is used just like any other function in the application.
 
 
'Compilable Example:
#Compiler PBWin 9, PBWin 10
#Compile EXE
#Dim All
#Include "Win32API.inc"
Declare Function FlipCoin LIB "gbsnippets_temp.dll" ALIAS "FlipCoin" (uLimit As LongAs Long
Declare Function PleaseWait LIB "gbsnippets_temp.dll" ALIAS "PleaseWait" (hDlg as DwordAs Long
Global hDlg as Dword
 
Function PBMain() As Long
   Dialog New Pixels, 0, "Test Code",300,300,200,200, %WS_OverlappedWindow To hDlg
   Control Add Button, hDlg, 100,"Push", 50,10,100,20
   Control Add Label, hDlg, 110,"<result>", 50,40,100,20
   Control Add Button, hDlg, 120,"Push", 50,70,100,20
   Dialog Show Modal hDlg Call DlgProc
End Function
 
CallBack Function DlgProc() As Long
   If CB.Msg = %WM_Command AND CB.Ctl = 100 AND CB.Ctlmsg = %BN_Clicked Then
      Control Set Text hDlg, 110, Str$(FlipCoin(10))      'here, the function FlipCoin() returns a value of 0-10
   End If
   If CB.Msg = %WM_Command AND CB.Ctl = 120 AND CB.Ctlmsg = %BN_Clicked Then
      Local hWait as Dword
      hWait = PleaseWait (hDlg)
      Sleep 2000
      Dialog End hWait
   End If
End Function
 
'gbs_00298
'Date: 03-10-2012


created by gbSnippets
http://www.garybeene.com/sw/gbsnippets.htm