• Home
  • History
  • Annotate
  • only in this directory
Name Date Size

..11-Jan-20224 KiB

.github/H11-Jan-20224 KiB

.travis.ymlH A D11-Jan-202270

_example/H11-Jan-20224 KiB

appveyor.ymlH A D11-Jan-20221.3 KiB

build/H11-Jan-20224 KiB

ChangeLog.mdH A D11-Jan-20221.9 KiB

com.goH A D11-Jan-202210.8 KiB

com_func.goH A D11-Jan-20225.3 KiB

com_func_test.goH A D11-Jan-20223.8 KiB

com_test.goH A D11-Jan-20223.4 KiB

connect.goH A D11-Jan-20224.3 KiB

connect_test.goH A D11-Jan-20222.7 KiB

connect_windows_test.goH A D11-Jan-20223.2 KiB

constants.goH A D11-Jan-20223.5 KiB

data/H11-Jan-20224 KiB

error.goH A D11-Jan-20221.3 KiB

error_func.goH A D11-Jan-2022119

error_windows.goH A D11-Jan-2022650

go.modH A D11-Jan-2022102

go.sumH A D11-Jan-2022207

guid.goH A D11-Jan-20227.9 KiB

guid_test.goH A D11-Jan-20226.1 KiB

iconnectionpoint.goH A D11-Jan-2022434

iconnectionpoint_func.goH A D11-Jan-2022450

iconnectionpoint_windows.goH A D11-Jan-2022864

iconnectionpointcontainer.goH A D11-Jan-2022354

iconnectionpointcontainer_func.goH A D11-Jan-2022280

iconnectionpointcontainer_windows.goH A D11-Jan-2022501

idispatch.goH A D11-Jan-20222.9 KiB

idispatch_func.goH A D11-Jan-2022473

idispatch_windows.goH A D11-Jan-20226.4 KiB

idispatch_windows_test.goH A D11-Jan-202217.8 KiB

ienumvariant.goH A D11-Jan-2022289

ienumvariant_func.goH A D11-Jan-2022413

ienumvariant_test.goH A D11-Jan-20222.6 KiB

ienumvariant_windows.goH A D11-Jan-20221 KiB

iinspectable.goH A D11-Jan-2022316

iinspectable_func.goH A D11-Jan-2022323

iinspectable_windows.goH A D11-Jan-20221.4 KiB

iprovideclassinfo.goH A D11-Jan-2022392

iprovideclassinfo_func.goH A D11-Jan-2022143

iprovideclassinfo_windows.goH A D11-Jan-2022326

itypeinfo.goH A D11-Jan-2022784

itypeinfo_func.goH A D11-Jan-2022123

itypeinfo_windows.goH A D11-Jan-2022318

iunknown.goH A D11-Jan-20221.2 KiB

iunknown_func.goH A D11-Jan-2022384

iunknown_windows.goH A D11-Jan-20221 KiB

iunknown_windows_test.goH A D11-Jan-2022442

LICENSEH A D11-Jan-20221.1 KiB

ole.goH A D11-Jan-20222.9 KiB

oleutil/H11-Jan-20224 KiB

README.mdH A D11-Jan-20222.2 KiB

safearray.goH A D11-Jan-2022638

safearray_func.goH A D11-Jan-20226.1 KiB

safearray_test.goH A D11-Jan-20222.2 KiB

safearray_windows.goH A D11-Jan-202211.6 KiB

safearrayconversion.goH A D11-Jan-20223.2 KiB

safearrayconversion_test.goH A D11-Jan-20222.3 KiB

safearrayslices.goH A D11-Jan-2022720

utility.goH A D11-Jan-20222.1 KiB

variables.goH A D11-Jan-2022354

variant.goH A D11-Jan-20222.4 KiB

variant_386.goH A D11-Jan-2022177

variant_amd64.goH A D11-Jan-2022210

variant_date_386.goH A D11-Jan-2022642

variant_date_amd64.goH A D11-Jan-2022586

variant_ppc64le.goH A D11-Jan-2022212

variant_s390x.goH A D11-Jan-2022210

vt_string.goH A D11-Jan-20221.8 KiB

winrt.goH A D11-Jan-20222.4 KiB

winrt_doc.goH A D11-Jan-2022842


1# Go OLE
3[![Build status](https://ci.appveyor.com/api/projects/status/qr0u2sf7q43us9fj?svg=true)](https://ci.appveyor.com/project/jacobsantos/go-ole-jgs28)
4[![Build Status](https://travis-ci.org/go-ole/go-ole.svg?branch=master)](https://travis-ci.org/go-ole/go-ole)
7Go bindings for Windows COM using shared libraries instead of cgo.
9By Yasuhiro Matsumoto.
11## Install
13To experiment with go-ole, you can just compile and run the example program:
16go get github.com/go-ole/go-ole
17cd /path/to/go-ole/
18go test
20cd /path/to/go-ole/example/excel
21go run excel.go
24## Continuous Integration
26Continuous integration configuration has been added for both Travis-CI and AppVeyor. You will have to add these to your own account for your fork in order for it to run.
30Travis-CI was added to check builds on Linux to ensure that `go get` works when cross building. Currently, Travis-CI is not used to test cross-building, but this may be changed in the future. It is also not currently possible to test the library on Linux, since COM API is specific to Windows and it is not currently possible to run a COM server on Linux or even connect to a remote COM server.
34AppVeyor is used to build on Windows using the (in-development) test COM server. It is currently only used to test the build and ensure that the code works on Windows. It will be used to register a COM server and then run the test cases based on the test COM server.
36The tests currently do run and do pass and this should be maintained with commits.
38## Versioning
40Go OLE uses [semantic versioning](http://semver.org) for version numbers, which is similar to the version contract of the Go language. Which means that the major version will always maintain backwards compatibility with minor versions. Minor versions will only add new additions and changes. Fixes will always be in patch. 
42This contract should allow you to upgrade to new minor and patch versions without breakage or modifications to your existing code. Leave a ticket, if there is breakage, so that it could be fixed.
46Under the MIT License: http://mattn.mit-license.org/2013