VB6 GlobalMultiUse


Author: Dave
Date: 02.23.14 - 3:11pm



A feature i learned about a while back, but had never used yet, is the GlobalMultiUse class property in an ActiveX object.

For those not aware, any functions in this type of class, will be globally usable without a class name prefix, and without any initial class instantiation in any project that has a reference to the ActiveX dll or ocx.

This sounds like a very cool feature so that you can extend the base VB6 library with your most often used used functions.

I was always a little scared though about adding these to the core add on dll library i use because i wanted to make sure these functions would not all of a sudden create conflicts with copies of these same functions in local project modules.

Turns out everything works perfectly. If a local function exists with the same name, the local one is used. If you want to specifically use the one from the dll, you can call it through ProjectName.MethodName

The only time I ran into a problem with this (and I went looking for trouble) is when I had two GlobalMultiUse classes in the same ActiveX object, that both had the same the function name. It shows up twice in the object browser and intellisense. but you always get ambigious name detected. It would probably be fine if they were in different dlls though because you could use the projectname to switch between them. Also not even giving them different prototypes helped out. I am actually surprised the dll compiled.

Anyway I am glad they added this feature, its going to save a lot of repetitive code that I am always looking around for and copy and pasting into new projects.




Comments: (0)

 
Leave Comment:
Name:
Email: (not shown)
Message: (Required)
Math Question: 41 + 30 = ? followed by the letter: U 



About Me
More Blogs
Main Site
Posts: (All)
2024 ( 1 )
2023 ( 9 )
2022 ( 4 )
2021 ( 2 )
2020 ( 4 )
2019 ( 5 )
2018 ( 6 )
2017 ( 6 )
2016 ( 22 )
2015 ( 15 )
2014 (25)
     Query Last 12 Mos
     Progid from Interface ID
     VB6 to C Array Examples
     Human Readable Variant Type
     ScriptBasic COM Integration
     CodeView Addin
     ScriptBasic - Part 2
     Script Env
     MSCOMCTL Win7 Error
     printf override
     History Combo
     Disable IE
     API Hooking in VB6
     Addin Hook Events
     FastBuild Addin
     VB6 MemoryWindow
     Link C Obj Files into VB6
     Vb6 Standard Dlls
     CStr for Pascal
     Lazarus Review
     asprintf for VS
     VB6 GlobalMultiUse
     Scintilla in VB6
     Dynamic Highlight
     WinVerifyTrust, CryptMsgGetParam VB6
2013 ( 4 )
2012 ( 10 )
2011 ( 7 )
2010 ( 11 )
2009 ( 3 )