Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 21

Thread: Wine and Windows original files

  1. #11
    Join Date
    Oct 2005
    Location
    U.S.A.
    Beans
    4,164
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Wine and Windows origonal files

    Not that I am aware of, there is only the list of files you shouldn't override (kernel32.dll, gdi32.dll, user32.dll, and ntdll.dll). Basically you should really only override a DLL if an application run with Wine produces an error based on a particular DLL. When that happens, it may be worth it to try a Windows native DLL in place of the Wine one, to see if it will correct the problem. Otherwise, you shouldn't need to override any of them.

    Also, there are DLLs that are not implemented in Wine (like the D3D ones I mentioned above) which can be added to Wine when an application demands it. If no application has asked for it, don't bother adding it.

    Linux User #355330 | Ubuntu User #15618 | Last.FM

  2. #12
    Join Date
    May 2007
    Beans
    451

    Re: Wine and Windows original files

    Talking about DLLS....I'm trying to get a little XP app called "TotalMedia3" running under wine, and of course it blewup first time looking for "mfc42u.dll", which, IIRC is part of Microsoft Foundation Classes (thus the 'mfc') which is used by many apps and programs, so it's not an oddball.

    I don't have the XP big library "C:\windows\system\system32..." mounted yet so that's what I'll do later tonight. Probably will solve my problem.

    While spelunking around I found that I now have a directory called "/usr/lib/wine/" with a bunch of files with names like "msvidc32.dll.so", which I'm assuming was installed by Synaptic when I installed wine itself.

    I think that "msvidc32.dll.so" is a system object with a bunch of dll equivalents bundled together.

    On another experimental computer it seems as though wine looked around and found the "C:/windows/system/system32" directory sitting on my XP partition and actually used that when I brought up XP Firefox 2.0.0.7 on that 2nd computer.

    I'm pretty impressed by this so far.

    Tonight I'll improve the dll environment and try "TotalMedia3" again and if it works I've solved one of the few problems remaining to get myself totally off XP and onto ubuntu! As it is I seldom use XP anymore and only a couple of little nits remain to be solved.

    This is really great!

    All Hail the power of ubuntu!
    ubuntu user # 17477 , linux user # 454685

  3. #13
    Join Date
    Oct 2005
    Location
    U.S.A.
    Beans
    4,164
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Wine and Windows original files

    When you first run Wine it creates a hidden ".wine" directory in your home folder. The ".wine/drive_c/windows/system32" folder is the one that should be used for DLL overrides. Don't set Wine to access your XP system32 folder directly, as it will not work right. If you choose to use Windows native DLLs, copy them from your Windows system32 folder into the Wine system32 folder, then use winecfg to set a Library override for each DLL copied.

    Linux User #355330 | Ubuntu User #15618 | Last.FM

  4. #14
    Join Date
    May 2007
    Beans
    451

    Re: Wine and Windows original files

    Thanks, cogadh.
    ubuntu user # 17477 , linux user # 454685

  5. #15
    Join Date
    May 2007
    Beans
    451

    Re: Wine and Windows original files

    Oh oh. The plot thickens.

    Per cogadhs caution a couple posts ago, I figured it shouldn't be necessary to have my old XP system anywhere in sight, that wine should establish it's own libraries.

    So I didn't hookup the old XP.

    But then, where is that needed "mfc42u.dll" that TotalMedia3 is looking for? It's not in the library wine has setup:

    john@JHT40UUU:~$ ls -l .wine/drive_c/windows/system32
    total 2316
    -rw-r--r-- 1 john john 2488 2007-06-05 18:42 advapi32.dll
    -rw-r--r-- 1 john john 1032 2007-06-05 18:42 advpack.dll
    -rwxr-xr-x 1 john john 199960 2007-06-05 18:42 cmd.exe
    -rw-r--r-- 1 john john 56736 2007-06-05 18:42 comctl32.dll
    -rw-r--r-- 1 john john 377240 2007-06-05 18:42 comdlg32.dll
    -rwxr-xr-x 1 john john 1032 2007-06-05 18:42 control.exe
    -rw-r--r-- 1 john john 31488 2007-06-05 18:42 crypt32.dll
    -rw-r--r-- 1 john john 2456 2007-06-05 18:42 d3d8.dll
    -rw-r--r-- 1 john john 2456 2007-06-05 18:42 d3d9.dll
    -rw-r--r-- 1 john john 1032 2007-06-05 18:42 dbghelp.dll
    -rwxr-xr-x 1 john john 1032 2007-06-05 18:42 ddhelp.exe
    -rw-r--r-- 1 john john 2504 2007-06-05 18:42 ddraw.dll
    drwxr-xr-x 2 john john 4096 2007-06-05 18:42 drivers
    -rw-r--r-- 1 john john 2512 2007-06-05 18:42 dsound.dll
    -rw-r--r-- 1 john john 1032 2007-06-05 18:42 dsound.vxd
    -rwxr-xr-x 1 john john 1032 2007-06-05 18:42 explorer.exe
    -rw-r--r-- 1 john john 2432 2007-06-05 18:42 gdi32.dll
    -rw-r--r-- 1 john john 10648 2007-06-05 18:42 hhctrl.ocx
    -rw-r--r-- 1 john john 1032 2007-06-05 18:42 imaadp32.acm
    -rw-r--r-- 1 john john 1032 2007-06-05 18:42 imagehlp.dll
    -rw-r--r-- 1 john john 427852 2007-06-05 18:42 kernel32.dll
    -rw-r--r-- 1 john john 1032 2007-06-05 18:42 msadp32.acm
    -rw-r--r-- 1 john john 1032 2007-06-05 18:42 msg711.acm
    -rw-r--r-- 1 john john 18616 2007-06-05 18:42 msi.dll
    -rwxr-xr-x 1 john john 3408 2007-06-05 18:42 msiexec.exe
    -rw-r--r-- 1 john john 2456 2007-06-05 18:42 msvcrt.dll
    -rwxr-xr-x 1 john john 87752 2007-06-05 18:42 notepad.exe
    -rw-r--r-- 1 john john 2468 2007-06-05 18:42 ntdll.dll
    -rw-r--r-- 1 john john 4224 2007-06-05 18:42 ole32.dll
    -rw-r--r-- 1 john john 4588 2007-06-05 18:42 oleaut32.dll
    -rw-r--r-- 1 john john 2508 2007-06-05 18:42 olepro32.dll
    -rw-r--r-- 1 john john 2472 2007-06-05 18:42 opengl32.dll
    -rwxr-xr-x 1 john john 100620 2007-06-05 18:42 progman.exe
    -rw-r--r-- 1 john john 2496 2007-06-05 18:42 quartz.dll
    -rwxr-xr-x 1 john john 2464 2007-06-05 18:42 regsvr32.exe
    -rw-r--r-- 1 john john 2488 2007-06-05 18:42 riched20.dll
    -rw-r--r-- 1 john john 2496 2007-06-05 18:42 riched32.dll
    -rw-r--r-- 1 john john 2472 2007-06-05 18:42 rpcrt4.dll
    -rw-r--r-- 1 john john 8660 2007-06-05 18:42 setupapi.dll
    -rw-r--r-- 1 john john 36708 2007-06-05 18:42 shdocvw.dll
    -rw-r--r-- 1 john john 393336 2007-06-05 18:42 shell32.dll
    -rw-r--r-- 1 john john 2556 2007-06-05 18:42 shfolder.dll
    -rw-r--r-- 1 john john 10160 2007-06-05 18:42 shlwapi.dll
    -rw-r--r-- 1 john john 23388 2007-06-05 18:42 urlmon.dll
    -rw-r--r-- 1 john john 56664 2007-06-05 18:42 user32.dll
    -rw-r--r-- 1 john john 2484 2007-06-05 18:42 version.dll
    -rw-r--r-- 1 john john 17140 2007-06-05 18:42 wininet.dll
    -rw-r--r-- 1 john john 284056 2007-06-05 18:42 winmm.dll
    -rw-r--r-- 1 john john 9524 2007-06-05 18:42 winspool.drv
    -rwxr-xr-x 1 john john 1032 2007-06-05 18:42 winver.exe
    -rw-r--r-- 1 john john 2444 2007-06-05 18:42 ws2_32.dll
    -rw-r--r-- 1 john john 2444 2007-06-05 18:42 wsock32.dll
    john@JHT40UUU:~$

    And XP FireFox 2.9.9.7 works on the other computer, which has the same library.

    So I'm a little bit stumped. I can try grabbing "mfc42u.dll" from an XP system and put it in "wine/drive_c/windows/system32", but then that will be a pure XP not a new wine layer dll, so will it work? I don't know. Maybe the code within "mfc42u.dll" will call dll's which are in the wine layer..

    There are plenty other traditional windows dlls that are missing, too.

    Seems to me that the old XP "system32" library should be concatenated behind "wine/drive_c/windows/system32" to catch any calls that fall thru the wine dll library, so they can , in turn, call code in the "wine/drive_c/windows/system32".

    Hmmmmm. Maybe I'll try that.

    here's the full list of missing traditional XP dlls, so far;

    MFC42u.DLL
    MSVCIRT.dll

    I must have missed something. I bet I didn't copy alll the stuff that the app install put on my XP HDD. I'll go check.

    Pay no attention to the dummy in this corner. For now.
    ubuntu user # 17477 , linux user # 454685

  6. #16
    Join Date
    Oct 2005
    Location
    U.S.A.
    Beans
    4,164
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Wine and Windows original files

    As I said, if you want to use a windows native DLL, just copy it into the .wine/drive_c/windows/system32 directory and set a Library override in winecfg. It doesn't matter if Wine didn't originally have the DLL, this is one of those cases where a Windows native DLL is definitely required. I've run into it with mfc42.dll and msvcirt.dll myself before.

    Linux User #355330 | Ubuntu User #15618 | Last.FM

  7. #17
    Join Date
    May 2007
    Beans
    451

    Re: Wine and Windows original files

    I figured what I ought to do is run the 'wine setup.exe' for the TotalMedia app, because that worked for the firefox install I had done with wine on the other computer. Then, perhaps, wine would route any installed dlls to the right place. But that effort stalled in the DirectX install, so I forced past by declining to install the directX in the 'setup.exe' since I have DirectX libraries on the XP HDD when I need to copy them.

    Even so, the TotalMedia 'setup.exe' stopped in the middle of something and wouldn't budge.
    ubuntu user # 17477 , linux user # 454685

  8. #18
    Join Date
    Oct 2005
    Location
    U.S.A.
    Beans
    4,164
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Wine and Windows original files

    Never, ever install DirectX in Wine. Wine already has its own DirectX library implementation and trying to install the actual DirectX will often break it.

    Also, unless an application provides its own DLLs, it won't put anything in the system32 directory (sometimes DLLs will be installed in the application's directory). Usually apps that require a particular MS DLL will expect the correct DLL to already be there, if it isn't, then an error will be produced that can tell you what DLL you might need to copy from Windows into the Wine directory.

    Basically, you should:
    1. Try to install the application - "wine setup.exe"
    2. If the install fails, check the terminal for any informative errors
    3. If those errors indicate a fault in a particular DLL or a missing DLL, try copying that DLL from Windows system32 directory into the Wine system32 directory
    4. Set a library override for the DLL in winecfg
    5. Re-run the install again
    6. Rinse and repeat as necessary


    You might have to do some interpretation of the errors to determine what DLL is actually required. For example, when I encountered the problem where I needed to copy msvcirt.dll into Wine, the error didn't actually say that msvcirt.dll was at fault, but it actually indicated that a different existing DLL needed something from msvcirt.dll that it couldn't find.

    When your last attempt to install failed, were there any error messages produced in the terminal?

    Linux User #355330 | Ubuntu User #15618 | Last.FM

  9. #19
    Join Date
    May 2007
    Beans
    451

    Re: Wine and Windows original files

    Yes, I got the following in terminal, as well as a frozen screen:

    fixme:actctx****_depend_manifests Could not find dependent assembly L"Microsoft.Windows.Common-Controls"
    fixmerocess:IsWow64Process (0xffffffff 0x33df08) stub!
    Attached Images Attached Images
    ubuntu user # 17477 , linux user # 454685

  10. #20
    Join Date
    Oct 2005
    Location
    U.S.A.
    Beans
    4,164
    Distro
    Ubuntu 12.04 Precise Pangolin

    Re: Wine and Windows original files

    It looks like the app was trying to install a Windows driver. If that is the case, it will never work, since Windows drivers can't be used in Wine.

    Linux User #355330 | Ubuntu User #15618 | Last.FM

Page 2 of 3 FirstFirst 123 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •