MaBe
  • MaBe
  • Newbie Topic Starter
2025-05-28T10:48:45Z
Hi, i'm evaluating igrid 7.5 for my application developed in VBA. I've a problem with imagelist 2.50.
I've registered in C:\WINDOWS\\SYSWOW64 using REGSVR32 as administrator, but it is not shown in references. So i tried updating registry using "HKCU_vbalIml240_10Tec.reg"
1.jpg

Click to View Image1 View(s)


Now the control is visible but is displaied as unknown control & when i try to use it the application raise an error "non registered interface".
2.jpg

Click to View Image1 View(s)


Have you got same advice for me.
Thamk you in advance
Igor/10Tec
2025-05-28T13:49:46Z
Short answer:

Most likely you are evaluating the ImageList OCX in 64-bit VBA. This OCX is a 32-bit control and cannot be used in 64-bit VBA.

Long answer:

The Modern Edition of iGrid that can be used in 64-bit VBA is a remake of our 32-bit iGrid ActiveX also called Classic Edition. The Classic Edition was developed with Visual Basic 6 that can produce only 32-bit executables, and that's why this OCX cannot be used in 64-bit VBA. The Modern Edition is developed in twinBASIC , a new VB6/VBA compatible development environment that can produce both 32-bit and 64-bit executables. We have managed to import the VB6 source code of the Classic Edition into twinBASIC and adapt it for the 64-bit CPU architecture. However, twinBASIC still does not support some VB6 features used by the ImageList OCX, and that's why we can't provide its 64-bit version for 64-bit VBA. We are going to consider providing a 64-bit ImageList OCX as soon as twinBASIC supports all the necessary functions.

But we have a solution of another kind allowing you to upload images into the Modern Edition of iGrid in 64-bit environment. The main idea is as follows. The ImageList OCX is a handy 'visual' wrapper for the Windows native image list functionality. We can provide the core part of this image list functionality via API functions in VBA code, and use the code-created ImageList object with iGrid as well. Examples of this are already included into the latest iGrid ActiveX Demo setup - see the iGrid_CImageList_32x64.accdb and iGrid_CImageList_32x64.xlsm files.

Perhaps, a possible drawback of this approach is that images must be stored on the hard drive as separate files. Some development environments like Microsoft Access have built-in tools to avoid this. For example, you can store images in tables of the Access database that can be used for this purpose. It can be the hidden MSysRessources table, or an OLE-Object field in a normal table.

I do not know whether all this will work for you, but I think this is the only viable way to use images with iGrid in 64-bit VBA apps at the moment.
MaBe
  • MaBe
  • Newbie Topic Starter
2025-05-29T06:40:32Z
Ok, thank you very much for your reply.
It resolves all my doubts.