NIKON APPLICATIONS
2019.05.04

INSTALLING DOTNET 4.5.1 FOR NIKON APPLICATIONS
INSTALLING MS VISUAL C++ FOR NIKON APPLICATIONS

SOFTWARE TO INSTALL:
DOTNET 4.0
DOTNET 4.5.1
MS Visual C++ Redistributable 2008
MS Visual C++ Redistributable 2013

* Substitute your $HOME folder names for my, "/home/roger" and/or "/home/roger/.wine64-nikon" folder names.
* Review MS dotNET and Visual C++ Redistributable installation WineHQ instructions, see References below.
* WINEDLLOVERRIDES="mscoree" wine use dotNET rather than Wine Mono libraries.  May not be needed once to winecfg Libraries.
* USE WINEARCH='win64' to specify the arch for winetricks/wine.
* Add an option drive specifying your photos/images folder using wincfg.

COMMON WINE UTILITIES
$ WINEPREFIX='/home/roger/.wine64-nikon' winecfg
$ WINEPREFIX='/home/roger/.wine64-nikon' wine64 uninstaller



INSTALLING DOTNET 4.5.1 FOR NIKON APPLICATIONS

1) CREATE A Wine CONTAINER
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' wineboot --init


2) REMOVE WINE MONO APPLICATIONS, PREVENTING DOTNET INSTALLATIONS.
$ WINEPREFIX='/home/roger/.wine64-nikon' wine64 uninstaller


3) CHANGE INSTALL TO WINXP FOR DOTNET 4.0
(Note: Also adjust Graphics Screen Resolution to ~168 DPI for larger fonts.)
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' winetricks winxp


4) ADD NATIVE MSCOREE LIBRARY (OPTIONAL: SET GRAPHICS TO ~168 DPI)
$ WINEPREFIX='/home/roger/.wine64-nikon' winecfg


5) INSTALL DOTNET 4.0
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' winetricks --unattended dotnet40 corefonts

OR

$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' wine64 /mnt/windows-archives/microsoft/windows-7/dotNetFx40_Full_x86_x64.exe /q


6) CHECK DOTNET 4.0 INSTALL, SHOULD REPORT SUCCESS
$ unzip /mnt/windows-archives/microsoft/windows-7/netfx_setupverifier_new.zip -d /tmp/
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' wine64 /tmp/netfx_setupverifier.exe


7) CHANGE INSTALL TO WIN7 FOR SUBSEQUENT DOTNET VERSION
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' winetricks win7


8) INSTALL SUBSEQUENT DOTNET VERSIONS
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' winetricks --unattended dotnet451

OR

$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' wine64 /mnt/windows-archives/microsoft/windows-7/dotNET-NDP451-KB2858728-x86-x64-AllOS-ENU.exe /q


9) CHECK DOTNET 4.5.1 INSTALL, SHOULD REPORT SUCCESS
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' wine64 /tmp/netfx_setupverifier.exe



INSTALLING MS VISUAL C++ FOR NIKON APPLICATIONS
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' winetricks -q vcrun2008
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon' winetricks -q vcrun2013

Or can try allowing Nikon applications to install their embedded run-time libraries, but using winecfg to add library overrides:
atl120 (native,builtin)
atl90 (native,builtin)
msvcm90 (native,builtin)
msvcp120 (native,builtin)
msvcp90 (native,builtin)
msvcr120 (native,builtin)
msvcr90 (native,builtin)
vcomp120 (native,builtin)
vcomp90 (native,builtin)
mscoree (native) (Already previously noted for dotNET install)



INSTALLING NIKON APPLICATIONS
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon/' wine64 /mnt/windows-archives/nikon/S-PCU2__-020402WF-ALLIN-ALL___.exe
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon/' wine64 /mnt/windows-archives/nikon/S-NXD___-010502WF-ALLIN-ALL___.exe
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon/' wine64 /mnt/windows-archives/nikon/S-VNXI__-010302WF-ALLIN-ALL___.exe
$ WINEARCH='win64' WINEDLLOVERRIDES="mscoree" WINEPREFIX='/home/roger/.wine64-nikon/' wine64 /mnt/windows-archives/nikon/S-NEFCDC
-013100WF-ALLIN-ALL___.exe (optional, likely not needed?)



NOTES:
1) NIKON PICTURE CONTROL application will fail to start, if dotNET is not installed properly, and/or the dotNET test utility fails.
2) NIKON Capture NX-D mostly works, with some minor display bugs with photo icons and inoperable side-folder navigation, workaround using taskbar folder icons. An Error 009 will occur due to no color profiles installed within ".wine64-nikon/drive_c/windows/system32/spool/drivers/color/", copy over from a Windows OS install and Error 009 will disappear. (NKMonitor_Win.icm, RSWOP.icm, sRGB Color Space Profile.icm are likely missing.)
3) NIKON ViewNX is overall buggy.
4) What does not work in Capture NX-D: The sidebar folders does not scroll with scrollbar, to workaround, use the folder icon in the toolbar; Crop, touch-up, control point tools causes a redraw resulting with the image turning black.

CATCH BUGS USING:
$ WINEDEBUG=warn+dll,+loaddl,+msgbox WINEPREFIX="/home/roger/.wine64-nikon" strace -s 120 wine64 ./CaptureNX-D.exe > /tmp/debug.log 2>&1



REFERENCES

WINEHQ .NET Framework
https://appdb.winehq.org/objectManager.php?sClass=version&iId=25478

WINEHQ Visual C++ Redistributable Package
https://appdb.winehq.org/objectManager.php?sClass=version&iId=15314