ole interface question 
Author Message
 ole interface question

Below is some documentation on integrating an application called
bookwhere through ole.  Bookwhere searches public libraries for books
and other materials.  I am trying to get a handle on how difficult it
would be to integrate my clarion program with bookwhere so that my app
can directly capture data send to it from bookwhere.  From the docs
below can anyone give me some idea of what is involved.
Thanks

An application that implements the BookWhere SendTo interface uses the
SendTo Registration interface to register itself with BookWhere. This
will display the client applciation in the BookWhere SendTo menu. The
interface consists of the following functions:

short Register(LPCTSTR pszProgID, LPCTSTR pszDisplayName) - pszProgID
is the OLE program identifier for the client application,
pszDisplayName is the name that will be displayed in the BookWhere
SendTo menu. The operation is successful if the return value is 0.

short Unregister(LPCTSTR pszProgID) - this call will remove the client
application from the SendTo menu. The operation is successful if the
return value is 0.

short PreferredFormat(LPCTSTR pszProgID,short nPreferredFormat) - this
call will set a preferred record format for the receiving program. The
current values supported for nPreferredFormat are:
0 - no conversion. Records are sent "as is".
1 - Citation7 Format. Records are converted into Citation7 import
format.

// BookWhere 2000 send-to interface implemented by client software

Below is the contents of their sendto.odl file

[ uuid(A07CA0B0-B6FF-11d2-BC93-00A024C2D845), version(1.0) ]
library BookWhereSendToRegistration
{
        importlib("stdole32.tlb");

        [ uuid(5CF098B9-A67A-11D2-BC3D-00A024C2D845) ]
        dispinterface ISendToInterface
        {
                properties:

                methods:
                        [id(1)] short OpenDatabase(BSTR szDatabase);
                        [id(2)] short SendRecord(short recordType,BSTR
recordBuffer, long recordLength);      
        };

        [ uuid(00000000-0000-0000-0000-000000000000) ]
        coclass SendToInterface
        {
                [default] dispinterface ISendToInterface;
        };

Quote:
};



Sun, 11 Apr 2004 22:51:15 GMT  
 ole interface question
the 1st 4 functions are obviously not ole so prototype and call them
the ole part is straight foward and teh cw ole control should not have any
trouble unless the record size is unsually large.
Jim kane


Quote:
> Below is some documentation on integrating an application called
> bookwhere through ole.  Bookwhere searches public libraries for books
> and other materials.  I am trying to get a handle on how difficult it
> would be to integrate my clarion program with bookwhere so that my app
> can directly capture data send to it from bookwhere.  From the docs
> below can anyone give me some idea of what is involved.
> Thanks

> An application that implements the BookWhere SendTo interface uses the
> SendTo Registration interface to register itself with BookWhere. This
> will display the client applciation in the BookWhere SendTo menu. The
> interface consists of the following functions:

> short Register(LPCTSTR pszProgID, LPCTSTR pszDisplayName) - pszProgID
> is the OLE program identifier for the client application,
> pszDisplayName is the name that will be displayed in the BookWhere
> SendTo menu. The operation is successful if the return value is 0.

> short Unregister(LPCTSTR pszProgID) - this call will remove the client
> application from the SendTo menu. The operation is successful if the
> return value is 0.

> short PreferredFormat(LPCTSTR pszProgID,short nPreferredFormat) - this
> call will set a preferred record format for the receiving program. The
> current values supported for nPreferredFormat are:
> 0 - no conversion. Records are sent "as is".
> 1 - Citation7 Format. Records are converted into Citation7 import
> format.

> // BookWhere 2000 send-to interface implemented by client software

> Below is the contents of their sendto.odl file

> [ uuid(A07CA0B0-B6FF-11d2-BC93-00A024C2D845), version(1.0) ]
> library BookWhereSendToRegistration
> {
> importlib("stdole32.tlb");

> [ uuid(5CF098B9-A67A-11D2-BC3D-00A024C2D845) ]
> dispinterface ISendToInterface
> {
> properties:

> methods:
> [id(1)] short OpenDatabase(BSTR szDatabase);
> [id(2)] short SendRecord(short recordType,BSTR
> recordBuffer, long recordLength);
> };

> [ uuid(00000000-0000-0000-0000-000000000000) ]
> coclass SendToInterface
> {
> [default] dispinterface ISendToInterface;
> };
> };



Mon, 12 Apr 2004 08:54:11 GMT  
 ole interface question
I really don't know where to start to prototype the functions.  Can
you point me in the right direction on where I can learn to do this?
Thanks



Quote:
>the 1st 4 functions are obviously not ole so prototype and call them
>the ole part is straight foward and teh cw ole control should not have any
>trouble unless the record size is unsually large.
>Jim kane



>> Below is some documentation on integrating an application called
>> bookwhere through ole.  Bookwhere searches public libraries for books
>> and other materials.  I am trying to get a handle on how difficult it
>> would be to integrate my clarion program with bookwhere so that my app
>> can directly capture data send to it from bookwhere.  From the docs
>> below can anyone give me some idea of what is involved.
>> Thanks

>> An application that implements the BookWhere SendTo interface uses the
>> SendTo Registration interface to register itself with BookWhere. This
>> will display the client applciation in the BookWhere SendTo menu. The
>> interface consists of the following functions:

>> short Register(LPCTSTR pszProgID, LPCTSTR pszDisplayName) - pszProgID
>> is the OLE program identifier for the client application,
>> pszDisplayName is the name that will be displayed in the BookWhere
>> SendTo menu. The operation is successful if the return value is 0.

>> short Unregister(LPCTSTR pszProgID) - this call will remove the client
>> application from the SendTo menu. The operation is successful if the
>> return value is 0.

>> short PreferredFormat(LPCTSTR pszProgID,short nPreferredFormat) - this
>> call will set a preferred record format for the receiving program. The
>> current values supported for nPreferredFormat are:
>> 0 - no conversion. Records are sent "as is".
>> 1 - Citation7 Format. Records are converted into Citation7 import
>> format.

>> // BookWhere 2000 send-to interface implemented by client software

>> Below is the contents of their sendto.odl file

>> [ uuid(A07CA0B0-B6FF-11d2-BC93-00A024C2D845), version(1.0) ]
>> library BookWhereSendToRegistration
>> {
>> importlib("stdole32.tlb");

>> [ uuid(5CF098B9-A67A-11D2-BC3D-00A024C2D845) ]
>> dispinterface ISendToInterface
>> {
>> properties:

>> methods:
>> [id(1)] short OpenDatabase(BSTR szDatabase);
>> [id(2)] short SendRecord(short recordType,BSTR
>> recordBuffer, long recordLength);
>> };

>> [ uuid(00000000-0000-0000-0000-000000000000) ]
>> coclass SendToInterface
>> {
>> [default] dispinterface ISendToInterface;
>> };
>> };



Mon, 12 Apr 2004 22:46:11 GMT  
 ole interface question
Hi Allen!

Quote:
> I really don't know where to start to prototype the functions.  Can
> you point me in the right direction on where I can learn to do this?

Clarion Programmers Guide in the Online Manuals area, Chapters 13 and
14

-- Craig (The Data Ferret)
http://www.pcferret.com/ for RARS, NetClip
http://www.pcferret.com/teletools.html for Telephony
http://www.pcferret.com/gps.html for GPS!
Virtual Access 5.51 build 315 Win98
http://counter.li.org ID #184149
"Do not meddle in the affairs of FERRETS..."



Mon, 12 Apr 2004 21:02:55 GMT  
 ole interface question
I appreciate your response as well as craig's.  I have studied some of
the material in chapters 13 and 14 and am now thoroughly confused.  I
contacted bookwhere and told them I programmed in clarion.  There
response was the following.

the BookWhere SendTo option is implemented fully using the COM ActiveX
(IDispatch) interface.  If this Clarian language can expose COM
Interfaces, then you shouldn't have any problems working with the
SendTo option.

My question is this.  If I start digging into this how long would you
guess something like this would take for me to complete.  Or maybe a
better question would be how long would it take for you to do it.  I
really would like to understand how to do it since once you know how
to interface with other software it opens up a whole new and powerful
world.  On the other hand my abilities could be the whole problem.  I
have been working with clarion for years but I feel that this issue is
quite a new and confusing one.

Thanks for your time.



Quote:
>the 1st 4 functions are obviously not ole so prototype and call them
>the ole part is straight foward and teh cw ole control should not have any
>trouble unless the record size is unsually large.
>Jim kane



>> Below is some documentation on integrating an application called
>> bookwhere through ole.  Bookwhere searches public libraries for books
>> and other materials.  I am trying to get a handle on how difficult it
>> would be to integrate my clarion program with bookwhere so that my app
>> can directly capture data send to it from bookwhere.  From the docs
>> below can anyone give me some idea of what is involved.
>> Thanks

>> An application that implements the BookWhere SendTo interface uses the
>> SendTo Registration interface to register itself with BookWhere. This
>> will display the client applciation in the BookWhere SendTo menu. The
>> interface consists of the following functions:

>> short Register(LPCTSTR pszProgID, LPCTSTR pszDisplayName) - pszProgID
>> is the OLE program identifier for the client application,
>> pszDisplayName is the name that will be displayed in the BookWhere
>> SendTo menu. The operation is successful if the return value is 0.

>> short Unregister(LPCTSTR pszProgID) - this call will remove the client
>> application from the SendTo menu. The operation is successful if the
>> return value is 0.

>> short PreferredFormat(LPCTSTR pszProgID,short nPreferredFormat) - this
>> call will set a preferred record format for the receiving program. The
>> current values supported for nPreferredFormat are:
>> 0 - no conversion. Records are sent "as is".
>> 1 - Citation7 Format. Records are converted into Citation7 import
>> format.

>> // BookWhere 2000 send-to interface implemented by client software

>> Below is the contents of their sendto.odl file

>> [ uuid(A07CA0B0-B6FF-11d2-BC93-00A024C2D845), version(1.0) ]
>> library BookWhereSendToRegistration
>> {
>> importlib("stdole32.tlb");

>> [ uuid(5CF098B9-A67A-11D2-BC3D-00A024C2D845) ]
>> dispinterface ISendToInterface
>> {
>> properties:

>> methods:
>> [id(1)] short OpenDatabase(BSTR szDatabase);
>> [id(2)] short SendRecord(short recordType,BSTR
>> recordBuffer, long recordLength);
>> };

>> [ uuid(00000000-0000-0000-0000-000000000000) ]
>> coclass SendToInterface
>> {
>> [default] dispinterface ISendToInterface;
>> };
>> };



Wed, 14 Apr 2004 06:24:18 GMT  
 ole interface question
yes the send to interface is very easy to call.
register the dll com object with regsvr32 dllname
just create a window
add an ole control - look in the source to find the field equate label -
usually ?ole
in event:openwindow put
?ole{prop:create}=the progid for your control - not in what you have shown
shortReturnValue=?ole{'OpenDatabase("databasename")'}
shortReturnValue=?ole{'SendRecord('&recordtype&',"'&recordbuffer&'",'&record
length&')'}

The most likey return value is -1 for success and 0 for failure but
documentation should say.

should be quite simple for the ole part. the other functions to register are
not ole and a different matter.
Jim Kane



Wed, 14 Apr 2004 07:24:07 GMT  
 
 [ 6 post ] 

 Relevant Pages 

1. how to construct OLE interface classes OR html parsing

2. no ole interface

3. OLE/COM interface

4. Why No OLE automation interface?

5. OLE Automation Interface

6. OLE Interface in BlackBox

7. Querying ActiveX/OLE-interfaces with Object Rexx and rendering them into HTML

8. ObjRexx v2.1 OLE interface to Lotus 123

9. OLE interface doc ?

10. Tcl and COM/SOM/OLE interfaces

11. OLE Invoke withArguments question

12. some OLE questions ...

 

 
Powered by phpBB® Forum Software