информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
[Win2000] Poroisia, poroisia v MSDN ( Built on Monday, January 22, 2001 ) 29.11.01 22:10  Число просмотров: 1060
Автор: homogenic Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Nu a esli COM+ net, togda I uzhe otvetil

У твоего решения есть недостаток : если виртуальный сервер "висит" и не отвечает, то решение не работает :(
<programming>
[Win2000] Получение PID для COM+ Applications 26.11.01 20:53  
Автор: homogenic Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Есть : Пишется консоль для удаленного управления IIS
Необходимо получить список Out-Process Applications и для каждого из них получить детальную информацию


Я могу получить через ADSI получить список Applications (через COMAdmin.COMAdminCatalog и Applications Collection),после этого мне необходимо получить PID процесса.

Под WinXP это можно сделать через ApplicationInstances Collection, а в Win2000 данный Collection не поддерживается :(



Есть ли альтернативные COMAdminCatalog способы (я смотрел WMI, но не нашел ничего подходящего) ? Может кто-нибудь решал подобную задачу ?
(у Microsoftа в MMC это давно реализовано еще в WinNT 4.0 (в Component Services))


Анатолий
(можно мылом homogenic@mail.ru)

[Win2000] Получение PID для COM+ Applications 26.11.01 22:40  
Автор: + <Mikhail> Статус: Elderman
<"чистая" ссылка>
> Есть : Пишется консоль для удаленного управления IIS
> Необходимо получить список Out-Process Applications и для
> каждого из них получить детальную информацию
>
>
> Я могу получить через ADSI получить список Applications
> (через COMAdmin.COMAdminCatalog и Applications
> Collection),после этого мне необходимо получить PID
> процесса.

Pri chem zdes COM ?? esli tebe nado PID to Win32 API

>
> Под WinXP это можно сделать через ApplicationInstances
> Collection, а в Win2000 данный Collection не поддерживается
> :(
>
>
>
> Есть ли альтернативные COMAdminCatalog способы (я смотрел
> WMI, но не нашел ничего подходящего) ? Может кто-нибудь
> решал подобную задачу ?
> (у Microsoftа в MMC это давно реализовано еще в WinNT 4.0
> (в Component Services))

WinNT4.0 i v pomine net "Component Services" ( eto COM+) eto baida poiavilas` poszhe. A v WinNT est COM i MTS (chto mozhno skazat` tozhe samoe). ytak vot esli tebe nado kovyriat MTS components togda kovyraii MTS estestvenno. chto voobche to ni kokogo otnoshenia k out of proc components ne imeet.


>
>
> Анатолий
> (можно мылом homogenic@mail.ru)
>

P.S. vopros tak i ne yasen.
[Win2000] Получение PID для COM+ Applications 27.11.01 13:07  
Автор: homogenic Статус: Незарегистрированный пользователь
<"чистая" ссылка>
>
> P.S. vopros tak i ne yasen.


Поправьте меня, если я не прав

1. Под IIS все сервера, запущенные как Out-Process, запускаются как отдельные процессы с именем dllhost.exe
2. Виртуальные сервера регистрируются как COM+ Application

Проблема

Мне необходимо связать имя сервера и со связанным с ним процессом

Я пробовал делать это через COM+ Applications, но это работает только в XP
[Win2000] Получение PID для COM+ Applications 27.11.01 22:06  
Автор: + <Mikhail> Статус: Elderman
<"чистая" ссылка>
> >
> > P.S. vopros tak i ne yasen.
>
>
> Поправьте меня, если я не прав
>
> 1. Под IIS все сервера, запущенные как Out-Process,
> запускаются как отдельные процессы с именем dllhost.exe
> 2. Виртуальные сервера регистрируются как COM+ Application
>
> Проблема
>
> Мне необходимо связать имя сервера и со связанным с ним
> процессом

Aga, togda vse prosto:
pishesh prostoi com object kotoryi vnutri vyzyvaet GetCurrentProcessId(VOID) ili GetCurrentProcess(VOID) i vozvrachaet tebe handle ili id chto hochesh. Zasovyvaesh tvoi Obj v ASP ili ISAPI voobchem na tvoi server chtoby on inicializirovalsi i vyzyvalsia.
Naprimer v ASP:
Application_OnStart() sozdaesh object i vyzyvaesh method a potom hrahish tvoii id/handle as global.

>
> Я пробовал делать это через COM+ Applications, но это
> работает только в XP

P.S. ne poniatno zachem nuzhno sviazyvat` process s imnem servera???
[Win2000] Получение PID для COM+ Applications 28.11.01 13:23  
Автор: homogenic Статус: Незарегистрированный пользователь
<"чистая" ссылка>

> Aga, togda vse prosto:
> pishesh prostoi com object kotoryi vnutri vyzyvaet
> GetCurrentProcessId(VOID) ili GetCurrentProcess(VOID) i
> vozvrachaet tebe handle ili id chto hochesh. Zasovyvaesh
> tvoi Obj v ASP ili ISAPI voobchem na tvoi server chtoby on
> inicializirovalsi i vyzyvalsia.
> Naprimer v ASP:
> Application_OnStart() sozdaesh object i vyzyvaesh method a
> potom hrahish tvoii id/handle as global.


Идею понял, но это не очень универсальное решение (можно использовать только на разработанных мною сайтах)
Хочется :) универсального решения, к тому же у самого Microsofta это как-то просто реализовано (в Component Services этот PID виден у всех запущенных Applications)

Связать имя и PID надо, чтобы получить информацию о памяти, занимаемой сервером, CPU Usage и т.п.

[Win2000] Получение PID для COM+ Applications 28.11.01 22:14  
Автор: + <Mikhail> Статус: Elderman
<"чистая" ссылка>
>
> > Aga, togda vse prosto:
> > pishesh prostoi com object kotoryi vnutri vyzyvaet
> > GetCurrentProcessId(VOID) ili GetCurrentProcess(VOID)
> i
> > vozvrachaet tebe handle ili id chto hochesh.
> Zasovyvaesh
> > tvoi Obj v ASP ili ISAPI voobchem na tvoi server
> chtoby on
> > inicializirovalsi i vyzyvalsia.
> > Naprimer v ASP:
> > Application_OnStart() sozdaesh object i vyzyvaesh
> method a
> > potom hrahish tvoii id/handle as global.
>
>
> Идею понял, но это не очень универсальное решение (можно
> использовать только на разработанных мною сайтах)
> Хочется :) универсального решения, к тому же у самого
> Microsofta это как-то просто реализовано (в Component
> Services этот PID виден у всех запущенных Applications)
>
> Связать имя и PID надо, чтобы получить информацию о памяти,
> занимаемой сервером, CPU Usage и т.п.
>

Esli dlia COM+ togda:
IComAdminCatalog2::GetRunningApps (...);
// znaia app name dlia kotoroi ty hochesh poluchit` info, eto imia ty mozhesh poluchit` raznymi sposobami: naprimer znaia file name ispolzuesh ICOMAdminCatalog::QueryApplicationFile(...). ili
//ICOMAdminCatalog::Connect(...) i poluchaesh ICatalogCollection . i.t.d
//poluchaesh collection of IRunningAppInfo;
 //i usee.

---
voobchem ne ponimau v chem problema esli ty ispolzuesh COM+ !!! ( pervonachalniy vopros byl kak eto delat` na NT kotoraia ne imeet COM+)
[Win2000] Получение PID для COM+ Applications 29.11.01 13:35  
Автор: homogenic Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Esli dlia COM+ togda:
>
> IComAdminCatalog2::GetRunningApps (...);
> // znaia app name dlia kotoroi ty hochesh poluchit` info,
> eto imia ty mozhesh poluchit` raznymi sposobami: naprimer
> znaia file name ispolzuesh
> ICOMAdminCatalog::QueryApplicationFile(...). ili
> //ICOMAdminCatalog::Connect(...) i poluchaesh
> ICatalogCollection . i.t.d
> //poluchaesh collection of IRunningAppInfo;
>  //i usee.

Этот метод я пробовал, но проблема в том, что он не работает в Win2000 (там не поддерживается интерфейс IComAdminCatalog2 и нет такого Collection)

а насчет IRunningAppInfo, где найти его описание (у меня в августовском Platform SDK  вообще нет упоминания о таком интерфейсе)

> 

---
> voobchem ne ponimau v chem problema esli ty ispolzuesh COM+
> !!! ( pervonachalniy vopros byl kak eto delat` na NT
> kotoraia ne imeet COM+)

COM+ - это одно из найденных мной решений проблемы
Вопрос в том, есть ли альтернативные решения проблемы: как связать имя виртуального сервера IIS с PID запущенного им процесса
[Win2000] Poroisia, poroisia v MSDN ( Built on Monday, January 22, 2001 ) 29.11.01 21:44  
Автор: + <Mikhail> Статус: Elderman
<"чистая" ссылка>
> > Esli dlia COM+ togda:
> >
> > IComAdminCatalog2::GetRunningApps (...);
> > // znaia app name dlia kotoroi ty hochesh poluchit`
> info,
> > eto imia ty mozhesh poluchit` raznymi sposobami:
> naprimer
> > znaia file name ispolzuesh
> > ICOMAdminCatalog::QueryApplicationFile(...). ili
> > //ICOMAdminCatalog::Connect(...) i poluchaesh
> > ICatalogCollection . i.t.d
> > //poluchaesh collection of IRunningAppInfo;
> >  //i usee.
> 
> Этот метод я пробовал, но проблема в том, что он не
> работает в Win2000 (там не поддерживается интерфейс
> IComAdminCatalog2 и нет такого Collection)
> 
> а насчет IRunningAppInfo, где найти его описание (у меня в
> августовском Platform SDK  вообще нет упоминания о таком
> интерфейсе)
> 
> > 

---
> > voobchem ne ponimau v chem problema esli ty ispolzuesh
> COM+
> > !!! ( pervonachalniy vopros byl kak eto delat` na NT
> > kotoraia ne imeet COM+)
>
> COM+ - это одно из найденных мной решений проблемы
> Вопрос в том, есть ли альтернативные решения проблемы: как
> связать имя виртуального сервера IIS с PID запущенного им
> процесса

Nu a esli COM+ net, togda I uzhe otvetil
[Win2000] Poroisia, poroisia v MSDN ( Built on Monday, January 22, 2001 ) 29.11.01 22:10  
Автор: homogenic Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Nu a esli COM+ net, togda I uzhe otvetil

У твоего решения есть недостаток : если виртуальный сервер "висит" и не отвечает, то решение не работает :(
[Win2000] Poroisia, poroisia v MSDN ( Built on Monday, January 22, 2001 ) 30.11.01 00:40  
Автор: + <Mikhail> Статус: Elderman
<"чистая" ссылка>
> > Nu a esli COM+ net, togda I uzhe otvetil
>
> У твоего решения есть недостаток : если виртуальный сервер
> "висит" и не отвечает, то решение не работает :(

a ty sozdai free threaded singleton out of proc object i hrani v nem vsu baidu kakuu hochesh i usee budet rabotat`, "kak govorit nash shef"(BP)
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach