SVI f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
..
oleutil f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
.travis.yml f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
ChangeLog.md f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
LICENSE f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
README.md f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
SECURITY.md f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
appveyor.yml f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
com.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
com_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
connect.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
constants.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
error.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
error_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
error_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
guid.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iconnectionpoint.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iconnectionpoint_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iconnectionpoint_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iconnectionpointcontainer.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iconnectionpointcontainer_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iconnectionpointcontainer_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
idispatch.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
idispatch_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
idispatch_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
ienumvariant.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
ienumvariant_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
ienumvariant_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iinspectable.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iinspectable_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iinspectable_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iprovideclassinfo.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iprovideclassinfo_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iprovideclassinfo_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
itypeinfo.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
itypeinfo_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
itypeinfo_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iunknown.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iunknown_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
iunknown_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
ole.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
safearray.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
safearray_func.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
safearray_windows.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
safearrayconversion.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
safearrayslices.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
utility.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variables.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_386.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_amd64.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_arm.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_arm64.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_date_386.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_date_amd64.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_date_arm.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_date_arm64.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_ppc64le.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
variant_s390x.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
vt_string.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
winrt.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago
winrt_doc.go f0f9e02a00 SVI Исправления, обновление вендоринга 5 months ago

README.md

Go OLE

Build status Build Status GoDoc

Go bindings for Windows COM using shared libraries instead of cgo.

By Yasuhiro Matsumoto.

Install

To experiment with go-ole, you can just compile and run the example program:

go get github.com/go-ole/go-ole
cd /path/to/go-ole/
go test

cd /path/to/go-ole/example/excel
go run excel.go

Continuous Integration

Continuous 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.

Travis-CI

Travis-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.

AppVeyor

AppVeyor 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.

The tests currently do run and do pass and this should be maintained with commits.

Versioning

Go OLE uses semantic versioning 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.

This 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.

LICENSE

Under the MIT License: http://mattn.mit-license.org/2013