Por que isso está acontecendo?
Esta página sugere uma razão plausível:
There is an annoying software in Windows 7 called "Games Explorer", which can be started via the button "Games" in the Start Menu. It automatically downloads icons, covers - and other stuff Microsoft deemed useful - from the internet, whenever a game is started.
Como parar?
Eu imagino várias opções (mais limpas a mais sujas):
- Exclua o executável do Assistente de Compatibilidade de Programa (PCA)
support.microsoft.com/en-us/kb/2545347
. - Desative
Program Compatibility Assistant
usando o painel Serviços ou por meio do Editor de políticas de grupo. - Redirecionar hosts mencionados para 127.0.0.1. Eu tentei e não funcionou para o meu caso - o processo apenas trava. No entanto, esta página sugere que funcionou para o Oblivion.
- Restringir o acesso a
gameux.dll
. Isto é o que eu fiz para "consertar" Project Nomads (veja abaixo). - Excluir
C:\Windows\AppPatch\sysmain.sdb
. O primeiro link sugere que funcionou.
Eu não tentei # 1, # 2 e # 5.
Minha experiência
Notei exatamente o mesmo problema quando o Project Nomads (2002) não iniciava até eu ligar a Internet. O arquivo exe do jogo iniciaria rundll32.exe
, que por sua vez executa C:\Windows\System32\gameux.dll
, que solicitou 65.55.162.26:443
.
Eu não queria experimentar a exclusão de sysmain.sdb
como o primeiro link sugere - talvez alguns programas antigos quebrassem? É o recurso "Compatibilidade", afinal.
Em vez disso, assumi a propriedade de gameux.dll
e removi meu usuário da lista de acesso. Agora, quando eu começo o jogo, diz Access denied to gameux.dll
, pressiono OK, rundll32.exe
process exits e o jogo é executado sem nenhum problema. Nenhum pedido é realizado e o jogo é executado sem conexão com a Internet.
O que está acontecendo?
Na página da ferramenta Analisador de Banco de Dados do Windows (SDB) ( tzworks.net/prototype_page.php?proto_id=33
):
The Application Compatibility framework from Microsoft uses the Shim Database to identify if, and how, an application or DLL should be shimmed during process startup and/or DLL load. The default Shim Database is located at \Windows\AppPatch\sysmain.sdb and can contain thousands of entries for a normal Win7 box.
... the Application Compatibility framework allows installed applications on a Windows box to be patched 'on the fly' (ie. modified without a reboot), and this patch can be used to spawn other processes and/or inject undesired DLLs into the patched application.
Eu não posso dizer com certeza, mas minha única explicação do seu comentário
the call is from rundll32.exe to a Microsoft-specific host which didn't exist until years after the game in question was developed
é que o Windows está injetando esse gameux.dll
em nosso exe inocente.
Há um artigo Malicious Application Compatibility Shims
se você estiver preocupado com segurança.
P.S. Desculpe, eu tive que enganar o editor para postar > 2 links com < 10 rep.