Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как из веб службы соединиться с источником данных?
|
|||
|---|---|---|---|
|
#18+
Добрый день всем! Я сделал веб службу на базе ATL Server Web Service. Пытаюсь из неё подсоединиться к источнику данных так ... #import "c:\program files\common files\system\ado\msado15.dll" rename ("EOF","adoEOF") no_namespace #define CREATEiNSTANCE(sp,riid) { HRESULT _hr =sp .CreateInstance( __uuidof( riid ) ); \ if (FAILED(_hr)) _com_issue_error(_hr); } ... ... ... class CMyService : public IMyService { ... ... ... public: _ConnectionPtr spCON; _RecordsetPtr spRS; _ConnectionPtr spCON; _RecordsetPtr spRS; ... ... ... [ soap_method ] HRESULT OpenConn(/*[out, retval]*/ BSTR *bstrRes) { HRESULT hr; hr=CoInitialize(NULL); CREATEiNSTANCE(spCON,Connection); spCON->ConnectionString =L"DSN=mydsn"; hr=spCON->Open ("","","",adConnectUnspecified); if (FAILED(hr)) { _com_error err(hr); const char * pszErrorDescr = err.ErrorMessage(); CComBSTR bstrOut(pszErrorDescr); *bstrRes=bstrOut.Detach (); return hr; } } ... ... ... }; // class CMyService Не соединяется, и не возвращает в *bstrRes описание ошибки, просто в клиентской программе возвращается E_FAIL. Я убрал условие if (FAILED(hr)) и поместил всё это в try ... catch{ _com_error err(hr); const char * pszErrorDescr = err.ErrorMessage(); CComBSTR bstrOut(pszErrorDescr); *bstrRes=bstrOut.Detach (); return hr; } в hr стало возвращаться S_OK и в *bstrRes строка что всё прошло успешно. Т.е. получается что ошибка не в подключении а где-то в другом месте. Но где?! Если бы я мог зайти по точке останова в веб службу, но я пробовал программа виснет. Подскажите пожалуйста как из веб службы соединиться с источником данных или как отладить веб службу? Заранее большое спасибо!!! P.S. Данный код подсоединения успешно работает в других типах программ, например в консольном приложении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2004, 11:49 |
|
||
|
|

start [/forum/topic.php?fid=16&tid=1348076]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
81ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 253ms |
| total: | 413ms |

| 0 / 0 |
