Хобрук: Ваш путь к мастерству в программировании

С# IPC между BHO и сервисом

Кажется, я не могу найти способ связи между моим IE C# BHO и консольным приложением C#, работающим как SYSTEM.

До сих пор я пытался использовать Remoting и EventWaitHandle, но оба выдают мне ошибки «отказано в доступе», когда я включил UAC по умолчанию в Win 7.

У меня было консольное приложение, которое взаимодействует со службой, используя как Remoting, так и EventWaitHandle.

Мне нужен способ обмена данными между двумя процессами с включенным UAC, какие у меня есть варианты?

04.09.2010

  • Это черный ход к возвышению привилегий. Дверь, для закрытия которой был создан UAC. 04.09.2010
  • Я не думаю, что UAC может помешать вам, чтобы консольное приложение С# прослушивало порт (принимая только локальные соединения) и подключало BHO к нему через TCP/UDP. 05.09.2010
  • Я почти ничего не знаю об управляемых BHO, однако вы можете разместить службу WCF в консольном приложении, используя netNamedPipesBinding. Это довольно безопасная привязка, и она работает только на одном компьютере. Может быть, вы можете добавить ссылку на службу в свой проект BHO, указывающую на службу консоли? 05.09.2010

Ответы:


1

Начните с обзора Понимание и работа в защищенном режиме Internet Explorer. Примерно на полпути вниз есть раздел, в котором говорится:

Примечание. Лучше всего запускать приложение с низкой целостностью, если вы обмениваетесь данными в защищенном режиме. В противном случае используйте только безопасные формы межпроцессного взаимодействия (IPC), такие как удаленные вызовы процедур (RPC), для связи между защищенным режимом и процессом с более высокой степенью целостности.

По сути, все, что выполняется в процессе IE «Защищенный режим», является очень ограниченной «песочницей». Хотя эта статья codeproject посвящена C++/COM, вы должны может применить принципы, которые он объясняет, для написания чего-либо в управляемом коде, хотя, вероятно, вам придется использовать P/Invoke для достижения этого.

04.09.2010
Новые материалы

Создание кнопочного меню с использованием HTML, CSS и JavaScript
Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

Внедрите OAuth в свои веб-приложения для повышения безопасности
OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

Классы в JavaScript
class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

Как свинг-трейдеры могут использовать ИИ для больших выигрышей
По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..

Как построить любой стол
Я разработчик программного обеспечения. Я люблю делать вещи и всегда любил. Для меня программирование всегда было способом создавать вещи, используя только компьютер и мое воображение...

Обзор: Машинное обучение: классификация
Только что закончил третий курс курса 4 часть специализации по машинному обучению . Как и второй курс, он был посвящен низкоуровневой работе алгоритмов машинного обучения. Что касается..

Разработка расширений Qlik Sense с qExt
Использование современных инструментов веб-разработки для разработки крутых расширений Вы когда-нибудь хотели кнопку для установки переменной в приложении Qlik Sense? Когда-нибудь просили..