Тема: TDMS DS 3.0.99 TDMSApplication::ExecuteScript
Доброго времени суток
Суть :
не могу вызвать TDMSApplication::ExecuteScript из клиента на С++ - всегда получаю E_FAIL
Если вызывать из скрипта TDMS - все ОК
Пример:
#import "C:\Program Files\Consistent Software\TDMS 3.0\TDMSOle.dll" rename("LoadIcon", "TDMSLoadIcon") rename("CreateEvent", "TDMSCreateEvent") int _tmain(int argc, _TCHAR* argv[]) { if FAILED(CoInitialize(NULL)) return -1; try { HRESULT hr = S_OK; TDMS::ITDMSApplicationPtr tdms = NULL; hr = tdms.CreateInstance(__uuidof(TDMS::TDMSApplication), NULL, CLSCTX_LOCAL_SERVER); if FAILED(hr) _com_issue_error(hr); hr = tdms->Login(_T("sysadmin"), _T("MySuperPassword"), _T("MyCoolDatabase"), _T("MyMegaServer"), TDMS::tdmDatabaseMSDE2000, TDMS::tdmAuthSQL); if FAILED(hr) _com_issue_error(hr); hr = tdms->ExecuteScript(_T("CMD_TEST"), _T("Test")); if FAILED(hr) _com_issue_error(hr); // вот тут вот и выбрасывается _com_error } catch(_com_error& e) { MessageBox(NULL, e.ErrorMessage(), NULL, MB_OK | MB_ICONEXCLAMATION); if (NULL != e.ErrorInfo()) { _bstr_t desc; e.ErrorInfo()->GetDescription(desc.GetAddress()); MessageBox(NULL, desc, NULL, MB_OK | MB_ICONEXCLAMATION); } } CoUninitialize(); return 0; }
Вопрос:
Это баг или фича ??