running simultanously 2013 and 2013 R2.

2»

Comments

  • davmac1davmac1 Member Posts: 1,283
    YAY!!!!! :thumbsup: :thumbsup: :thumbsup:
    Anything that makes life easier for developers will end up paying off for the users - and for Microsoft.
    wortho wrote:
    Hi,

    In response to the many issues with running objects when 2 versions of NAV are installed I have submitted a change to the way that objects are run from C/SIDE.

    The change is to launch the Win Client directly from C/SIDE instead of using the dynamicsnav protocol handler. If C/SIDE finds the Win Client (Microsoft.Dynamics.Nav.Client.exe) in the current directory then it will launch the Win Client with the Hyperlink as the command line argument. If the Win Client cannot be launched then it will launch the hyperlink using the dynamicsnav protocol handler as previously.

    We plan to release the change in an upcoming Hotfix.

    Regards,

    David
  • worthowortho Member Posts: 23
    rdhansen wrote:
    A step in the right direction... Are you guys working on anything to enable multiple versions of the debugger to co-exist and run without registry changes?
    Hi,

    The change will mean that when the debugger is launched from C/SIDE it will start the same version of the client with the debug option.

    You can try this yourself now, see the Help Topic: How to activate the debugger at the command prompt http://msdn.microsoft.com/en-us/library/hh168734(v=nav.70).aspx

    However, if you launch the debugger from the Windows Client using the Sessions Page menu link (/Departments/Administration/IT Administration/General/Sessions) it runs the Debugger Management CU 9500 which runs the hyperlink and therefore still relies on the registry settings.

    I hope this helps.


    Regards,

    David
    “This posting is provided "AS IS" with no warranties, and confers no rights.”
  • _Alik__Alik_ Member Posts: 9
    Hello everybody!

    I'm trying to repair NAV2013 installation to solve the administration tool problem, but during tue "Reparation Process" windows intaller crashes with the tipical error "This program doesn't work" (msintaller), but the process can finish. At the end, the installation error report show the following:

    SUCCESS: Package Componentes de instalación de Microsoft Dynamics NAV executed sucessfully.
    SUCCESS: Package IIS prerequisites for Web Server Components executed sucessfully.
    SUCCESS: Package Sistema de captura de datos automatizado para Microsoft Dynamics NAV executed sucessfully.
    ERROR: Package Componentes de cliente para Microsoft Dynamics NAV failed with error. See detailed message above.
    SUCCESS: Package Documentación executed sucessfully.
    ERROR: Package Componentes Microsoft Dynamics NAV Server failed with error. See detailed message above.
    SUCCESS: Package Herramientas de instalador de ClickOnce executed sucessfully.
    SUCCESS: Package Complemento de Outlook para Microsoft Dynamics NAV executed sucessfully.
    SUCCESS: Package Componentes de servidor web executed sucessfully.
    SUCCESS: Package Módulo de idioma (es-ES) para el cliente de Windows de Microsoft Dynamics NAV executed sucessfully.
    ERROR: Package Módulo de idioma (es-ES) para Microsoft Dynamics NAV Server failed with error. See detailed message above.
    SUCCESS: Package Módulo de idioma (es-ES) para la documentación de Microsoft Dynamics NAV executed sucessfully.
    SUCCESS: Package Módulo de idioma (es-ES) para el complemento de Outlook para Microsoft Dynamics NAV executed sucessfully.
    ERROR: Package Módulo de idioma (es-ES) para Microsoft Dynamics NAV Portal Framework failed with error. See detailed message above.
    SUCCESS: Package Módulo de idioma (es-ES) para Microsoft Dynamics NAV Web Server Components executed sucessfully.
    === Logging stopped: 2013/11/29 16:00:37 ===

    Does this thing happen to anybody?

    Thanks!
  • davmac1davmac1 Member Posts: 1,283
    What version of Windows are you running?
    I have not had problems with Windows 8, but Windows 8.1 has a lot of compatibility problems with older Microsoft versions. I could not install any service packs for example for VS 2008 and VS 2010.
    MS seems to have released a Windows service pack that breaks more than it fixes.
  • _Alik__Alik_ Member Posts: 9
    davmac1 wrote:
    What version of Windows are you running?
    I have not had problems with Windows 8, but Windows 8.1 has a lot of compatibility problems with older Microsoft versions. I could not install any service packs for example for VS 2008 and VS 2010.
    MS seems to have released a Windows service pack that breaks more than it fixes.

    Thank your answer davmac1.

    I just solved the problem. I restarted my W2012 Server where I was reparing NAV2013 and then I started the repair process again and the process finished succesfully. Now I can execute NAV2013 Administration Tool and manage both instances (70 & 71).
  • ROLAROLA Member Posts: 15
    You shall note use HKEY_CLASSES_ROOT.
    It's a merged view of HKEY_LOCAL_MACHINE\Software\Classes and HKEY_CURRENT_USER\Software\Classes, where HCU has priority over HKLM.

    If you want' to implement the registryhack on a multiuser environment, you should modify/add the keys to HKCU\Software\Classes as this only affect the user that does the changes.
    This way every user can work on different version on the same machine.

    When writing changes to HKCR\Software\Classes, the changes are infact writen to HKLM\Software\Classes.
  • ppavukppavuk Member Posts: 334
    ROLA wrote:
    You shall note use HKEY_CLASSES_ROOT.
    It's a merged view of HKEY_LOCAL_MACHINE\Software\Classes and HKEY_CURRENT_USER\Software\Classes, where HCU has priority over HKLM.

    If you want' to implement the registryhack on a multiuser environment, you should modify/add the keys to HKCU\Software\Classes as this only affect the user that does the changes.
    This way every user can work on different version on the same machine.

    When writing changes to HKCR\Software\Classes, the changes are infact writen to HKLM\Software\Classes.


    Good point, but need to be addressed to MS. The standard installation write to HKEY_CLASSES_ROOT i believe.
  • PoltergeistPoltergeist Member Posts: 200
    The problem with not being able to use the two clients simultaniously will be solved in the next release from Microsoft, they say. If you really want them, there is a solution for the present releases. However, you need to contact Microsoft and ask for build 7.1.35866.0, which should be in KB 2907588 . You'll get a hotfix, which makes it possible to start both clients and multiple objects at the same time. However, this solution is not complete, as it will start a new instance everytime you start a new object. Not good, as it will use a lot of sessions, and debugging is still not really possible. For this to work completely, you will have to change some registryentries, and register a dll

    After you copied the files over the NAV2013R2 installation, start an elevated commandprompt, and type

    C:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm /register "c:\program files (x86)\Microsoft Dynamics NAV\71\RoleTailored Client\Microsoft.Dynamics.Nav.Client.Winforms.dll" /tlb (make sure you're pointing to the NAV2013R2 file, not the NAV2013 file)

    Start de registryeditor.

    Delete:
    HKEY_CLASSES_ROOT\TypeLib\{5020AC1E-A4F0-402B-A920-3FED4E3B05CC}\7.1

    Modify the value of Version in HKEY_CLASSES_ROOT\Interface\{14519985-4959-4F7C-AC30-CBBCD9DFBC08}\TypeLib from 7.1 to 7.0

    The keys HKEY_CLASSES_ROOT\TypeLib\{95819FD3-CF0A-4706-BE93-35B3DDCB817C}\7.1 and HKEY_CLASSES_ROOT\Interface\{59521B62-D441-47E6-8224-A07203686BA2}\7.1 should already exist, and don't need modification.

    This is working for me.
  • PoltergeistPoltergeist Member Posts: 200
    An addendum to the previous post: This started working after I changed the registrykeys, and then did a repair install of NAV2013 (not R2).
  • PoltergeistPoltergeist Member Posts: 200
    edited 2014-02-19
    Allright, did some more research. If you want to run NAV2013 and NAV2013R2, you should use a build for NAV 7.1 above 35860. After updating the files for NAV 2013 R2, do the following:

    run (elevated)
    C:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm /register "c:\program files (x86)\Microsoft Dynamics NAV\71\RoleTailored Client\Microsoft.Dynamics.Nav.Client.Winforms.dll" /tlb (I'm assuming NAV 2013R2 is installed at the default location)

    Start regedit, then
    • Delete HKEY_CLASSES_ROOT\TypeLib\{5020AC1E-A4F0-402B-A920-3FED4E3B05CC}\7.1
    • Change HKEY_CLASSES_ROOT\Interface\{14519985-4959-4F7C-AC30-CBBCD9DFBC08}\TypeLib, version from 7.1 to 7.0
    • Change HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{E3041209-EDEA-36B5-ADE4-51E7751BE082}\TypeLib, version from 7.1 to 7.0

    If you are on a 64bits machine, also
    • Delete HKEY_CLASSES_ROOT\wow6432node\TypeLib\{5020AC1E-A4F0-402B-A920-3FED4E3B05CC}\7.1
    • Change HKEY_CLASSES_ROOT\wow6432node\Interface\{14519985-4959-4F7C-AC30-CBBCD9DFBC08}\TypeLib, version from 7.1 to 7.0
    • Change HKEY_LOCAL_MACHINE\SOFTWARE\Classes\wow6432node\Interface\{E3041209-EDEA-36B5-ADE4-51E7751BE082}\TypeLib, version from 7.1 to 7.0

    Or use the following batchscript:
    :::::::::::::::::::::::::::::::::::::::::
    :: Automatically check & get admin rights
    :::::::::::::::::::::::::::::::::::::::::
    @echo off
    CLS
    :checkPrivileges 
    NET FILE 1>NUL 2>NUL
    if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges ) 
    
    :getPrivileges 
    if '%1'=='ELEV' (shift & goto gotPrivileges)  
    ECHO. 
    ECHO **************************************
    ECHO Invoking UAC for Privilege Escalation 
    ECHO **************************************
    
    setlocal DisableDelayedExpansion
    set "batchPath=%~0"
    setlocal EnableDelayedExpansion
    ECHO Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs" 
    ECHO UAC.ShellExecute "!batchPath!", "ELEV", "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs" 
    cscript "%temp%\OEgetPrivileges.vbs" 
    exit /B 
    
    
    :gotPrivileges 
    ::::::::::::::::::::::::::::
    :START
    ::::::::::::::::::::::::::::
    @setlocal & pushd .
    @setlocal enabledelayedexpansion enableextensions
    @set InstallKey70="HKLM\SOFTWARE\Microsoft\Microsoft Dynamics NAV\70\RoleTailored Client"
    @set InstallKey71="HKLM\SOFTWARE\Microsoft\Microsoft Dynamics NAV\71\RoleTailored Client"
    @if [%processor_architecture%] == [AMD64] set InstallKey70="HKLM\SOFTWARE\wow6432node\Microsoft\Microsoft Dynamics NAV\70\RoleTailored Client" &&set InstallKey71="HKLM\SOFTWARE\wow6432node\Microsoft\Microsoft Dynamics NAV\71\RoleTailored Client"
    ::Delims = space & Tab
    @FOR /F "tokens=2* delims=	 " %%A IN ('REG QUERY %InstallKey70% /v path') DO SET NAV70=%%B
    @FOR /F "tokens=2* delims=	 " %%A IN ('REG QUERY %InstallKey71% /v path') DO SET NAV71=%%B
    @if ["%nav71%"]==[""] @echo Dynamics NAV 71 not found&&Pause&&goto end
    ::Change (actually, delete) registry entries
    @Reg delete HKCR\TypeLib\{5020AC1E-A4F0-402B-A920-3FED4E3B05CC}\7.1 /f
    @if [%processor_architecture%] == [AMD64] @Reg delete HKCR\wow6432node\TypeLib\{5020AC1E-A4F0-402B-A920-3FED4E3B05CC}\7.1 /f
    @Reg delete HKEY_CLASSES_ROOT\Interface\{14519985-4959-4F7C-AC30-CBBCD9DFBC08} /f
    @if [%processor_architecture%] == [AMD64] @Reg delete HKEY_CLASSES_ROOT\wow6432node\Interface\{14519985-4959-4F7C-AC30-CBBCD9DFBC08} /f
    @Reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{E3041209-EDEA-36B5-ADE4-51E7751BE082} /f
    @if [%processor_architecture%] == [AMD64] @Reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Classes\wow6432node\Interface\{E3041209-EDEA-36B5-ADE4-51E7751BE082} /f
    ::Register assembly
    @if exist %~dp0Rollup\*.* @echo copy "%~dp0Rollup\*.*" "%nav71%\*.*" && @copy "%~dp0Rollup\*.*" "%nav71%\*.*"
    @FOR /F "delims=" %%A IN ('dir c:\windows\Microsoft.net\regasm.exe /s /b ^| findstr k\v4') DO set file=%%A
    @%file% /register "%nav71%\Microsoft.Dynamics.Nav.Client.Winforms.dll" /tlb
    @if ["%NAV70%"] NEQ [""] do (@%file% /register "%nav70%\Microsoft.Dynamics.Nav.Client.Winforms.dll" /tlb)
    @Echo Done!
    @if exist "%temp%\OEGetPrivileges.vbs" @del "%temp%\OEGetPrivileges.vbs"
    
  • miljancemiljance Member Posts: 6
    wortho wrote:
    The change will mean that when the debugger is launched from C/SIDE it will start the same version of the client with the debug option.

    You can try this yourself now, see the Help Topic: How to activate the debugger at the command prompt http://msdn.microsoft.com/en-us/library/hh168734(v=nav.70).aspx

    However, if you launch the debugger from the Windows Client using the Sessions Page menu link (/Departments/Administration/IT Administration/General/Sessions) it runs the Debugger Management CU 9500 which runs the hyperlink and therefore still relies on the registry settings.
    Hi all,

    Actual build for Rollup3 (7.1.36035.0) fixes the problem with multiversion installation but still we have two problems:

    1. From Build 7.1.35866.0 whenever new Page oppening is initiated from Classic, new NAV203R2 RTC Client is opened. It also applies when raun as a Hiperlink. I think this is really terible side-effect. For example, we have an TAPI integration which using webservices and GETURL functions provides user ability to open Contact Card based on phone number from application outside NAV. In our case that means that regardless of wheter user have the RTC opened or not, he must wait quite a while to see a Contact Card.

    2. Debugger cannot be run from RTC, only from Classic Client. This can be easily solved by changing Codeunit 9500 (i wonder why isn't it implemented already):
    NAV2013 (OnRun trigger):
    //UrlString := STRSUBSTNO('DynamicsNAV://%1:%2/%3/%4/debug',ServerComputerName,ServerPort,ServerInstance,COMPANYNAME);
    //HYPERLINK(UrlString);
    
    ServerInstance2.GET(SERVICEINSTANCEID);
    UrlString := STRSUBSTNO('DynamicsNAV://%1:%2/%3/%4/debug',
      ServerInstance2."Server Computer Name",
      ServerInstance2."Server Port",
      ServerInstance2."Server Instance Name",
      COMPANYNAME);
    
    AppDomainSetup := AppDomainSetup.CurrentDomain;
    Process.Start(FORMAT(AppDomainSetup.GetData('APPBASE')) + 'Microsoft.Dynamics.Nav.Client.exe',
      '"' + UrlString + '"');
    

    NAV2013R2 (OnRun trigger):
    //HYPERLINK(UrlString);
    AppDomainSetup := AppDomainSetup.CurrentDomain;
    Process.Start(FORMAT(AppDomainSetup.GetData('APPBASE')) + 'Microsoft.Dynamics.Nav.Client.exe',
      '"' + UrlString + '"');
    
  • PoltergeistPoltergeist Member Posts: 200
    Point 1 is solved with the registryentries and assembly (or running the cmdfile) in the post above yours.
  • miljancemiljance Member Posts: 6
    Thanks! Somehow I did't get that it's addressing the same issue. I can cofirm that it works with your fix, however I couldn't execute your batch, i had to do everything manually. Anyway, I have alreay filed an Incident so let us see if there is something additional and official from MS.
  • PoltergeistPoltergeist Member Posts: 200
    I'm wondering why you could not run te script... However, I know that quite soon there will be some blog from Microsoft addressing the same issue, including a working powershell script.
  • miljancemiljance Member Posts: 6
    Probably because i played with registry quite a while after releasing NAV2013 R2. Not all registry keys had to be changed in my case but only some because I used registry scripts to swap the needed 'default' version during development. I cannot recall which was the laste stance.
  • miljancemiljance Member Posts: 6
    I just received offical fix from MS which appers to be working. It's an Powershell script. Since I'm not sure if I'm allowed to share this Hotfix, I suggest anyone who needs this hotfix to contact MS or to wait for a blog post.
  • PoltergeistPoltergeist Member Posts: 200
    I've adapted the batchscript somewhat: It's now doing the same as Microsoft Powershell script, but it can be done with just running the batchfile, as where with the powershellscript you need to do some thing (setting execution policy) manually...
  • PoltergeistPoltergeist Member Posts: 200
    The official fix is published by Microsoft (including the powershell script). Take a look at http://blogs.msdn.com/b/nav/archive/201 ... -2013.aspx
  • Rob_HansenRob_Hansen Member Posts: 296
    With this hotfix and scripts, two questions....

    1) Can the NAV 2013 and NAV 2013 R2 service tiers co-exist on one server? (Not sure if the fix is just for the client or whether this was always fine)

    2) Once the hotfix/scripts are applied, are there any limitations in functionality? Can the NAV 2013 and NAV 2013 R2 role-tailored clients co-exist and support all features (debugger, launch objects from object designer, etc.)?
  • PoltergeistPoltergeist Member Posts: 200
    1. Yes, but this was always possible. The change only effects the client.

    2. Everything is working as it should. I've found no limitations.

    One more tip a collegue of mine found out: if you want to use an older build sidebyside, just copy the microsoft.dynamics.nav.client.winforms.dll of the latest build (rollup 3 or 4 comes to mind) to the older build, and register the file. Or, if you already registered the new build, copy the dll en tlb file. It seems to work just as well...
  • Rob_HansenRob_Hansen Member Posts: 296
    That's great - thanks for clarifying. Now, once the FBK feature is back we should have no notable gaps on the back end vs. 2013...hopefully soon.
  • jrenzjrenz Member Posts: 4
    Hi @ all,
    have anyone tested "send-to Excel" in NAV2013 with an installed version of NAV2013 R2?

    I have installed 2013 R2 last week and when I use the "send-to Excel"-function in NAV2013, I get an error with a version mismatch.
    I think this error comes from the new version of OpenXML, which is installed by NAV2013 R2.

    Greetings from Germany
    Joerg
    best regards
    Joerg
  • jrenzjrenz Member Posts: 4
    Hi,
    I received an answer from Microsoft, that resolved the Problem:

    you have to manually make changes in the registry, if you want to use "send-to Excel" in NAV2013.

    Make changes in this registry keys:
    HKLM\Software\Microsoft\Office\Excel\Addins\Microsoft.Dynamics.Nav.ExcelAddIn
    HKLM\Software\Wow6432Node\Microsoft\Office\Excel\Addins\Microsoft.Dynamics.Nav.ExcelAddIn

    You have to modify the path for the ExcelAddin to the program path of NAV2013 or NAV2013 R2.
    You could not use the "send-to Excel"-function simultanously in both versions.
    best regards
    Joerg
  • matsnmatsn Member Posts: 10
    Hey,

    had the same problem, you can also deinstall the addin in excel and afterwards reinstall the correct version using the Microsoft.Dynamics.Nav.ExcelAddin.vsto from the RoleTailored Client Folder. Might be easier for some than changing the registry every time you want to switch the version.

    Regards,
    Mats
Sign In or Register to comment.