#include "stdafx.h" #include "epi.h" using namespace std; int main(int argc, TCHAR* argv[], TCHAR* envp[]) { if (argc < 5) { cout << "Syntax: example06.exe \"url\" idx \"name\" \"value\"" << endl; return 1; } LPCTSTR lpszUrl = argv[1]; long index = _tstol(argv[2]); LPCTSTR lpszName = argv[3]; LPCTSTR lpszValue = argv[4]; ::CoInitialize(NULL); IEvalid * pEvalid = NULL; HRESULT hr = CoCreateInstance(CLSID_Evalid, NULL, CLSCTX_INPROC_SERVER, IID_IEvalid, (void**)&pEvalid); if (SUCCEEDED(hr)) { pEvalid->InitLink(CComBSTR(lpszUrl)); long numItems; if( SUCCEEDED(pEvalid->get_NumElements(0, NULL, &numItems))) { if (index < 0 || index >= numItems) cout << "index is out of bounds" << endl; else pEvalid->put_ElementAttribute(0, index, CComBSTR(lpszName), CComBSTR(lpszValue), NULL); } pEvalid->Release(); } else if (hr == E_ACCESSDENIED) cout << "Missing a valid EPI license key!" << endl; else cout << "Unable to load EPI!" << endl; ::CoUninitialize(); return 0; }