Возможные проблемы с переключением с "ncalrpc" на "ncacn_np" - PullRequest
0 голосов
/ 07 мая 2009

У меня есть приложение, которое использует RPC для межпроцессного взаимодействия. Оказывается, что синхронные каналы RPC, используемые с последовательностью протокола "ncalrpc", не разрешены в Vista. Я хочу переключиться на "ncacn_np" и использовать RpcServerRegisterEpEx () с флагом RPC_IF_ALLOW_LOCAL_ONLY.

Кто-нибудь пробовал то же самое? Есть ли возможные проблемы, связанные с таким переходом?

1 Ответ

2 голосов
/ 08 мая 2009

Вы видели эту информацию об использовании флага:

... Когда этот флаг интерфейса зарегистрирован, среда выполнения RPC отклоняет вызовы, сделанные удаленными клиентами. Все локальные вызовы с использованием последовательностей протоколов ncadg_ * и ncacn_ * также отклоняются, за исключением ncacn_np. RPC разрешает вызовы ncacn_NP, только если вызов не поступает из SRV. Звонки с ncalrpc всегда обрабатываются ...

RPC для локального использования LPC (Microsoft Windows Internals 4 ed, fron page 802):
Локальный RPC может использоваться для связи между двумя процессами, расположенными в одной и той же системе, а DLL времени выполнения RPC использует средства локального вызова процедур (LPC) в режиме ядра в качестве локального сетевого API.

[Изменено]
Дополнительная справка Как устранить проблемы с подключением, вызванные записями реестра протокола клиента RPC

...