Any ideas?
The registry settings to use are pointed at by the "<<<<<<<<" strings, but I
have put all registry settings that I found just to make sure I would not
leave anythng out.
To get the current application, you must first get the <strUUID>
and the CurVer.
then use that to build the registry key-path to get the installed diredtory
of the exe.
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\LocalServer32\(Default)
When doing the installation script, to detect any pre-2002 exe, remember
that Visio went from VISIO32.EXE (pre-2002) to VISIO.EXE (2002) file name.
I use the InstallShield 5.5)
I would always first detect if the regKey exist first since sometime the key
just *is* without any value being set and they are not all at the same
place. Visio 5 is like that.
Then if it has a value, I would pick it up. All other Visios are like that.
If anybody have any other ideas.....
Those values were picked up from Win98 and Win NT4.0
============================================================================
=================================
Visio 5b
HKEY_CLASSES_ROOT\Visio.Application\CLSID\(Default) = <strUUID>
HKEY_CLASSES_ROOT\Visio.Application\CurVer\(Default) = "Visio.Application.5"
----------------------------------------------------------------------------
-
will have the following keys
HKEY_CLASSES_ROOT\Visio.Application.3\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.4\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.5\CLSID\(Default) = "<strUUID>"
----------------------------------------------------------------------------
-
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\LocalServer32\(Default)
= "<path>\Visio32.exe /Automation"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\ProgID\(Default) =
"Visio.Application.5"
' to determine if this is really Visio 5, lookup this key:
HKEY_LOCAL_MACHINE\SOFTWARE\Visio\Visio Standard\
(CurrentlyRegisteredVersion) = "5b"
HKEY_LOCAL_MACHINE\SOFTWARE\Visio\Visio Standard\5.0\ (InstallDir) = <path>
<<<<<<<<<<<<<<<<<<<<<<<<<<<<
detect the key itself.
HKEY_LOCAL_MACHINE\SOFTWARE\Visio\Visio Standard\5.0\ (Language) = <0x409>
'1033 in Hex
============================================================================
=================================
Visio 2000
HKEY_CLASSES_ROOT\Visio.Application\CLSID\(Default) = <strUUID>
HKEY_CLASSES_ROOT\Visio.Application\CurVer\(Default) = "Visio.Application.6"
----------------------------------------------------------------------------
-
will have the following keys
HKEY_CLASSES_ROOT\Visio.Application.3\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.4\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.5\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.6\CLSID\(Default) = "<strUUID>"
----------------------------------------------------------------------------
-
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\LocalServer32\(Default)
= <path>\Visio32.exe /Automation
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\ProgID\(Default) =
"Visio.Application.6"
' to determine if this is really MS Visio 200, lookup this key:
HKEY_LOCAL_MACHINE\SOFTWARE\Visio\Visio 2000\ (CurrentlyRegisteredVersion) =
"6.0" 'type REG_SZ <<<<<<<<<<<<
detect the key value.
============================================================================
=================================
MS Visio 2000
HKEY_CLASSES_ROOT\Visio.Application\CLSID\(Default) = <strUUID>
HKEY_CLASSES_ROOT\Visio.Application\CurVer\(Default) = "Visio.Application.6"
----------------------------------------------------------------------------
-
will have the following keys
HKEY_CLASSES_ROOT\Visio.Application.3\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.4\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.5\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.6\CLSID\(Default) = "<strUUID>"
----------------------------------------------------------------------------
-
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\LocalServer32\(Default)
= <path>\Visio32.exe /Automation
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\ProgID\(Default) =
"Visio.Application.6"
' to determine if this is really MS Visio 200, lookup this key:
HKEY_LOCAL_MACHINE\SOFTWARE\Visio\Visio 2000\ (CurrentlyRegisteredVersion) =
"6.0" 'typeREG_SZ <<<<<<<<
detect the key value.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Visio\6.0\ (Default) = (Value not set)
<<<<<<<<<<<<<<<<<<<<<<<<<<<<
============================================================================
=================================
MS Visio 2002
HKEY_CLASSES_ROOT\Visio.Application\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application\CurVer\(Default) = "Visio.Application.6"
----------------------------------------------------------------------------
-
will have the following keys
HKEY_CLASSES_ROOT\Visio.Application.3\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.4\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.5\CLSID\(Default) = "<strUUID>"
HKEY_CLASSES_ROOT\Visio.Application.6\CLSID\(Default) = "<strUUID>"
----------------------------------------------------------------------------
-
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\LocalServer32\(Default)
= "<path>\Visio.exe /Automation"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<strUUID>\ProgID\(Default) =
"Visio.Application.6"
' to determine if this is really MS Visio 2002, lookup this key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Visio\ (CurrentlyRegisteredVersion) =
"10.0" <<<<<<<<<<<<<<<<<<<<<<<<
detect the key value.
============================================================================
=================================
"Number6" <richard...@interfacing.com> wrote in message
news:u7eoTEVNBHA.1476@tkmsftngp03...
In German, under Visio 5 and MS Visio 2000/2002 the Solution folder is
called Loesungen and the Sample folder is called Biespiel (singular)
In Visio 2000, Solutions is called "Lösungen" and Sample is called Biespiele
(plural.)
Have fun.
"Number6" <richard...@interfacing.com> wrote in message
news:eF#1lLwNBHA.1676@tkmsftngp05...