Solved

Simple API Question

Posted on 2003-11-20
5
188 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 50 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

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

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…
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

863 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

Need Help in Real-Time?

Connect with top rated Experts

27 Experts available now in Live!

Get 1:1 Help Now