Oliver
  • Oliver
  • Advanced Member Topic Starter
2013-12-12T16:59:11Z
There is a way to register iGrid (in fact, any ActiveX control) without admin-privileges.

The required registration of ActiveX controls is expected to be visible in the CLSID, Interfaces and Typelib subkeys of HKEY_CLASSES_ROOT. It's commonly known that HKEY_CLASSES_ROOT ist just a shorthand for HKEY_LOCAL_MACHINE\SOFTWARE\Classes\. What's much less common knowledge is that HKEY_CURRENT_USER\SOFTWARE\Classes\ is ALSO mapped to HKEY_CLASSES_ROOT.

The regsvr32 method above uses admin privileges to write the entries to HKEY_LOCAL_MACHINE\SOFTWARE\Classes\. With some registry snapshot/compare tool (Active Registry Monitor, for example), you can easily get a .reg-file of the keys that regsvr32 produces on a reference machine when you register the control (iGrid) for the first time. By replacing HKEY_LOCAL_MACHINE with HKEY_CURRENT_USER in that file, you get a .reg-File that any user can apply and that give him a working registration of the control!

After that, you only have to make sure the control will be installed to the same location on all machines as that location is referenced by the registration in many places. We usually do that by providing an installation script that basically just copies the required OCXs to a specific location on C: and then uses "reg import" to write the prepared .reg file to the HKEY_CURRENT_USER. The registration will work only for that single user, so every user-account on that machine has to repeat the install but it doesn't require admin rights. (Yay!)

On 64-bit Windows, take care to use something like the following in your batch-file, so it uses the correct path to the 32-bit (!!!) version of the registry-tools:


if exist "%SYSTEMROOT%\sysWOW64\regsvr32.exe" (
  echo Target machine is 64-bit...
  REM use 32-bit executables for compatibility with 32-bit Office/Access!
  set REGEXE=%SystemRoot%\SysWOW64\reg.exe
) else (
  echo Target machine is 32-bit...
  set REGEXE=%SystemRoot%\System32\reg.exe
)

%REGEXE% IMPORT \\myserver\myapplication\redist\HKCU_iGrid500_10Tec.reg
%REGEXE% IMPORT \\myserver\myapplication\redist\HKCU_vbalIml240_10Tec.reg

The following is tested to work with MS Office 2003 / 2007, specifically Access and Excel. It is currently unclear if this will work for VB6!

I have attached the files we currently use for that. Follow these steps to get the registration:

  1. Download the attached files
  2. rename the files to .reg (the forum doesn't allow .reg-Files)
  3. MODIFY the file's contents to match your location of the OCXs (or it WILL NOT WORK!)
    Just replace the part "C:\\SWEP\\Common\\iGrid\\" with the ocx-location on your systems. Please note the double-slash that separates the directories!
  4. Use the code above in a batch-file to do the registration. Make sure you change the paths of the .reg-files accordingly.


Also note that the files are for the version 5.0 of iGrid and version 2.40 of the vbalImgList. For other versions of the control, you have to create the registry diff yourself as the CLSIDs and Version numbers will be different and maybe even the number of entries!

  HKCU_iGrid500_10Tec.reg (38kb) downloaded 310 time(s).
  HKCU_vbalIml240_10Tec.reg (11kb) downloaded 193 time(s).
Oliver
  • Oliver
  • Advanced Member Topic Starter
2013-12-16T13:18:26Z
To remove the registration, use the files attached here in the same manner:


if exist "%SYSTEMROOT%\sysWOW64\regsvr32.exe" (
  echo Target machine is 64-bit...
  REM use 32-bit executables for compatibility with 32-bit Office/Access!
  set REGEXE=%SystemRoot%\SysWOW64\reg.exe
) else (
  echo Target machine is 32-bit...
  set REGEXE=%SystemRoot%\System32\reg.exe
)

%REGEXE% IMPORT \\myserver\myapplication\redist\HKCU_iGrid500_10Tec_remove.reg
%REGEXE% IMPORT \\myserver\myapplication\redist\HKCU_vbalIml240_10Tec_remove.reg

  HKCU_iGrid500_10Tec_remove.reg (6kb) downloaded 158 time(s).
  HKCU_vbalIml240_10Tec_remove.reg (2kb) downloaded 143 time(s).
Tony
2015-06-28T09:43:31Z
What program did you use to export the Registray CLSID's etc?

I am using iGrid 4.7, but of course, iGrid 5.0 CLSID's don't match. Trawling through the Registry, manually, is too hard. :-(

Thanks.
Oliver
  • Oliver
  • Advanced Member Topic Starter
2015-09-16T13:13:58Z
Originally Posted by: Tony 

What program did you use to export the Registray CLSID's etc?

I am using iGrid 4.7, but of course, iGrid 5.0 CLSID's don't match. Trawling through the Registry, manually, is too hard. :-(



Yes that's too hard. The one I used is this:
http://www.devicelock.com/arm/ 

You can download a demo or purchase it here:
https://secure.element5....ct.html?productid=139530 

Yes it's quite old by now and probably not longer in development but it works fine so far. I suggest using this based on a VirtualMachine, so you can actually go back to the state before you registered the control the first time.
Igor/10Tec
2017-01-23T09:43:19Z
From time to time, we are asked about the reg file similar to HKCU_iGrid500_10Tec.reg for iGrid 6.0. Unfortunately, Oliver no longer develops apps using iGrid and can't help us. But we created the HKCU installation reg file for iGrid v6 using Oliver's guide:

  HKCU_iGrid600_10Tec.reg (41kb) downloaded 116 time(s).

The corresponding uninstall file is below:

  HKCU_iGrid600_10Tec_remove.reg (6kb) downloaded 84 time(s).
Igor/10Tec
2017-06-27T14:28:20Z
Below you'll find the reg and bat files for iGrid 6.50 and 10Tec version of vbAccelrator ImageList 2.50.

Before using them, replace "D:\\BIN\\OCX" with the full path to the folder with the OCX in the .reg files. Note double slash as the folder separator.

iGrid 6.5 installation:
  HKCU_iGrid650_install.bat (1kb) downloaded 128 time(s).
  HKCU_iGrid650_install.reg (52kb) downloaded 124 time(s).

iGrid 6.5 removal:
  HKCU_iGrid650_remove.bat (1kb) downloaded 96 time(s).
  HKCU_iGrid650_remove.reg (9kb) downloaded 99 time(s).

ImageList 2.5 installation:
  HKCU_vbalIml250_install.bat (1kb) downloaded 87 time(s).
  HKCU_vbalIml250_install.reg (14kb) downloaded 97 time(s).

ImageList 2.5 removal:
  HKCU_vbalIml250_remove.bat (1kb) downloaded 82 time(s).
  HKCU_vbalIml250_remove.reg (3kb) downloaded 93 time(s).

For silent installation, remove the last @pause command in the .bat files.

The .reg files must be placed in the same folder with the corresponding .bat file.
danielOber
2020-01-07T06:39:09Z
It would be very much appreciated if anyone could be so kind as to provide the .bat and .reg files for the current iGrid version "iGrid700_10Tec.ocx"

Thanks in advance
Igor/10Tec
2020-01-15T15:49:16Z
Below are the reg and bat files for iGrid 7.0.

Before using them, replace "C:\\OCX" with the full path to the folder with the iGrid OCX (only in the HKCU_iGrid700_install.reg file). Note double slash as the folder separator.

iGrid 7.0 installation:
  HKCU_iGrid700_install.bat (1kb) downloaded 63 time(s).
  HKCU_iGrid700_install.reg (41kb) downloaded 69 time(s).

iGrid 7.0 removal:
  HKCU_iGrid700_remove.bat (1kb) downloaded 61 time(s).
  HKCU_iGrid700_remove.reg (6kb) downloaded 56 time(s).

For silent installation, remove the last @pause command in the .bat files.

The .reg files must be placed in the same folder with the corresponding .bat files.
Igor/10Tec
2021-09-24T16:19:15Z
Here are the files for iGrid 7.5:

  HKCU_iGrid750_install.bat (1kb) downloaded 59 time(s).
  HKCU_iGrid750_remove.reg (6kb) downloaded 40 time(s).

  HKCU_iGrid750_remove.bat (1kb) downloaded 42 time(s).
  HKCU_iGrid750_install.reg (41kb) downloaded 50 time(s).

Don't forget to replace "C:\\OCX" with the full path to your folder containing the iGrid OCX.