I saw some good progress is being made on getting the .net 3.0 installer fixed in wine. Nice.
As it will take yet quite some time until the installer is fixed, i wondered if wine is in good shape to run .net 3.0 apps, once the installer is finished.
Today I saw someone mentioning a program called InstallRite on the users-list, and using this program, I was able to get a a simple .Net 3.0 app running in wine.
I thought just share my experience here, in case anyone finds it useful. The application i got running is very simple: AnimatedApplication from http://www.longhorncorner.com/UploadFile/rahul4_saxena/AnAnimatedApplication...
(You just need register, then you can download the file)
This way I got it running:
1. Fire up Windows Xp (a snapshot from a clean install) in my VirtualBox 2. Install Installrite from http://www.epsilonsquared.com/ in VirtualBox. 3. Start InstallRite, and from within InstallRite you can fire up the dotnetfx3.exe (after downloaded it) 4. After the dotnetfx3.exe finshed the install, there's an option, that you can make a "Build Install Kit". I did that, it creates an executable (foo.exe). Save it in a place where you can access it from linux
5. In wine, first do 'winetricks dotnet20' (needed for l_int.nls i guess, otherwise I got crash very early in the app)
6. Run foo.exe in wine, it will extract all files, and write all registry-keys, as if it were a successfull dotnetfx3 installation in wine.
7. Now Run the app, it crashes into a bunch of unimplemented functions. Fortunately just simple stubs were enough to make the app happy. I added stubs for
gdi32.GdiEntry13 kernel32.WerRegisterMemoryBlock ntdll.NtSecureConnectPort ntdll.RtlEnumerateGenericTableWithoutSplaying ntdll.RtlIsGenericTableEmpty
Well, that was enough to get the app running. I was not able to work around a problem in d3d9 ( the app just hang, displaying nothing, probably due to some unimplemented stuff in d3d9) but fortunaly disabling d3d9, was enough to get it running (WINEDLLOVERRIDES="d3d9=""" wine AnimatedApplication.exe)
I'm not sure if it would be useful to open bugs already for the unimplemented functions. If so, just shout, and i'll open some bugs.
Conclusion: once the installer is fixed, there's good chance simple .net 3.0 at least apps will run quickly
On Wed, Jan 14, 2009 at 3:59 PM, Louis Lenders xerox_xerox2000@yahoo.co.uk wrote:
gdi32.GdiEntry13 kernel32.WerRegisterMemoryBlock ntdll.NtSecureConnectPort ntdll.RtlEnumerateGenericTableWithoutSplaying ntdll.RtlIsGenericTableEmpty
Well, that was enough to get the app running. I was not able to work around a problem in d3d9 ( the app just hang, displaying nothing, probably due to some unimplemented stuff in d3d9) but fortunaly disabling d3d9, was enough to get it running (WINEDLLOVERRIDES="d3d9=""" wine AnimatedApplication.exe)
I'm not sure if it would be useful to open bugs already for the unimplemented functions. If so, just shout, and i'll open some bugs.
Or you can send diff's ;)
On 2009-01-14 (Wednesday) 20:59:09 Louis Lenders wrote:
... 7. Now Run the app, it crashes into a bunch of unimplemented functions. Fortunately just simple stubs were enough to make the app happy. I added stubs for
gdi32.GdiEntry13 kernel32.WerRegisterMemoryBlock ntdll.NtSecureConnectPort ntdll.RtlEnumerateGenericTableWithoutSplaying ntdll.RtlIsGenericTableEmpty
Well, that was enough to get the app running. ... I'm not sure if it would be useful to open bugs already for the unimplemented functions. If so, just shout, and i'll open some bugs.
Can you please e-mail me or post here as attachment stubs you have implemented so I don't duplicate work you already done?
Are you planning to send a patch for at least GdiEntry13? If not then may be I will. And I think it would be useful to have bugs for these functions if you aren't going to send patches to implement them at least as stubs in near future.
Thank you very much for useful tips (especially for mentioning InstallRite - didn't know about it before)!
Conclusion: once the installer is fixed, there's good chance simple .net 3.0 at least apps will run quickly
I think not just simple apps but even very complex ones like SolidWorks 2009! I successfully installed SolidWorks 2009 in Wine by using InstallRite InstallKit (created in clean Windows XP SP2). And I was actually able to run it (however one native override was necessary to really run it). Some basic things work; however SolidWorks affected by some bugs which prevent its normal operation - for example it crashes because of gdi32.GdiEntry13 being not implemented if I try to do some usual things (for example, creating new part using standard template). SolidWorks is .NET 3.0 application and it expect this function implemented (hopefully stub implementation will be enough).