Сервер на удаленной машине. На vb код выглядит так:
Srv = CreateObject("TrafInsp.TrafInspAdmin", ServerName)
Srv.APILogon(APIPass)
ну и так далее, через Srv вызываются нужные функции...
Хочу перевести на MFC. Полистал хелп, все очень уныло и отталкивающе Подскажите, какие функции использовать, в какую сторону копать. С СОМ дело раньше не имел. Может есть какой-нибудь примерчик? А то в msdn не нашел чтоб к удаленному компьютеру...
31.12.06 19:04: Перенесено модератором из 'C/C++' — Odi$$ey
Здравствуйте, Yuri_ua, Вы писали:
Y_>Сервер на удаленной машине. На vb код выглядит так: Y_> Srv = CreateObject("TrafInsp.TrafInspAdmin", ServerName) Y_> Srv.APILogon(APIPass) Y_>ну и так далее, через Srv вызываются нужные функции... Y_>Хочу перевести на MFC. Полистал хелп, все очень уныло и отталкивающе Подскажите, какие функции использовать, в какую сторону копать. С СОМ дело раньше не имел. Может есть какой-нибудь примерчик? А то в msdn не нашел чтоб к удаленному компьютеру...
GS>Примерчик... компилировать лень... примерно так:
Выдает:
fatal error C1083: Cannot open type library file: 'TrafInsp.TrafInspAdmin': No such file or directory
извиняюсь за свой уровень в COM, но потому и спрашиваю. Буду читать, пытаться разобраться. Если еще подскажите, буду очень рад. Спасибо.
Вместо 'TrafInsp.TrafInspAdmin' необходимо указать путь к typelib'у данной COM библиотеки...
Здравствуйте, Yuri_ua, Вы писали:
GS>>Примерчик... компилировать лень... примерно так: Y_>Выдает: Y_>fatal error C1083: Cannot open type library file: 'TrafInsp.TrafInspAdmin': No such file or directory Y_>извиняюсь за свой уровень в COM, но потому и спрашиваю. Буду читать, пытаться разобраться. Если еще подскажите, буду очень рад. Спасибо.
Y_>#define _WIN32_DCOM
Y_>#import"F:\PROGRA~1\TrafInsp\tiregtlb.dll" no_namespace named_guids
#import"progid:TrafInsp.TrafInspAdmin" no_namespace named_guids // портабельно
Y_>_variant_t State;
Y_>CLSIDFromProgID(L"TrafInsp.TrafInspAdmin", &CLSID_TrafInsp);// Возвращает CLSID для заданного ProgID
// Это не нужно. Импорт должен давать правильный классайди. Посмотри в tlh/tli файлах.
Y_>pTrafInspAdmin.Release();
// Это не нужно. Смартпойнтер должен управлять ссылками сам.
Y_>
Error 1 error C3501: there is no typelib registered for ProgID 'TrafInsp.TrafInspAdmin' d:\doc\traffinsp\tispd\tispd\tispdDlg.h 19
Y_>>pTrafInspAdmin.Release();
GS>// Это не нужно. Смартпойнтер должен управлять ссылками сам.
Y_>>
Я думал это отключение . Ну если строчка есть, хуже не будет?
Возникла проблема... На сервере, после подключения моего клиента (вызывает функции получения данных сервера каждые 1-3с.) сильно растет объем занятой памяти с 180Мб до 500Мб за 6часов
Подскажите, это глюк в сервере?, или возмжно в моем клиенте? (коннекчусь удаленно с другой машине. На машине клиента все ОК)
Y_>Возникла проблема... На сервере, после подключения моего клиента (вызывает функции получения данных сервера каждые 1-3с.) сильно растет объем занятой памяти с 180Мб до 500Мб за 6часов
Разобрался. Проблема в сервере. Вопрос снят. Большое Спасибо всем кто помог.С Рождеством Христовым!