| Register | FAQ | Calendar | Search | Today's Posts | Mark Forums Read |
|
#51
| |||
| |||
| Hi, actually MS Windows Common Controls 5.0 has comctl32.ocx name, and cmctrl32.ocx is some other control, perhaps this is a source of your problem. Furthermore - I would suggest you to use MS Windows Common Controls 6 then 5, you will get less compatibility problems -- Best regards, ___________ Alex Dybenko (MVP) http://alexdyb.blogspot.com http://www.PointLtd.com "ARC" <PCESoft@PCESoft.invalid> wrote in message news:5HXLi.53385$Um6.37186@newssvr12.news.prodigy. net... > As a further update... When I thought more on this, I realized that this > is not an active x error exactly. And then it dawned on me that I've seen > this one before. It was right after installing office 2000, apparently > there was a newer version of the cmctrl32.ocx, so instead of the reference > showing as "MS Windows Common Controls 5.0 SP2", it was MS Windows Common > Controls 6. And for whatever reason, 6 put up the error 438, whereas the > previous common controls did not. So I had switched back to common > controls 5 and forgot all about it. > > And this all makes sense now, because when I isntall cmctrl32.ocx, I have > the file set to version (so it won't replace if the version is newer), and > of course, the user must have a newer cmctrl32, which is the common > controls 6. > > I'll include my tree code, as there's something that 6 doesn't like that > common controls 5 had no trouble with: > > Public Function SetupTreeView(SetupType As String) > On Error GoTo ErrRtn > 'Add Node objects. > Dim f As Form, firstnode As String, nodX As Node, NodX2 As Node, NodX3 As > Node, NodX4 As Node, db As Database, rs As Recordset, rs2 As Recordset, > criteria As String, rs3 As Recordset, rs4 As Recordset, criteria2 As > String, criteria3 As String > ' Declare Node variable. > ' First node with 'Root' as text. > Set f = Forms!fParts.Form > f!PartCatsTreeView.Nodes.Clear > f!PartCatsTreeView.Nodes.Clear > goSub SetupTree > exitout: > ' > Exit Function > ' > SetupTree: > Set db = CurrentDb() > Set rs = db.OpenRecordset("qrycboFilter", DB_OPEN_SNAPSHOT) > Set rs2 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) > Set rs3 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) > Set rs4 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) > If Not rs.BOF Then > rs.MoveFirst > firstnode = rs!CatDescription > Do Until rs.EOF > 'Tree Level 1, Root > Set nodX = f!PartCatsTreeView.Nodes.Add(, , Chr(34) & > rs!PartCategoryID & Chr(34), rs!CatDescription) > ' This next node is a child of Node 1 ("Root"). > criteria = "CategoryOfID = " & rs!PartCategoryID > rs2.FindFirst criteria > Do Until rs2.NoMatch > 'Tree Level 2 > Set NodX2 = f!PartCatsTreeView.Nodes.Add(nodX, tvwChild, > Chr(34) & rs2!PartCategoryID & Chr(34), rs2!CatDescription) > criteria2 = "CategoryOfID = " & rs2!PartCategoryID > rs3.FindFirst criteria2 > Do Until rs3.NoMatch > 'Tree Level 3 > Set NodX3 = f!PartCatsTreeView.Nodes.Add(NodX2, tvwChild, > Chr(34) & rs3!PartCategoryID & Chr(34), rs3!CatDescription) > criteria3 = "CategoryOfID = " & rs3!PartCategoryID > rs4.FindFirst criteria3 > Do Until rs4.NoMatch > 'Tree Level 4 > Set NodX4 = f!PartCatsTreeView.Nodes.Add(NodX3, > tvwChild, Chr(34) & rs4!PartCategoryID & Chr(34), rs4!CatDescription) > rs4.FindNext criteria3 > Loop > rs3.FindNext criteria2 > Loop > rs2.FindNext criteria > Loop > rs.MoveNext > Loop > End If > rs.Close > rs2.Close > rs3.Close > rs4.Close > db.Close > Return > 'cboFilter_NodeClick (Me!cboFilter.Nodes(firstnode)) > 'Set Me!cboFilter.SelectedItem = Me!cboFilter.ListItems(1) > ErrRtn: > If Err = 94 Or Err = 13 Then > MsgBox "SetupTreeView: You are missing the part type descriptions for > one or more part types. Click on the Setup button, then Part Categories > tab and fill in any missing part type descriptions.", vbCritical, "Missing > Part Category Descriptions" > Exit Function > Else > MsgBox Err.Number & " - " & Err.Description & ", Function: > SetupTreeView", vbCritical > End If > Exit Function |
|
#52
| |||
| |||
| I tried to load common control 6 off the office 2000 developer cd, but it's still not showing as an option in references. Also, when I did try common controls 6, I began receiving the error 438 using the code sample in the previous post of mine. I couldn't see anything wrong with the code, but maybe something changed in referencing the nodes between v5 and v6 of common controls? Can you have a look at the code? Also, how can I get the common controls 6 to show as an option in references? Thanks! "Alex Dybenko" <alexdyb@PLEASE.cemi.NO.rssi.SPAM.ru> wrote in message news:uzaWAAABIHA.5160@TK2MSFTNGP05.phx.gbl... > Hi, > > actually MS Windows Common Controls 5.0 has comctl32.ocx name, and > cmctrl32.ocx is some other control, perhaps this is a source of your > problem. > Furthermore - I would suggest you to use MS Windows Common Controls 6 then > 5, you will get less compatibility problems > > -- > Best regards, > ___________ > Alex Dybenko (MVP) > http://alexdyb.blogspot.com > http://www.PointLtd.com > > "ARC" <PCESoft@PCESoft.invalid> wrote in message > news:5HXLi.53385$Um6.37186@newssvr12.news.prodigy. net... >> As a further update... When I thought more on this, I realized that this >> is not an active x error exactly. And then it dawned on me that I've seen >> this one before. It was right after installing office 2000, apparently >> there was a newer version of the cmctrl32.ocx, so instead of the >> reference showing as "MS Windows Common Controls 5.0 SP2", it was MS >> Windows Common Controls 6. And for whatever reason, 6 put up the error >> 438, whereas the previous common controls did not. So I had switched back >> to common controls 5 and forgot all about it. >> >> And this all makes sense now, because when I isntall cmctrl32.ocx, I have >> the file set to version (so it won't replace if the version is newer), >> and of course, the user must have a newer cmctrl32, which is the common >> controls 6. >> >> I'll include my tree code, as there's something that 6 doesn't like that >> common controls 5 had no trouble with: >> >> Public Function SetupTreeView(SetupType As String) >> On Error GoTo ErrRtn >> 'Add Node objects. >> Dim f As Form, firstnode As String, nodX As Node, NodX2 As Node, NodX3 As >> Node, NodX4 As Node, db As Database, rs As Recordset, rs2 As Recordset, >> criteria As String, rs3 As Recordset, rs4 As Recordset, criteria2 As >> String, criteria3 As String >> ' Declare Node variable. >> ' First node with 'Root' as text. >> Set f = Forms!fParts.Form >> f!PartCatsTreeView.Nodes.Clear >> f!PartCatsTreeView.Nodes.Clear >> goSub SetupTree >> exitout: >> ' >> Exit Function >> ' >> SetupTree: >> Set db = CurrentDb() >> Set rs = db.OpenRecordset("qrycboFilter", DB_OPEN_SNAPSHOT) >> Set rs2 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) >> Set rs3 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) >> Set rs4 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) >> If Not rs.BOF Then >> rs.MoveFirst >> firstnode = rs!CatDescription >> Do Until rs.EOF >> 'Tree Level 1, Root >> Set nodX = f!PartCatsTreeView.Nodes.Add(, , Chr(34) & >> rs!PartCategoryID & Chr(34), rs!CatDescription) >> ' This next node is a child of Node 1 ("Root"). >> criteria = "CategoryOfID = " & rs!PartCategoryID >> rs2.FindFirst criteria >> Do Until rs2.NoMatch >> 'Tree Level 2 >> Set NodX2 = f!PartCatsTreeView.Nodes.Add(nodX, tvwChild, >> Chr(34) & rs2!PartCategoryID & Chr(34), rs2!CatDescription) >> criteria2 = "CategoryOfID = " & rs2!PartCategoryID >> rs3.FindFirst criteria2 >> Do Until rs3.NoMatch >> 'Tree Level 3 >> Set NodX3 = f!PartCatsTreeView.Nodes.Add(NodX2, tvwChild, >> Chr(34) & rs3!PartCategoryID & Chr(34), rs3!CatDescription) >> criteria3 = "CategoryOfID = " & rs3!PartCategoryID >> rs4.FindFirst criteria3 >> Do Until rs4.NoMatch >> 'Tree Level 4 >> Set NodX4 = f!PartCatsTreeView.Nodes.Add(NodX3, >> tvwChild, Chr(34) & rs4!PartCategoryID & Chr(34), rs4!CatDescription) >> rs4.FindNext criteria3 >> Loop >> rs3.FindNext criteria2 >> Loop >> rs2.FindNext criteria >> Loop >> rs.MoveNext >> Loop >> End If >> rs.Close >> rs2.Close >> rs3.Close >> rs4.Close >> db.Close >> Return >> 'cboFilter_NodeClick (Me!cboFilter.Nodes(firstnode)) >> 'Set Me!cboFilter.SelectedItem = Me!cboFilter.ListItems(1) >> ErrRtn: >> If Err = 94 Or Err = 13 Then >> MsgBox "SetupTreeView: You are missing the part type descriptions for >> one or more part types. Click on the Setup button, then Part Categories >> tab and fill in any missing part type descriptions.", vbCritical, >> "Missing Part Category Descriptions" >> Exit Function >> Else >> MsgBox Err.Number & " - " & Err.Description & ", Function: >> SetupTreeView", vbCritical >> End If >> Exit Function > |
|
#53
| |||
| |||
| Try the following: remove all of v5 controls from all your forms remove reference to v5 compact mdb now open a form in designer and using menu insert-activex control - insert a treeveiw V6 to your form. This will add a reference to V6 controls also. so you can use only one version of controls - v5 or v6 -- Best regards, ___________ Alex Dybenko (MVP) http://alexdyb.blogspot.com http://www.PointLtd.com "ARC" <PCESoft@PCESoft.invalid> wrote in message news:iG6Mi.3000$4V6.913@newssvr14.news.prodigy.net ... >I tried to load common control 6 off the office 2000 developer cd, but it's >still not showing as an option in references. > > Also, when I did try common controls 6, I began receiving the error 438 > using the code sample in the previous post of mine. I couldn't see > anything wrong with the code, but maybe something changed in referencing > the nodes between v5 and v6 of common controls? Can you have a look at the > code? > > Also, how can I get the common controls 6 to show as an option in > references? Thanks! > "Alex Dybenko" <alexdyb@PLEASE.cemi.NO.rssi.SPAM.ru> wrote in message > news:uzaWAAABIHA.5160@TK2MSFTNGP05.phx.gbl... >> Hi, >> >> actually MS Windows Common Controls 5.0 has comctl32.ocx name, and >> cmctrl32.ocx is some other control, perhaps this is a source of your >> problem. >> Furthermore - I would suggest you to use MS Windows Common Controls 6 >> then 5, you will get less compatibility problems >> >> -- >> Best regards, >> ___________ >> Alex Dybenko (MVP) >> http://alexdyb.blogspot.com >> http://www.PointLtd.com >> >> "ARC" <PCESoft@PCESoft.invalid> wrote in message >> news:5HXLi.53385$Um6.37186@newssvr12.news.prodigy. net... >>> As a further update... When I thought more on this, I realized that this >>> is not an active x error exactly. And then it dawned on me that I've >>> seen this one before. It was right after installing office 2000, >>> apparently there was a newer version of the cmctrl32.ocx, so instead of >>> the reference showing as "MS Windows Common Controls 5.0 SP2", it was MS >>> Windows Common Controls 6. And for whatever reason, 6 put up the error >>> 438, whereas the previous common controls did not. So I had switched >>> back to common controls 5 and forgot all about it. >>> >>> And this all makes sense now, because when I isntall cmctrl32.ocx, I >>> have the file set to version (so it won't replace if the version is >>> newer), and of course, the user must have a newer cmctrl32, which is the >>> common controls 6. >>> >>> I'll include my tree code, as there's something that 6 doesn't like that >>> common controls 5 had no trouble with: >>> >>> Public Function SetupTreeView(SetupType As String) >>> On Error GoTo ErrRtn >>> 'Add Node objects. >>> Dim f As Form, firstnode As String, nodX As Node, NodX2 As Node, NodX3 >>> As Node, NodX4 As Node, db As Database, rs As Recordset, rs2 As >>> Recordset, criteria As String, rs3 As Recordset, rs4 As Recordset, >>> criteria2 As String, criteria3 As String >>> ' Declare Node variable. >>> ' First node with 'Root' as text. >>> Set f = Forms!fParts.Form >>> f!PartCatsTreeView.Nodes.Clear >>> f!PartCatsTreeView.Nodes.Clear >>> goSub SetupTree >>> exitout: >>> ' >>> Exit Function >>> ' >>> SetupTree: >>> Set db = CurrentDb() >>> Set rs = db.OpenRecordset("qrycboFilter", DB_OPEN_SNAPSHOT) >>> Set rs2 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) >>> Set rs3 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) >>> Set rs4 = db.OpenRecordset("qrycboFilterSub", DB_OPEN_SNAPSHOT) >>> If Not rs.BOF Then >>> rs.MoveFirst >>> firstnode = rs!CatDescription >>> Do Until rs.EOF >>> 'Tree Level 1, Root >>> Set nodX = f!PartCatsTreeView.Nodes.Add(, , Chr(34) & >>> rs!PartCategoryID & Chr(34), rs!CatDescription) >>> ' This next node is a child of Node 1 ("Root"). >>> criteria = "CategoryOfID = " & rs!PartCategoryID >>> rs2.FindFirst criteria >>> Do Until rs2.NoMatch >>> 'Tree Level 2 >>> Set NodX2 = f!PartCatsTreeView.Nodes.Add(nodX, tvwChild, >>> Chr(34) & rs2!PartCategoryID & Chr(34), rs2!CatDescription) >>> criteria2 = "CategoryOfID = " & rs2!PartCategoryID >>> rs3.FindFirst criteria2 >>> Do Until rs3.NoMatch >>> 'Tree Level 3 >>> Set NodX3 = f!PartCatsTreeView.Nodes.Add(NodX2, tvwChild, >>> Chr(34) & rs3!PartCategoryID & Chr(34), rs3!CatDescription) >>> criteria3 = "CategoryOfID = " & rs3!PartCategoryID >>> rs4.FindFirst criteria3 >>> Do Until rs4.NoMatch >>> 'Tree Level 4 >>> Set NodX4 = f!PartCatsTreeView.Nodes.Add(NodX3, >>> tvwChild, Chr(34) & rs4!PartCategoryID & Chr(34), rs4!CatDescription) >>> rs4.FindNext criteria3 >>> Loop >>> rs3.FindNext criteria2 >>> Loop >>> rs2.FindNext criteria >>> Loop >>> rs.MoveNext >>> Loop >>> End If >>> rs.Close >>> rs2.Close >>> rs3.Close >>> rs4.Close >>> db.Close >>> Return >>> 'cboFilter_NodeClick (Me!cboFilter.Nodes(firstnode)) >>> 'Set Me!cboFilter.SelectedItem = Me!cboFilter.ListItems(1) >>> ErrRtn: >>> If Err = 94 Or Err = 13 Then >>> MsgBox "SetupTreeView: You are missing the part type descriptions for >>> one or more part types. Click on the Setup button, then Part Categories >>> tab and fill in any missing part type descriptions.", vbCritical, >>> "Missing Part Category Descriptions" >>> Exit Function >>> Else >>> MsgBox Err.Number & " - " & Err.Description & ", Function: >>> SetupTreeView", vbCritical >>> End If >>> Exit Function >> > |
|
#54
| |||
| |||
| "ARC" <PCESoft@PCESoft.invalid> wrote: >I'll check it out, thanks, Tony! I guess in the short-term, I could update >my install .exe to always replace comctrl32.ocx, regardless of teh version, >to ensure that they have the same one that the developer has. Not a good idea as you may break some other app. >I was thinking back to the DOS days, and how you would set Path's in the >autoexec.bat. Based on the following I found on references, I wonder if I >should try installing comctrl32.ocx to the folder that my program is >launched from? It seems it there is a way to guarantee that my development >version of comtrl32.ocx will be the one that is used, the problem would be >solved: Oh yes, there is a procedure that might work. But I forget the details. MS added something to Windows XP along those lines. Creating a zero byte file the same name as your OCX but with an extension .local? Nope, that won't work in this situation as this is an MDB we're dealing with. DLL/COM Redirection on Windows http://msdn2.microsoft.com/en-us/library/Aa375142.aspx Tony -- Tony Toews, Microsoft Access MVP Please respond only in the newsgroups so that others can read the entire thread of messages. Microsoft Access Links, Hints, Tips & Accounting Systems at http://www.granite.ab.ca/accsmstr.htm Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/ |
![]() |
| Thread Tools | |
| Display Modes | |
In an effort to better serve ads to our visitors, cookies are used on objectmix.com. For more information, check out our Privacy Policy.