加载控件的简单问题,散分!!!

lhh 2003-07-28 02:49:11
本人在一个vb写的exe中使用了一个控件(自己写的ocx),但在程序启动时想检查该控件是否为最新,如不是则从服务器下载更新,通常我们把ocx加入部件中,但这样根本就无法对该ocx文件作任何操作(已经在exe中加载了),故对该ocx作loadlibrary操作而不加入部件,但是这样在程序中又不知道如何定义ocx空件对象,故请教各位有和解决方法,请给出示例code,谢谢!!
...全文
10 点赞 收藏 15
写回复
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zgqcool2002 2003-10-25
up
回复
Lucky527 2003-10-25
学习 up!
回复
DarkChampion 2003-08-20
关注~~~~~~~
回复
sunnycai 2003-08-06
我想何必单独更新ocx呢,要更新连exe也一并更新不是更好吗
回复
since1990 2003-08-06
帮你 up
回复
ufcr 2003-08-06
Dim i As Integer

VB.Licenses.Clear
progID 是OCX的工程名 +| OCX 名 priOCX.OCXName

For i = 0 To VB.Licenses.Count - 1
If VB.Licenses.Item(i).ProgID = ProgID Then
i = 8888
Exit For
End If
Next i
If i <> 8888 Then
VB.Licenses.Add ProgID
End If
回复
since1990 2003-08-06
帮你 up
回复
diyee 2003-08-05
up
回复
Muzhu 2003-08-05
ok
回复
goodname008 2003-07-30
' 以Flash控件为例,先把控件加入部件,然后用代码在程序运行时载入
' 编译的时候在选项中把“删除有关未使用的 ActiveX 控件的信息”前面的钩去掉

Option Explicit
Dim WithEvents obj As ShockwaveFlashObjectsCtl.ShockwaveFlash

Private Sub Command1_Click()
Set obj = Controls.Add("ShockwaveFlash.ShockwaveFlash.1", "Flash1", Me)
With obj
.Left = 1000
.Top = 1000
.Height = 4000
.Width = 4000
.Visible = True
End With
End Sub

你试试看行不行,我总觉得如果你升级了控件,是不是在程序中的代码也要更新,如果是这样的话,还不如控件和.exe一起打包,一起更新,而如果是一起更新的话也不用这么麻烦了,该怎么写程序就怎么写程序不就行了,升级时该升级的文件都打成升级包一起一升级,OK了。
回复
lihh 2003-07-29
同意goodname008,先用loadlibrary加载你自己的ocx,然后定义它,control,object。。。等等多试几个,调试调试呀!!!总会好的
回复
lhh 2003-07-29
to kmzs(山水岿濛) 这个办法也太过于复杂了吧,那样做就失去很多意义了

to goodname008(卢培培,想学好VB) :办法不错可以定义控件对象,但是Dim cmdOK As CommandButton中的CommandButton应该用什么来替换呢?我用过control,object.但这样做,控件对象都只能用其中的属性,但它的方法却不能用,请各位高手指点,谢谢!!!
回复
lhh 2003-07-29
to kmzs(山水岿濛) 这个办法也太过于复杂了吧,那样做就失去很多意义了

to goodname008(卢培培,想学好VB) :办法不错可以定义控件对象,但是Dim cmdOK As CommandButton中的CommandButton应该用什么来替换呢?我用过control,object.但这样做,控件对象都只能用其中的属性,但它的方法却不能用,请各位高手指点,谢谢!!!
回复
kmzs 2003-07-28
自己写个壳,启动时由壳来更新,更新完成后运行内部程序,试试看说不定是个创举!
回复
goodname008 2003-07-28
Option Explicit

Private Sub Command1_Click()
Dim cmdOK As CommandButton
Set cmdOK = Controls.Add("VB.CommandButton", "cmdOK", Me)
With cmdOK
.Left = 200
.Top = 200
.Width = 1000
.Height = 400
.Caption = "确定"
.Visible = True
End With
End Sub


自制ocx差不多,多点步骤吧。
回复
发动态
发帖子
VB基础类
创建于2007-09-28

7453

社区成员

VB 基础类
申请成为版主
社区公告
暂无公告