Hans wrote:
These stubs make the installer happy that is common to many of the .NET apps I tried.
Which apps? Now that your patches seem to have been committed, I've started trying to find and install apps that require .net, but for some reason I'm having trouble finding many.
The first one I tried is Life Balance (http://appdb.winehq.org/appview.php?iAppId=2928) but even if Mono-1.2 is installed, Life Balance seems to still try to download and install the MS c# runtime.
+relay shows this before the download starts:
0009:Call advapi32.RegOpenKeyExA(80000002,0042f148 "SOFTWARE\Microsoft\NET Framework Setup\NDP",00000000,00020019,0033bb90) ret=0040fa26 0009:Ret advapi32.RegOpenKeyExA() retval=00000002 ret=0040fa26
And bingo, http://msdn2.microsoft.com/en-us/library/aa480243.aspx documents this as part of the check to see if .net is installed. Has somebody figured out a canned .reg file to use to fake out this install check? - Dan
On Monday 18 December 2006 04:06, Dan Kegel wrote:
Which apps? Now that your patches seem to have been committed, I've started trying to find and install apps that require .net, but for some reason I'm having trouble finding many.
For some years now I've been doing an unscientific benchmark of Wine by trying every installer on the CD that comes bundled with the excellent German magazine CT, every two months or so (I can confirm that we're doing much, much better than two years ago).
For some time now it includes the dotnet runtime distributable along with a handful of applications that require it. CT's publisher, Heise Verlag maintains a vast online software database that is another shining example of Deutsche Gruendlichkeit:
http://www.heise.de/software/default.shtml?osg=1
Try '.net' as keyword.
http://msdn2.microsoft.com/en-us/library/aa480243.aspx documents this as part of the check to see if .net is installed. Has somebody figured out a canned .reg file to use to fake out this install check?
Good point. Here's a script that does that, modeled after your fakeie.sh.
-Hans
#!/bin/sh wineserver -k cat >> $HOME/.wine/system.reg <<"_EOF_"
[Software\Microsoft\NET Framework Setup\NDP\v2.0.50727] "Install"=dword:00000001 _EOF_
Here's a very simple .NET app that runs:
http://www.heise.de/software/default.shtml?prg=20130&T=dingler&osg=1
$ file hit_windows.exe hit_windows.exe: MS-DOS executable PE for MS Windows (GUI) Intel 80386 32-bit Mono/.Net assembly
And the obligatory screenshot:
-Hans
Hi, Dan
I don't think it's a good idea to make a check for .NET 2.0 succeed. Currently Mono implements only .NET 1.1
Paul Chitescu
On Sun, 17 Dec 2006, Dan Kegel wrote:
[...]
And bingo, http://msdn2.microsoft.com/en-us/library/aa480243.aspx documents this as part of the check to see if .net is installed. Has somebody figured out a canned .reg file to use to fake out this install check?
- Dan
Thanks for all the info, Hans. I stole some time this morning and, starting with your script, came up with one that lets Life Balance install; this would probably be appropriate for any .net 1.1 application:
#!/bin/sh wineserver -k cat >> $HOME/.wine/system.reg <<"_EOF_"
[Software\Microsoft\NET Framework Setup\NDP\v1.1.4322] "Install"=dword:00000001 "SP"=dword:00000001
[Software\Microsoft\.NETFramework\policy\v1.1] "4322"="3706-4322" _EOF_
The installer hangs at the end after you answer the "want to reboot?" prompt, but the app seems to be installed ok offhand. Running it fails with
$ ~/wine-git/wine Life\ Balance.exe
** (Life Balance.exe:10): WARNING **: field __ImageBase in <Module> should have RVA data, but hasn't Stacktrace:
at Life_Balance.LBForm..cctor () <0xffffffff> at Life_Balance.LBForm..cctor () <0x00084> at (wrapper runtime-invoke) System.Object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
(This is with the latest Mono for Windows installed.)
But hey, that's progress! - Dan