我想通过Windows服务打开一个EA会话,并在幕后做一些动作 我使用Repository API,但不知道如何正确初始化它。
EA.Repository repository = ?;
repository.OpenFile(@"C:\test.eap");
repository.Exit();
有什么想法吗?
答案 0 :(得分:1)
下面的代码示例演示了如何打开EA COM对象并打开EA项目文件,然后获取项目模型列表
// connect to EA COM object
EA.Repository _repository = new EA.RepositoryClass();
// Open EA project file
bool fileOpened = _repository.OpenFile(filePath);
if(fileOpened)
Collection models = _repository.Models; // collection of models inside of opened project
答案 1 :(得分:0)
添加对Interop.EA.dll的引用并使用
EA.Repository repository = new EA.RepositoryClass();
答案 2 :(得分:0)
打开正在运行的实例使用(C ++示例)
CLSID clsid;
CLSIDFromProgID(L"EA.App", &clsid);
IUnknown *pUnk = NULL;
IDispatch *pDisp = NULL;
HRESULT hr = GetActiveObject(clsid, NULL, (IUnknown**)&pUnk);
if(SUCCEEDED(hr)) {
hr = pUnk->QueryInterface(IID_IDispatch, (void **)&pDisp);
}