引用DLL的问题!急!!!!!!

gx_sunny 2000-05-24 09:58:00
我在VB中引用一个DLL中的一个函数的时候老是报错,说是找不到该DLL的入口处,我找过编写这个DLL的人,他可以确认有这个函数,但是他不懂VB,所以也不知道为什么会这样.
老板要交东西了,我急啊,请各位指教!!!!!!!
...全文
277 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wulang 2000-06-07
  • 打赏
  • 举报
回复
同意tbase,在VB中很多对象都需要用set new来激活,否则就会出现"对象变量或with 变量未设置"的错误。
wqpaul 2000-06-07
  • 打赏
  • 举报
回复
我在给人家写程序,客户要求用计算机来考 Microsoft Excel 操作题并机器自动阅卷。
下面是我的程序片段,希望对你有帮助。
Dim e_App,e_Workbook,e_Sheet1,e_Sheet2 as Object
Set e_App = CreateObject("Excel.Application")
With e_App
.Visible = False
Set e_Workbook = .Workbooks.Add
Set e_Sheet1 = e_Workbook.Sheets(1) '第一张表
Set e_Sheet2 = e_Workbook.Sheets(2)
'一些处理
.Visible = True
End With

对于 Dim ExcelApp As Excel.Application
我觉得不是很好,至少我从来未成功过。
Dim ExcelApp as Excel.Application.9 等依赖于Office的版本号。可能有8,85,9等。谁又能保证安装后的机器上一定按一个版本Office呢。
太极狮头 2000-06-07
  • 打赏
  • 举报
回复
tan说的对
应该用
Dim ExcelApp As Excel.Application
set excelapp=new excel.application

用Set ExcelApp = GetObject("excel.application")不好



  
糊里糊涂 2000-06-07
  • 打赏
  • 举报
回复
你用Regedit打开注册表,从HKEY_CLASSES_ROOT主键下找一下,看他里面写的是Excel.application还是Excel.application.9或其他,然后在你程序里作相应改变即可。问题解决了可别不给分!
tanhl 2000-05-28
  • 打赏
  • 举报
回复
chang:
要想更方便地使用Excel,你在设置对象时可以将ExcelApp设为
Dim ExcelApp As Excel.Application
在打开文件后,加上一条语句:
  ExcelApp.Visible=True
此时应可看到,打开的文件并不是只读的,可以对打开的文件进行编辑与保存,所以我并不明白你所说的打开文件一直是只读是什么意思,也许是你后台一直有此文件的一个拷贝在运行?你可以试用“CTRL+ALT+DEL”来看看后台的进程。

另外,对文件操作完成后,应该注意将对象清空,即在最后加上
For Each EBK In ExcelApp.Workbooks 'EBK为Excel.WorkBook
EBK.Close
Next
  Set ExcelApp = Nothing

  有关利用VB及VBA混合编程的问题,你可以利用Excel自带的“录制宏”的功能将VBA所需代码录制下来,直接在VB中使用。

mxp 2000-05-26
  • 打赏
  • 举报
回复
vb6.0有时出现一些令人不能理解的问题比如:llm06的写法完全正确(先引用),但有可能出现您提到的错误,比如有时拷贝工程到另一台机器编程就会出现。
如果您属于以上情况可:
您可以新建一个工程,并且将窗体文件或其他类文件等加入到工程就会好用。
llm06 2000-05-26
  • 打赏
  • 举报
回复
dim excelapp as object
Set ExcelApp = CreateObject("excel.application")
ExcelApp.Workbooks.Open App.Path & "\pers.xls", ReadOnly:=False

以上代码确保运行无误
chang 2000-05-26
  • 打赏
  • 举报
回复
Thanks tanhl
我试用了一下很好再问一下为什么,excel 文件一直是只读的?
tanhl 2000-05-26
  • 打赏
  • 举报
回复
利用VB编程使用OLE时,要考虑到Object在OLE服务器中是否创建,如果已经创建,则用CreateObject时会出现 Chang所说的错误,llm06所写的程序并不完全,应为:


dim excelapp as object
on local error resume next
Set ExcelApp = GetObject("excel.application")

if excelapp is nothing then
Set ExcelApp = CreateObject("excel.application")
end if

on local error goto 0
ExcelApp.Workbooks.Open App.Path & "\pers.xls", ReadOnly:=False


yarao 2000-05-25
  • 打赏
  • 举报
回复
这是一个OLE自动化服务器的问题,能否把程序写全

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧