1,105,312 Community Members

What is "Private Declare Function ....."?

Member Avatar
RahulV
Junior Poster in Training
92 posts since Jun 2007
Reputation Points: 16 [?]
Q&As Helped to Solve: 0 [?]
Skill Endorsements: 0 [?]
 
0
 
Private Declare Function Function_Name Lib "user32" () As Datatype

I've found such lines used in many VB6 projects and tutorials.
What is it? What actually is this used for? Are there more such function? How to find out more such function/properties?
A detail explanation will be helpful and highly appreciated.
Thank you.

(Is it calling read-only or some library functions or properties?)

Member Avatar
SlyMaelstrom
Newbie Poster
21 posts since Oct 2005
Reputation Points: 5 [?]
Q&As Helped to Solve: 2 [?]
Skill Endorsements: 0 [?]
 
0
 
Private Declare Function Function_Name Lib "user32" () As Datatype

I've found such lines used in many VB6 projects and tutorials.
What is it? What actually is this used for? Are there more such function? How to find out more such function/properties?
A detail explanation will be helpful and highly appreciated.
Thank you.

(Is it calling read-only or some library functions or properties?)

It's declaring a function from an external library to be used in the current class or module. Private tells the compiler (or interpreter) that you want the sub procedure or function to be defined for the current class or module only. That is to say, other classes or modules in the project may not access it. Declare states to the interpreter that the sub procedure or function is defined later in the class or module or in an external class or module. Function, of course is a function. That is to say, a procedure that returns a value. The function name is self explanitory. Lib states where the function is defined, which is seen in quotes followed by the term. In this case, it would be in "user32." and the rest is all standard syntax for a function declaration.

You can get references for any external libraries online if you use the right search terms. Here is a refererence for user32.dll as used in your statement. Another popular library to reference is shell32.dll.

Member Avatar
vb5prgrmr
Posting Virtuoso
1,670 posts since Mar 2009
Reputation Points: 143 [?]
Q&As Helped to Solve: 299 [?]
Skill Endorsements: 3 [?]
 
0
 

Otherwise known as API. Application Programming Interface. If you have VB 6.0 SP?, then you can access the API view via the vb interface or design environment buy the menu item Add-Ins...

Click on Add-Ins and if you do not see an entry in the sub menu that says API Viewer then goto Add-In Manager.
It takes a moment for it to come up but look for the entry in the list that says VB 6 API Viewer.
Highlight it and then check the checkbox that says Loaded/Unloaded. (My option is to also check the Load On Startup)
Click OK.

Now, go back to the menu item, Add-Ins, and you should now see an entry for API Viewer in the sub menu.
Select it.

In a moment another dialog appears.
Goto File>Load Text File.
The Common dialog open appears and you should see three files listed.
Select WIN32API.TXT
In a moment it should load with API declarations, constants, and types that you can use to extend the functionality of your program.

Good Luck

You
This article has been dead for over three months: Start a new discussion instead
Post:
Start New Discussion
Tags Related to this Article