Я запрограммировал службу Windows, которая вызывает другую службу по сети.
Другой IP-адрес службы определяется в файле hosts.
Служба Windows работает как локальная система.
В Windows Server 2008 это работает отлично. Используется IP-адрес из файла hosts.
В Windows 7 IP-адрес из файла hosts не используется. Вместо этого он использует обычный DNS.
Если я использую обычный пользователь вместо локальной системы, поведение будет правильным. То же самое, что и в Windows Server 2008. Используется файл хоста.
Я могу надежно переключаться между локальной системой и обычным пользователем для одного и того же служебного двоичного кода, не касаясь файла hosts, ошибка воспроизводится. Так что это не о кэшировании чего-либо в любом месте или наличии неправильного файла hosts.
Есть ли что-нибудь в Windows 7, я пропустил? Почему служба, работающая как локальная система, не использует файл hosts?