[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

Simple API Question

Posted on 2003-11-20
5
Medium Priority
?
196 Views
Last Modified: 2010-05-01
I am using an API for some mail server software.  I dont have much experience of VB APIs and the documentation with the API is poor.  I have managed to get some stuff working but I dont understand it.

The API is Decalred as follows:

Public Declare Function AddDomain Lib "api" (ByVal Name As String, ByRef Buffer As Any, ByVal Size As Long) As Long

I understand that the Function returns a Long with 0 indicating sucess and any other number indicating an error message.  I understand that Name is the domain name to add.  What I dont understand is what the Buffer is and what the keyword Any means.  The code below does work I just dont understand the buffer stuff.  Any explanations please?

    Dim abBuffer(1 To 1024) As Byte
   
    MsgBox (AddDomain("psllllllsssasdasdsadsoo.homeip.net", abBuffer(1), 1024))
0
Comment
Question by:daveamour
  • 3
  • 2
5 Comments
 
LVL 4

Accepted Solution

by:
Steve Sirica earned 200 total points
ID: 9789051
Sometimes API functions have types/structures associated with them.  They would look something like this:
type xxx
    zzz as string
    qqq as string
end type

Any might be one of these...Do you see anything like that in the documentation?
0
 
LVL 19

Author Comment

by:daveamour
ID: 9789093
I dont see anything like that for this particular function (AddDomain).  I do understand what you mean though.  Am I right in thinking the buffer can be used to pass data in and to receive data back?  That makes sense to me, I guess I was just confused since this seems redundant with the AddDomain function which seems to only return a Long to indicate success or failure.

Does this sound right?

Dave
0
 
LVL 4

Expert Comment

by:Steve Sirica
ID: 9789153
Hard to answer without knowing the API, but I have seen functions that return data in one of the parms.

So I guess my asnswer is Yes...it sounds on track.
0
 
LVL 19

Author Comment

by:daveamour
ID: 9789180
AhhI think you are right.  I think before you call the AddDomain function you can optionally populate the buffer with data representing various parameters and settings for the domain name.

Got there in the end!

Thanks

Dave
0
 
LVL 4

Expert Comment

by:Steve Sirica
ID: 9789195
You're welcome.

Steve
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Suggested Courses

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question