[Main topics] [Navigation]

FrameMaker versions in parallel

Switching for FM 6
Switching for FM 7 and above
Switching between standard and advanced version
Putting it all together
Reducing redundant files

Caveat

According to the licensing terms of Adobe, the modification of dlls may invalidate your licence.

Also keep in mind that the following is legal only if you have the registration keys for all language versions!

Switching between two UI versions

In my environment I use distinct path names for the installed versions of FrameMaker: H:\Adobe\FrameMaker.6en or H:\Adobe\framemaker.71en. This eases the switch between version, because only a part of the path name changes, for example from 6en to 6de.

[To top/bottom of page] Switching for FM 6

Until FM 6 it was possible to have various versions installed and switching between them just by changing a pointer in the registry. There is no speciality with installing and running major FM release versions (e.g. 5.5 and 6.0) on the same Windows installation. You need, however, a special switching mechanism to have two language versions (UI language, for example, a German and an English FM version) of the same release level installed and running.

The registry key for FrameMaker defines the location of the maker.ini file. This key is only set, if it does not yet exist. Hence it is necessary to delete it between the starts of different UI-language versions of FM. The REG key is set by using the fmreg.txt file from the start directory of the FM program ($HOME).

The following WinBatch files (see Wilson Window Ware) start the one or the other version. You may do the same also with advanced DOS batch commands or you may combine these two an even add a user interface (see switching between standard and advanced version)

English version of FrameMaker
; The registry editor must not be open when starting this batch file!
  PgmFrame= "H:\adobe\FrameMaker.6en\FrameMaker.exe"
  ErrorMode(@off)
  RegDeleteKey (@REGMACHINE, "SOFTWARE\Adobe\FrameMaker\6.0")
  ErrorMode(@cancel)
  Run (PgmFrame, "")
  While WinExist ("Registry") == @FALSE
    ; wait for the message (Frame has added the key)
  EndWhile
  SendKeysTo ("Registry", "{ENTER}") ; Press OK
Exit

German version of FrameMaker

PgmFrame= "H:\adobe\FrameMaker.6en\FrameMaker.exe"
  ... etc.	

[To top/bottom of page] Switching for FM 7 and above

You can not install a second version (with a different UI language) of FM. The installation program will not allow you to change the language (select the appropriate button). Hence you need to do the following:

Note: References to ASN and REG are irrelevant for FM 8 and higher.

  1. You must have a serial number for each of the languages – the serial number for the German version is not accepted in the English version!
  2. Install the first language (e.g. the german version) to a distinct location, for example H:\Adobe\framemaker.72de and check out everything.
  3. Rename this location (e.g. to H:\Adobe\framemaker.72de.saved) to avoid deletion of files by step 4
  4. Uninstall FrameMaker from the original installation path (H:\Adobe\framemaker.72de). This will only remove the items in the registry and the start menu, because the file location has been renamed.
  5. Install the second language (e.g. the english version) to a language distinct path (H:\Adobe\framemaker.72en)
  6. Inspect the registry: you will find HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\FrameMaker\7.2 with the pointer (REG value) to FMHome, in this case h:\adobe\framemaker.72en.
  7. In HKEY_CURRENT_USER\Software\Adobe\FrameMaker\7.2\Registration you will find the key SERIAL with the serial number of the second installation. However, in the respective maker.ini files the ASN and REG numbers are according to the installation - and these two sets must be different!
  8. Re-activate you firstly installed version by renaming H:\Adobe\framemaker.72de.saved back to H:\Adobe\framemaker.72de. This can not be started yet, because the registry entries point to the second installation.
  9. You switching mechanism must handle the following REG keys:
    Root Key & ValueName Value (see note below)
    HKLM SOFTWARE\Adobe\FrameMaker\7.2\FMHome H:\Adobe\framemaker.%ver%\
    HKLM SOFTWARE\Adobe\FrameMaker\7.2\IniFile H:\Adobe\framemaker.%ver%\maker.ini
    HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\FrameMaker.exe\ H:\Adobe\framemaker.%ver%\FrameMaker.exe
    HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\FrameMaker.exe\Path H:\Adobe\framemaker.%ver%\
    HKCR FrameMaker.Book\Shell\Open\Command, "h:\adobe\framemaker.%ver%\FrameMaker.exe" "`%1"
    HKCR FrameMaker.Book\Shell\Print\Command, "h:\adobe\framemaker.%ver%\FrameMaker.exe" "`%1"
    HKCR FrameMaker.Document\Shell\Open\Command, "h:\adobe\framemaker.%ver%\FrameMaker.exe" "`%1"
    HKCR FrameMaker.Document\Shell\Print\Command, "h:\adobe\framemaker.%ver%\FrameMaker.exe" "`%1"
    HKCR FrameMaker.Interchange.Format\Shell\Open\Command, "h:\adobe\framemaker.%ver%\FrameMaker.exe" "`%1"
    HKCR FrameMaker.Interchange.Format\Shell\Print\Command, "h:\adobe\framemaker.%ver%\FrameMaker.exe" "`%1"
    Other keys do not depend on the 'UI language' and hence do not need to be switched.
    Note: The notation %ver% is symbolic and must be replaced by (in this example case) 72en or 72de.

Note: The switching in the registry can be eased by starting a distinct REG file with all the information in it. For example, fm8de.reg may look like this:

REGEDIT4
  [HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\FrameMaker\8]
     "ProductCode"="{7B4CA480-7321-4AD4-BED1-F7177671C37E}"
     "IniFile"="H:\\Adobe\\framemaker.8de\\maker.ini"
     "FMHome"="H:\\Adobe\\framemaker.8de\\"
     "AdobeCommonSupport"=dword:00000001
     @=""
  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\FrameMaker.exe]
     "Path"="H:\\Adobe\\framemaker.8de\\"
     @="H:\\Adobe\\framemaker.8de\\FrameMaker.exe"
	 ...

[To top/bottom of page]Switching between standard and enhanced version

You have installed add-ons and plug-ins and still want to give support to people who have only the native FrameMaker installation. But after some time you can not remember which menu items are not present in the original installation etc. So you want to have access to the standard installation and to your enhanced version. As an example I show you my environment which uses the following enhancements:

The structure of directories and files needs to be extended (the highlighted paths are the ones of the original installation):

H:\Adobe\framemaker.72en\maker.ini.ori Saved original maker.ini
H:\Adobe\framemaker.72en\maker.ini.ddd With all the modifications
H:\Adobe\framemaker.72en\maker.ini The one used by FM (a copy of either x.ori or x.ddd)
H:\Adobe\framemaker.72en\fminit\Plugins.ori Saved original set of plug-ins
H:\Adobe\framemaker.72en\fminit\Plugins.ddd D+DD's set of plug-ins
H:\Adobe\framemaker.72en\fminit\Plugins The current working directory (a copy of either x.ori or x.ddd)
H:\Adobe\framemaker.72en\fminit\configui\CustomUI.cfg.ddd With the modifications of the SP toolbar.
H:\Adobe\framemaker.72en\fminit\configui\CustomUI.cfg Created as copy from x.ddd. This file does not exist in the original installation
H:\Adobe\framemaker.72en\fminit\fmdlg.dll.ori Saved original UI dll
H:\Adobe\framemaker.72en\fminit\fmdlg.dll.ddd D+DD's enhanced UI dll
H:\Adobe\framemaker.72en\fminit\fmdlg.dll The working dll (a copy of either x.ori or x.ddd)

If you also have installed two UI versions, you have twice this structure. The script noted hereafter does not fail if you do not have modified fmdlg.dll for any of the UI languages.

[To top/bottom of page]Putting it all together

A dialogue opens when I execute the script fm-start.ahk (an AutoHotkey script):

Dialog to start a version of FM installation

[To top/bottom of page] Reducing redundant files

With the growing of disks this section is no more that relevant …

Many files are the same for both language versions and hence need not to be installed twice. In the maker.ini file of the second language these are referenced with absolute paths. From Shlomo Perets' customised user interface also most of the files can be shared.

Most of the redundant files can not be deselected at installation time, the respective directories must be deleted after installation.

Be aware that Adobe has localised (translated) also the names of the directories in which the files reside. For example TemplateDir = templates (en) or = Schabl (de); Samples = samples (en) or Beispiele (de). So some care is necessary here.

English version of FrameMaker

maker.ini - section [Directories]

FilterDllDir=  filters
LanguageDir=   dict
OnlineManuals= omanuals
Samples=       samples
TemplateDir=   D:\_doc-std\Frame
Templates=     D:\_DOC-STD\Frame\FM-templates

maker.ini - section [files]

ConfigCustomUIFile=H:\adobe\FM-addons\Microtype\Toolbar_etc\MyCustomUI.cfg
EquationDoc=       H:\adobe\FM-addons\Microtype\Toolbar_etc\MyEquation.fm
ToolBarIniFile=    H:\adobe\FM-addons\Microtype\Toolbar_etc\MyFMToolbr.ini
UserDictionary=    D:\_DOC-STD\Frame\ddd_en.dct

German version of FrameMaker

maker.ini - section [Directories]

FilterDllDir=  H:\adobe\FrameMaker.6en\filters
LanguageDir=   H:\adobe\FrameMaker.6en\dict
OnlineManuals= H:\adobe\FrameMaker.6en\omanuals
Samples=       H:\adobe\FrameMaker.6en\samples
TemplateDir=   D:\_doc-std\Frame
Templates=     D:\_DOC-STD\Frame\FM-templates

maker.ini - section [files]

ConfigCustomUIFile=H:\adobe\FM-addons\Microtype\Toolbar_etc\MyCustomUI.cfg
SiteDictionary=    H:\adobe\FrameMaker.6en\dict\site.dct
ToolBarIniFile=    H:\adobe\FM-addons\Microtype\Toolbar_etc\MyFMToolbr_de.ini
UserDictionary=    D:\_DOC-STD\Frame\ddd_de.dct

[Main topics] [Navigation]
 URL:  Created: 2001-02-28  Updated:
© Docu+Design Daube, Zürich    
  Business of Docu + Design Daube Documentation issues Sharing information Klaus Daube's personal opinions Guests on this site Home of Docu + Design Daube To main page in this category To first page in series To previous page in series To next page in series To bottom of page To top of page Search this site Site map Mail to webmaster To bottom of page To top of page