https://github.com/yvt/xpcom-mono-interop-test
https://github.com/yvt/xpcom-mono-interop-test
component-object-model interop mono xpcom
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/yvt/xpcom-mono-interop-test
- Owner: yvt
- Created: 2017-03-13T17:40:21.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-03-15T18:33:31.000Z (about 9 years ago)
- Last Synced: 2026-01-15T16:16:10.195Z (5 months ago)
- Topics: component-object-model, interop, mono, xpcom
- Language: Makefile
- Size: 9.77 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
XPCOM-Mono Interop Test
=======================
Playing around with XPCOM for some awesome new project
Only tested on macOS. [Gecko SDK](https://developer.mozilla.org/en-US/docs/Mozilla/Gecko/Gecko_SDK) is required to build this program.
Example Output
--------------
```
$ mono ManagedApplication.exe
entering CLInitialize (native)
nsMyService::nsMyService (native)
leaving CLInitialize (native)
entering nsMyService::Hoge(nullptr) (native)
leaving nsMyService::Hoge (native)
entering nsMyService::Hoge(non-nullptr) (native)
MyService.Hoge (managed)
leaving nsMyService::Hoge (native)
nsMyService::~nsMyService (native)
```
References
----------
- Mono, "[`cominterop.c`](https://github.com/mono/mono/blob/master/mono/metadata/cominterop.c)"
- Mono, "[*COM Interop*](http://www.mono-project.com/docs/advanced/com-interop/)"
- Mozilla Developer Network, "[*Gecko SDK*](https://developer.mozilla.org/en-US/docs/Mozilla/Gecko/Gecko_SDK)"
- Mozilla Developer Network, "[*Creating the Component Code*](https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Guide/Creating_components/Creating_the_Component_Code#Creating_an_Instance_of_Your_Component)"