Propósito: Execute o aplicativo Win32 .Net2.0 Forms escrito com o VS2005 no Linux. Eu tentei o seguinte:
e tentou executá-lo - > Acabei com um aviso como:
WARNING: The runtime version supported by this application is unavailable.
Usando o tempo de execução padrão: v4.0.30319
e exceções não tratadas: %código% 2. Em seguida, criei o aplicativo de formulários simples do "Hello world" com um arquivo app.config no VS2015, que diz:
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
Cumpriu e executou usando o MonoDevelop no Ubuntu. Eu consegui, mas com o mesmo aviso acima, apesar do Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=969db8053d3322ac, Retargetable=Yes' or one of its dependencies.
File name: 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=969db8053d3322ac, Retargetable=Yes'
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=969db8053d3322ac, Retargetable=Yes' or one of its dependencies.
File name: 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=969db8053d3322ac, Retargetable=Yes'
E do que eu disse para mim mesmo, vamos tentar depurar o processo e ver o que o aplicativo está faltando.
do que eu tentei 3 depuradores diferentes (winedbg, IDA e mono --debug) e estabeleci-me tentando trabalhar com o último porque a documentação era fácil e simples de compreender. Seguindo as instruções da documentação descobri que as ferramentas de depuração do Mono Develop podem ser usadas somente quando o programa é desenvolvido em "MonoDevelop" e compilado no modo "Debug" ou desenvolvido no Windows e cumprido com sucesso no MonoDevelop.
Quando tentei fazer o pedido, complementei todas as referências do aplicativo e passei algum tempo instalando:
sudo apt-get install libmono-system-windows-forms4.0-cil
para obter o System * .dll. Quando terminei e tentei compilar novamente, recebi centenas de erros dizendo que o mono não está reconhecendo os tipos de arquivos de destino comuns da Microsoft, como Object, Integer, Double, etc.
Agora estou perdido e preciso de você para ajudar. Como faço para executar o gui do aplicativo de formulários do Windows no linux ?? ou depurar o processo com sucesso?
Muito apreciado,