Привет. Может кто-нибудь знает: можно ли найти какие процессы(может даже апартменты?) держат в памяти некоторый outproc-server? Ситуация осложняется тем, что он еще через IServiceProvider может выдавать всем желающим разные объекты из inproc серверов подгруженных к нему. Насколько я помню после убивания процесса, держащего ссылку на аутпроц-сервер, тот через некоторое время дохнет, а значит в нем должна какая-то инфа храниться..Несколько дней бьюсь над багой, описанной выше, все найденные мной анализом кода ссылки релизятся, буду благодарен за любые идеи)
Velheart Попробуй отслеживать "внешних" клиентов, реализовав в своём объекте IExternalConnection, и отслеживать таким образом ID их процессов в IExternalConnection::AddConnection/ReleaseConnection, используя RpcServerInqBindingHandle и RpcServerInqCallAttributes.
Velheart Ну это ведь для отладки только, не так ли? Но если уж нужно, то можешь воспрользоваться недокументированной I_RpcGetCurrentCallHandle (из rpcrt4.dll). Вот прототип: Код (Text): RPC_BINDING_HANDLE __stdcall I_RpcGetCurrentCallHandle)();
green Ага, но для отладки нужна вся система, которая настолько монструозна, что обитает только на тестовых машинах и машинах заказчика)) Сенкс, буду пробовать