Здравствуйте, Anatoliy.Sviridenkov, Вы писали:
AS> Все работает нормаль, но есть проблема. Если запустить несколько клиентов, то все они обращаются к одному экземпляру приложения, к одному серверу. Но этот СОМ сервер всегда запускаемый самой СОМ остнасткой. Мне же надо, чтобы подхватывалось приложение запущенное пользователем, и только если ничего не запущено, то новое.
ну так а почему они "не подхватывается" ? потому что когда запустил пользователь экзешник обьект "самой СОМ остнасткой" не создается и не регистрируется в ROT. OLE резонно полагает что обьекта-синглтона такого нету и пора ка теперь его запустить по всем правилам со всеми идиотскими ключами навроде /embedded.
копать в сторону CoRegisterClassObject и IRunningObjectTable::Register
а вот еще что! на самом деле таблицы ROT они для разных integrity разные то есть под администратором и юзером мож будет два синглетона запущено