----boundary-LibPST-iamunique-1975042579_-_-
Content-type: text/plain
Gunnar,
I believe Oberon Microsystems has a tool that (partly) automates
the process of generating the interface module. You should
contact them.
-Doug Danforth
On 12/7/2010 9:24 AM, gunnar bernhardt (VDI) wrote:
Dear all,
the documentation states that 'Any 32-bit DLL can be imported in
Component Pascal...'. As far as I understand this refers to COM dlls.
This task is fairly simply with GPCP:
1) Run TlbImp.exe (from the .NET SDK) on the Dll or preferably the
corresponding type library (tlb).
2) Run PeToCps.exe (from gpcp).
-> The dll which is created in the first step will translate the calls
to the COM-dll at runtime using InteropServices. This affects runtime
performance but works like a charm.
I suppose there is no possibility to do something comparable within
Blackbox?
Have you perhaps used a semi-automated approach? If so, did you use
C++ headers, IDL files or something different?
The documentation states:
'Be careful to declare all methods in the method table in the correct
order with the correct parameter list.'
Does that mean you can not omit parts of an interface?
kind regards
gunnar
----
To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy
---- To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy
----boundary-LibPST-iamunique-1975042579_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbWh0bWwxIFxkZWZmMHtcZm9udHRibA0Ke1xmMFxm
c3dpc3NcZmNoYXJzZXQwIEFyaWFsO30NCntcZjFcZm1vZGVybiBDb3VyaWVyIE5ldzt9DQp7XGYy
XGZuaWxcZmNoYXJzZXQyIFN5bWJvbDt9DQp7XGYzXGZtb2Rlcm5cZmNoYXJzZXQwIENvdXJpZXIg
TmV3O319DQp7XGNvbG9ydGJsXHJlZDBcZ3JlZW4wXGJsdWUwO1xyZWQwXGdyZWVuMFxibHVlMjU1
O30NClx1YzFccGFyZFxwbGFpblxkZWZ0YWIzNjAgXGYwXGZzMjQgDQp7XCpcaHRtbHRhZzI0MyA8
IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwv
L0VOIj59DQp7XCpcaHRtbHRhZzMgXHBhciB9DQp7XCpcaHRtbHRhZzE5IDxodG1sPn0NCntcKlxo
dG1sdGFnMiBccGFyIH0NCntcKlxodG1sdGFnMjQyICAgfQ0Ke1wqXGh0bWx0YWczNCA8aGVhZD59
DQp7XCpcaHRtbHRhZzEgXHBhciB9DQp7XCpcaHRtbHRhZzI0MSAgICAgfQ0Ke1wqXGh0bWx0YWcx
IFxwYXIgfQ0Ke1wqXGh0bWx0YWcyNDEgICB9DQp7XCpcaHRtbHRhZzQxIDwvaGVhZD59DQp7XCpc
aHRtbHRhZzIgXHBhciB9DQp7XCpcaHRtbHRhZzI0MiAgIH0NCntcKlxodG1sdGFnNTAgPGJvZHkg
dGV4dD0iIzAwMDAwMCIgYmdjb2xvcj0iI2ZmZmZmZiI+fVxodG1scnRmIFx2aWV3a2luZDUNCntc
KlxiYWNrZ3JvdW5kIHtcc2hwe1wqXHNocGluc3R7XHNwe1xzbiBmaWxsQ29sb3J9e1xzdiAxNjc3
NzIxNX19e1xzcHtcc24gZkZpbGxlZH17XHN2IDF9fX19fVxodG1scnRmMCANCntcKlxodG1sdGFn
MCBccGFyIH0NCntcKlxodG1sdGFnMjQwICAgICB9e1wqXGh0bWx0YWc2NH1caHRtbHJ0ZiB7XGh0
bWxydGYwIEd1bm5hciwNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1s
cnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnODQgICAgIH1JIGJlbGlldmUg
T2Jlcm9uIE1pY3Jvc3lzdGVtcyBoYXMgYSB0b29sIHRoYXQgKHBhcnRseSkgYXV0b21hdGVzDQp7
XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAgDQp7XCpcaHRtbHRh
ZzQgXHBhciB9DQp7XCpcaHRtbHRhZzg0ICAgICB9dGhlIHByb2Nlc3Mgb2YgZ2VuZXJhdGluZyB0
aGUgaW50ZXJmYWNlIG1vZHVsZS4NCntcKlxodG1sdGFnODQgJm5ic3A7fVxodG1scnRmIFwnYTBc
aHRtbHJ0ZjAgIFlvdSBzaG91bGQNCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUN
ClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnODQgICAgIH1jb250
YWN0IHRoZW0uDQp7XCpcaHRtbHRhZzExNiA8YnI+fVxodG1scnRmIFxsaW5lDQpcaHRtbHJ0ZjAg
DQp7XCpcaHRtbHRhZzQgXHBhciB9DQp7XCpcaHRtbHRhZzg0ICAgICB9LURvdWcgRGFuZm9ydGgN
CntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1s
dGFnNCBccGFyIH0NCntcKlxodG1sdGFnODQgICAgIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0
bWxydGYgXGxpbmUNClxodG1scnRmMCANCntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFn
ODQgICAgIH0NCntcKlxodG1sdGFnMTE2IDxicj59XGh0bWxydGYgXGxpbmUNClxodG1scnRmMCAN
CntcKlxodG1sdGFnNCBccGFyIH0NCntcKlxodG1sdGFnODQgICAgIH1PbiAxMi83LzIwMTAgOToy
NCBBTSwgZ3VubmFyIGJlcm5oYXJkdCAoVkRJKSB3cm90ZToNCntcKlxodG1sdGFnNCBccGFyIH1c
aHRtbHJ0ZiAgXGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc4NCAgICAgfXtcKlxodG1sdGFnNzJ9XGh0
bWxydGZccGFyfVxodG1scnRmMA0KDQp7XCpcaHRtbHRhZzk2IDxibG9ja3F1b3RlXHBhciAgICAg
ICBjaXRlPSJtaWQ6QkxBQ0tCT1glMjUyMDEwMTIwNzE4MjQxMDg0NTAuMDA1RUBMSVNUUy5PQkVS
T04uQ0giXHBhciAgICAgICB0eXBlPSJjaXRlIj59XGh0bWxydGYgXHBhcg0Ke1xodG1scnRmMCAN
CntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnMjQwICAgICAgIH0NCntcKlxodG1sdGFn
MTI4IDxwcmUgd3JhcD0iIj59XGh0bWxydGYge1xwYXJkXHBsYWluXGYxXGZzMjAgXGh0bWxydGYw
IFxodG1scnRmIHtcaHRtbHJ0ZjAgXGxpMzYwIERlYXIgYWxsLFxsaW5lDQpcbGluZQ0KdGhlIGRv
Y3VtZW50YXRpb24gc3RhdGVzIHRoYXQgJ0FueSAzMi1iaXQgRExMIGNhbiBiZSBpbXBvcnRlZCBp
blxsaW5lDQogQ29tcG9uZW50IFBhc2NhbC4uLicuIEFzIGZhciBhcyBJIHVuZGVyc3RhbmQgdGhp
cyByZWZlcnMgdG8gQ09NIGRsbHMuXGxpbmUNClxsaW5lDQpUaGlzIHRhc2sgaXMgZmFpcmx5IHNp
bXBseSB3aXRoIEdQQ1A6XGxpbmUNCjEpIFJ1biBUbGJJbXAuZXhlIChmcm9tIHRoZSAuTkVUIFNE
Sykgb24gdGhlIERsbCBvciBwcmVmZXJhYmx5IHRoZVxsaW5lDQogY29ycmVzcG9uZGluZyB0eXBl
IGxpYnJhcnkgKHRsYikuXGxpbmUNCjIpIFJ1biBQZVRvQ3BzLmV4ZSAoZnJvbSBncGNwKS5cbGlu
ZQ0KLQ0Ke1wqXGh0bWx0YWc4NCAmZ3Q7fVxodG1scnRmID5caHRtbHJ0ZjAgIFRoZSBkbGwgd2hp
Y2ggaXMgY3JlYXRlZCBpbiB0aGUgZmlyc3Qgc3RlcCB3aWxsIHRyYW5zbGF0ZSB0aGUgY2FsbHNc
bGluZQ0KIHRvIHRoZSBDT00tZGxsIGF0IHJ1bnRpbWUgdXNpbmcgSW50ZXJvcFNlcnZpY2VzLiBU
aGlzIGFmZmVjdHMgcnVudGltZVxsaW5lDQogcGVyZm9ybWFuY2UgYnV0IHdvcmtzIGxpa2UgYSBj
aGFybS5cbGluZQ0KXGxpbmUNCkkgc3VwcG9zZSB0aGVyZSBpcyBubyBwb3NzaWJpbGl0eSB0byBk
byBzb21ldGhpbmcgY29tcGFyYWJsZSB3aXRoaW5cbGluZQ0KIEJsYWNrYm94P1xsaW5lDQpcbGlu
ZQ0KSGF2ZSB5b3UgcGVyaGFwcyB1c2VkIGEgc2VtaS1hdXRvbWF0ZWQgYXBwcm9hY2g/IElmIHNv
LCBkaWQgeW91IHVzZVxsaW5lDQogQysrIGhlYWRlcnMsIElETCBmaWxlcyBvciBzb21ldGhpbmcg
ZGlmZmVyZW50PyBcbGluZQ0KXGxpbmUNClxsaW5lDQpUaGUgZG9jdW1lbnRhdGlvbiBzdGF0ZXM6
IFxsaW5lDQonQmUgY2FyZWZ1bCB0byBkZWNsYXJlIGFsbCBtZXRob2RzIGluIHRoZSBtZXRob2Qg
dGFibGUgaW4gdGhlIGNvcnJlY3RcbGluZQ0KIG9yZGVyIHdpdGggdGhlIGNvcnJlY3QgcGFyYW1l
dGVyIGxpc3QuJyBcbGluZQ0KRG9lcyB0aGF0IG1lYW4geW91IGNhbiBub3Qgb21pdCBwYXJ0cyBv
ZiBhbiBpbnRlcmZhY2U/IFxsaW5lDQpcbGluZQ0KXGxpbmUNCmtpbmQgcmVnYXJkc1xsaW5lDQpn
dW5uYXJcbGluZQ0KXGxpbmUNClxsaW5lDQotLS0tXGxpbmUNClRvIHVuc3Vic2NyaWJlLCBzZW5k
IGEgbWVzc2FnZSB3aXRoIGJvZHkgIlNJR05PRkYgQkxBQ0tCT1giIHRvIHt9DQp7XCpcaHRtbHRh
Zzg0IDxhIGNsYXNzPSJtb3otdHh0LWxpbmstYWJicmV2aWF0ZWQiIGhyZWY9Im1haWx0bzpMSVNU
U0VSVkBMSVNUUy5PQkVST04uQ0giPn1caHRtbHJ0ZiB7XGZpZWxke1wqXGZsZGluc3R7SFlQRVJM
SU5LICJtYWlsdG86TElTVFNFUlZATElTVFMuT0JFUk9OLkNIIn19e1xmbGRyc2x0XGNmMVx1bCBc
aHRtbHJ0ZjAgTElTVFNFUlZATElTVFMuT0JFUk9OLkNIXGh0bWxydGYgfVxodG1scnRmMCBcaHRt
bHJ0ZiB9XGh0bWxydGYwIA0Ke1wqXGh0bWx0YWc5MiA8L2E+fVxsaW5lDQpcbGluZQ0KXHBhclxo
dG1scnRmfVxodG1scnRmMA0KDQp7XCpcaHRtbHRhZzEzNiA8L3ByZT59XGh0bWxydGYgfVxodG1s
cnRmMCANCntcKlxodG1sdGFnMCBccGFyIH0NCntcKlxodG1sdGFnMjQwICAgICB9DQp7XCpcaHRt
bHRhZzEwNCA8L2Jsb2NrcXVvdGU+fVxodG1scnRmIH1ccGFyDQpcaHRtbHJ0ZjAgDQp7XCpcaHRt
bHRhZzAgXHBhciB9DQp7XCpcaHRtbHRhZzI0MCAgIH0NCntcKlxodG1sdGFnNTggPC9ib2R5Pn0N
CntcKlxodG1sdGFnMiBccGFyIH0NCntcKlxodG1sdGFnMjcgPC9odG1sPn0NCntcKlxodG1sdGFn
MyBccGFyIH0NCntcKlxodG1sdGFnNjQgPHA+fVxodG1scnRmIHtcaHRtbHJ0ZjAgDQp7XCpcaHRt
bHRhZzQgXHBhciB9LS0tLQ0Ke1wqXGh0bWx0YWc0IFxwYXIgfVxodG1scnRmICBcaHRtbHJ0ZjAg
VG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBtZXNzYWdlIHdpdGggYm9keSAiU0lHTk9GRiBCTEFDS0JP
WCIgdG8gTElTVFNFUlZATElTVFMuT0JFUk9OLkNIDQp7XCpcaHRtbHRhZzQgXHBhciB9XGh0bWxy
dGYgIFxodG1scnRmMCBcaHRtbHJ0Zn19AG1pdCBwYXJ0cyBvZiBh
----boundary-LibPST-iamunique-1975042579_-_---
Received on Tue Dec 07 2010 - 22:55:09 UTC