大家好,我想请教如何使用相对路径来引用别人制作的ocx控件

虽然当时可以使用,但使用后引用的ocx控件是一个绝对路径,此时如果把整个工程文件夹移到另一个位置,再打开就会出错,该如何解决呢,总不能把OCX控件移到系统文件夹吧,那样我... 虽然当时可以使用,但使用后引用的ocx控件是一个绝对路径,此时如果把整个工程文件夹移到另一个位置,再打开就会出错,该如何解决呢,总不能把OCX控件移到系统文件夹吧,那样我想把整个工程放到别人的电脑上又无法使用了 展开
 我来答
匿名用户
2011-04-17
展开全部
3.50 icePub_regOcx

l 函数原型:
int WINAPI icePub_regOcx(char *strOcxFilename)
输入:strOcxFilename OCX控件带路径文件名
输出:

l VC连接Lib方式声明
__declspec(dllexport)
int WINAPI icePub_regOcx(char *strOcxFilename);

l 动态调用例程
VC sample代码:
typedef int (WINAPI ICEPUB_REGOCX)(char *strDomain);
ICEPUB_REGOCX *icePub_regOcx = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");
if(hDLLDrv)
{
icePub_regOcx =(ICEPUB_REGOCX *)GetProcAddress(hDLLDrv,"icePub_regOcx");
}
if(icePub_regOcx)
{
icePub_regOcx ("my.ocx");
}
if(hDLLDrv)
FreeLibrary(hDLLDrv);

VB sample 代码:
Private Declare Function icePub_regOcx Lib "icePubDll.dll" (ByVal strOcxFilename As String) As Integer

Dim a2 As Integer

a2=icePub_regOcx(App.Path+"\my.ocx")
追问
问题是我设计时就需要在窗体上画一个控件,因此必须设计时先在VB的部件菜单中选中当前路径下的控件,这样我想再把整个工程文件夹一个另一个地方再打开就会出错,这该咋办啊
追答
不影响,再次打开工程或运行编译好后的exe,会自动从操作系统里找此控件的注册信息,而你已经事先在别人的机器里注册了-通常在安装完自己的程序后做控件注册操作或在自己的程序运行一开始(注意一定要在装载窗体之前)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式