我正在寻找一种在保存表单之前或期间让 VB6 编辑控件的属性包的方法。
我们正在使用一个 activeX 控件 (AxisMediaControl),它似乎在其属性包名称中使用了空格,这在尝试保存控件所在的表单时会引发错误。
系统错误 &H80070057 (-2147024809)
此处描述了相同的问题: Source of a similar question, but i don't have *.h files ()
但由于我们使用已编译的 ActiveX,我无法编辑它处理写入属性的方式,而且我们无权访问 ActiveX 的源代码。
我已经设法创建了一种解决方法,在运行时加载控件,作为对象数组,但是这样我不会让它们索引以按索引捕获事件。
Dim Axis(1) As AxisMediaControl
For i% = 0 To 1
Set Axis(i%) = Controls.Add("AxisMediaControl.AxisMediaControl.1", "AMC" & i%)
Axis(i%).Tag = "CAM" + Format$(i%)
Next i%
' Play Video
With Axis(0)
.Top = 600
.Left = 240
.Width = 9135
.Height = 5535
.Visible = True
.StretchToFit = True
.MaintainAspectRatio = True
.EnableContextMenu = True
.MediaFile = VideoFile$
.play
End With
' Play Stream
With Axis(1)
.Top = 6840
.Left = 240
.Width = 9135
.Height = 5535
.Visible = True
.StretchToFit = True
.MaintainAspectRatio = True
.EnableContextMenu = True
.MediaFile = VideoStream$
.play
End With
ActiveX 可以在较年轻的 Visual Basic 版本(如 express 2005 或 vb.net)上正常工作,并且仅在 vb6 下出现。
有没有办法“编辑”属性保存到属性包的方式?
我可以编辑 dll 或 ocx 以使其行为不同并拥有以前不兼容的 ActiveX 的最新版本吗?我尝试在 dll 文件上使用 Resource Hacker 但无济于事,因为我的知识有限..