Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
Oliver  
#1 Posted : Thursday, December 12, 2013 4:59:11 PM(UTC)
Oliver

Rank: Advanced Member

Groups: Registered
Joined: 11/28/2013(UTC)
Posts: 36
Location: Munich

Was thanked: 4 time(s) in 4 post(s)
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:

Code:

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 121 time(s).
HKCU_vbalIml240_10Tec.reg (11kb) downloaded 75 time(s).

Edited by moderator Wednesday, July 1, 2015 10:38:39 AM(UTC)  | Reason: Igor/10Tec: Fixed broken attachment links and reuploaded them as .reg files

Oliver  
#2 Posted : Monday, December 16, 2013 1:18:26 PM(UTC)
Oliver

Rank: Advanced Member

Groups: Registered
Joined: 11/28/2013(UTC)
Posts: 36
Location: Munich

Was thanked: 4 time(s) in 4 post(s)
To remove the registration, use the files attached here in the same manner:

Code:

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 66 time(s).
HKCU_vbalIml240_10Tec_remove.reg (2kb) downloaded 55 time(s).

Edited by moderator Wednesday, July 1, 2015 10:39:57 AM(UTC)  | Reason: Igor/10Tec: Fixed broken attachment links and reuploaded them as .reg files

Tony  
#3 Posted : Sunday, June 28, 2015 9:43:31 AM(UTC)
Tony

Rank: Newbie

Groups: Registered
Joined: 6/14/2015(UTC)
Posts: 4
Location: Brisbane

Thanks: 1 times
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  
#4 Posted : Wednesday, September 16, 2015 1:13:58 PM(UTC)
Oliver

Rank: Advanced Member

Groups: Registered
Joined: 11/28/2013(UTC)
Posts: 36
Location: Munich

Was thanked: 4 time(s) in 4 post(s)
Originally Posted by: Tony Go to Quoted Post
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  
#5 Posted : Monday, January 23, 2017 9:43:19 AM(UTC)
Igor/10Tec

Rank: Administration

Groups: Administrators, Forum Moderator
Joined: 1/17/2011(UTC)
Posts: 761

Thanks: 11 times
Was thanked: 99 time(s) in 99 post(s)
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, but we tried to create this reg file for iGrid v6 using Oliver's guide:

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

Try this file and let us know whether it registers iGrid v6 correctly.
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.