sábado, 9 de maio de 2009

corflags.exe

Bem ás vezes quando não existe programador por perto para recompilar o código temos mesmo que usar esta ferramenta e esperar que corra melhor.

O que é o coreflags.exe?

Quando compilamos uma ferramenta em .net2.0 e temos a opção any cpu activa o que acontece é que a aplicação tanto vai poder correr em modo de 32bits como em modo 64bits.
O que acontece é que ás vezes ela não funciona lá muito bem no modo de 64bits. Ou porque não há os drivers necessários a 64bits e apenas existem a 32 ou por outra razão qualquer.
Aqui a única solução é mesmo ou recompilar ou usar a ferramenta.

Ela vem com o SDK da .netframework e pode estar dependendo dos casos em qualquer directoria :)
Deixo aqui uma pista.

  • C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin\x64\CorFlags.exe
  • C:\Program Files (x86)\Microsoft Visual Studio 8\SDK\v2.0\Bin\CorFlags.exe
Para forçarmos uma aplicação a correr em modo de 32bits numa máquina a 64bits podemos usar este comando. Depois podem ver as várias opções do exe.

CoreFlags.exe TheApp.exe /32BIT+


CorFlags.exe assembly [options]

Parameters

Argument Description

assembly

The name of the assembly for which to configure the CorFlags.

Option Description

/32BIT+

Sets the 32BIT flag.

/32BIT-

Clears the 32BIT flag.

/?

Displays command syntax and options for the tool.

/Force

Forces an update even if the assembly is strong-named.

NoteImportant

If you update a strong-named assembly, you must sign it again before executing its code.

/help

Displays command syntax and options for the tool.

/ILONLY+

Sets the ILONLY flag.

/ILONLY-

Clears the ILONLY flag.

/nologo

Suppresses the Microsoft startup banner display.

/RevertCLRHeader

Reverts the CLR header version to 2.0.

/UpgradeCLRHeader

Upgrades the CLR header version to 2.5.

NoteNote

Assemblies must have a CLR header version of 2.5 or greater to run natively.


Sem comentários:

Enviar um comentário