Welcome To The Home Of The Visual FoxPro Experts  
home. signup. forum. archives. search. google. articles. downloads. faq. members. weblogs. file info. rss.
 From: Ilya Rabyy
  Where is Ilya Rabyy?
 Fountain Valley
 California - United States
 Ilya Rabyy
 To: onytoo
  Where is onytoo?
 Padang
 Indonesia
 onytoo
 Tags
Subject: RE: declare warning
Thread ID: 310907 Message ID: 311091 # Views: 45 # Ratings: 2
Version: Visual FoxPro 9 Category: Projects and Design
Date: Tuesday, June 28, 2011 6:57:26 PM         
   


> >
> > Hi Martina,
> >
> > trust me, I was test all these possibilities. Just try it itself.
> >
> > There is only one way to get full speed. Declare it at beginning.
> >
> > Martin
>
>
> Yes you right and I agree with you, I have found it my self in my experiences. :)
> But what Martina was pointed is right too, we should use WIN32API alias when possible.
>
>
> Regards,
> Onytoo

There's another point in colleague Martina's post: check if the DLL you need has already been loaded with ADLLS() function. I even wrote a wrapper function specifically for this very purpose. Here it is

***********************************************************************************************************************************
FUNCTION DLL_IsLoaded(tcFunctName)
***********************************************************************************************************************************
** Function Name : DLL (function) Is Loaded
** Purpose       : Checks if the API function in subject has been already declared/loaded.
** Description   : Uses built-in ADLLS() function to place the info on loaded API functions into a local array, and then scans
**                 this array in search for the function name - or the latter's alias name - in subject.
** Parameter(s)  : Sought API function's - or alias' - name as String (by val.): mandatory
** Return        : Success as Boolean.
** Side Effect(s): None.
** Notes:        : 1. Silent.
**                 2. Case insensitive.
** Author	 : Ilya I. Rabyy
** Revisions	 : 
***********************************************************************************************************************************
IF TYPE("tcFunctName") # "C"
   RETURN .F.
ENDIF

LOCAL ARRAY laDLL[1]
LOCAL lcFunctName, lnRet, I

lcFunctName = ALLTRIM(UPPER(tcFunctName))

lnRet = ADLLS(laDLL)

FOR I = 1 TO lnRet
   IF UPPER(laDLL[I, 1]) == lcFunctName .OR. UPPER(laDLL[I, 2]) == lcFunctName && Covers also possible alias name
      EXIT  && FOR...NEXT cycle
   ENDIF
NEXT I

RETURN (I <= lnRet)
ENDFUNC
***********************************************************************************************************************************

HTH.

Regards,

Ilya

ENTIRE THREAD

declare warning Posted by Martin Krivka @ 6/27/2011 7:37:00 AM
RE: declare warning Posted by Martina Jindrov√° @ 6/27/2011 7:58:16 AM
RE: declare warning Posted by Martin Krivka @ 6/27/2011 9:04:43 AM
RE: declare warning Posted by onytoo @ 6/27/2011 8:29:25 PM
RE: declare warning Posted by Ilya Rabyy @ 6/28/2011 6:57:26 PM
RE: declare warning Posted by onytoo @ 6/28/2011 9:27:55 PM
RE: declare warning Posted by Ilya Rabyy @ 6/29/2011 11:38:01 PM
RE: declare warning Posted by onytoo @ 6/30/2011 9:18:57 AM
RE: declare warning Posted by Martin Krivka @ 6/28/2011 9:29:38 PM
RE: declare warning Posted by onytoo @ 6/28/2011 9:41:42 PM
RE: declare warning Posted by Martin Krivka @ 6/28/2011 10:19:09 PM
RE: declare warning Posted by Ilya Rabyy @ 6/29/2011 11:42:56 PM
RE: declare warning Posted by Martin Krivka @ 6/30/2011 8:46:05 AM
RE: declare warning Posted by Ilya Rabyy @ 6/30/2011 4:34:36 PM
RE: declare warning Posted by Martin Krivka @ 6/30/2011 5:20:37 PM
RE: declare warning Posted by Ilya Rabyy @ 6/30/2011 6:21:06 PM
RE: declare warning Posted by onytoo @ 6/30/2011 10:14:51 PM
RE: declare warning Posted by Ilya Rabyy @ 6/30/2011 10:45:55 PM
RE: declare warning Posted by onytoo @ 7/1/2011 12:13:20 AM
RE: declare warning Posted by Samir H. @ 7/1/2011 5:53:19 AM
RE: declare warning Posted by onytoo @ 7/1/2011 10:59:04 AM
RE: declare warning Posted by Ilya Rabyy @ 7/1/2011 4:37:50 PM
RE: declare warning Posted by onytoo @ 7/1/2011 7:35:38 PM
RE: declare warning Posted by Mike Yearwood @ 7/1/2011 2:31:27 AM
RE: declare warning Posted by Cetin Basoz @ 6/28/2011 11:02:20 AM
RE: declare warning Posted by Martin Krivka @ 6/28/2011 12:09:38 PM
RE: declare warning Posted by onytoo @ 6/28/2011 12:15:01 PM
RE: declare warning Posted by Samir H. @ 6/28/2011 2:17:07 PM
RE: declare warning Posted by Martin Krivka @ 6/28/2011 3:41:05 PM
RE: declare warning Posted by Cetin Basoz @ 6/28/2011 4:15:06 PM
RE: declare warning Posted by Martin Krivka @ 6/28/2011 9:18:29 PM
RE: declare warning Posted by onytoo @ 6/30/2011 9:28:04 AM