何时需要刷新文件?
我从来没有这样做,因为我调用File.Close,我认为它是自动刷新的,不是吗?
我在 Go 中创建了一个Direct3D9 包装器,它使用 CGo 与 C 中的 COM 对象进行交互。
我想摆脱 Windows 下对 C 编译器的依赖,这样用户就不必安装 MinGW 或 Cygwin 来使用 Go 中的 DirectX。
问题是 d3d9.dll 不公开 C 函数,而是使用 COM。syscall.LoadLibrary("d3d9.dll")
加载 DLL(使用)后唯一可以直接调用的函数是Direct3DCreate9
. 这将返回一个 COM 对象,该对象将所有功能公开为方法。
如何在没有 CGo 的情况下从纯 Go 调用 DLL 中的 COM 对象方法?
我知道Go-OLE库,它声明它无需 CGo 即可调用 COM 接口,但我无法从源代码中了解如何为 Direct3D9 做同样的事情。一个仅包含相关部分的简单示例会有很大帮助。
我正在Go中创建一个桌面Windows应用程序.目前我用这行来安装它:
go install -ldflags -H=windowsgui
我希望用户能够说出来
go get github.com/my/app
并自动windowsgui
为建筑指定标志.是否可以将标记添加为代码注释,如#cgo
注释.或者我是否必须make
在项目目录中提供一个文件,比如过去的Go?或者根本不可能?