Query Objects for Initialization State

Query Objects for Initialization State

In a large app, or even a small one, you can use Property Let and Property Get to make sure necessary variables and subsystems are initialized. This code is from a large ADSI-based program in production:

 Public Property Get ADSIInitialized() As Boolean	If dso Is Nothing Then		ADSIInitialized = False	Else		ADSIInitialized = True	End IfEnd PropertyPublic Property Let ADSIInitialized(aValue As Boolean)	If aValue = False Then ' Shut everything off		Set cont = Nothing		Set dso = Nothing	Else		' Make sure we aren't already initialized		If dso Is Nothing Then 		' Turn everything back on			Set dso = GetObject("WinNT:")			Set cont = dso.OpenDSObject("WinNT://" _				& Server, "", "", ADS_SECURE_AUTHENTICATION)		End If	End IfEnd Property

Now it’s trivial to verify this component has been initialized and initialize it if necessary:

 If Not ADSIInitialized Then ADSIInitialized = True
See also  Does It Make Sense to Splurge on a Laptop?

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist