宅在家里的小白求教:怎样用sleep使程序延时

学习使我快乐(痛苦) 2020-02-01 09:41:19
查到的方法是Public declare Sub sleep lib "kernel32"(byval dwmilliseconds as long),运行时出现“实时错误453:找不到dll入口点sleep in kernel32”。然后去工程\引用\流览下找到kernel32.dll,却提示“不能将引用加入到指定文件”。最后考虑是不是没有注册dll,于是在windows系统下运行,告知“模块已加载,但找不到入口点dllregisterserver”。 这个问题困扰了几天都没有解决,求大神赐教! 或者还有什么办法可以延时呢?
...全文
190 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 3 楼 舉杯邀明月的回复:
你需要在各种“模块代码”开头部分用 Declare xxxxx Lib "XXXXX" 这样声明后,
 然后就可以“直接用”的 Function 或 Sub ,就叫“API函数”。
这不一定是“Win系统”的,也可以是第三方dll的。

而你说的 rnd() 这样的函数,就不是API了。
那是“开发环境内置函数”,跟系统无关的,只跟“语言环境”有关。
至于“自动更正大小写”,那是因为BASIC和VB/VBA 的“这家子”(所有版本),
 对于标识符都是不区分大小写的、并且IDE会“自动格式化代码”造成的。
明白了,谢谢您详细的讲解!
舉杯邀明月 2020-02-02
  • 打赏
  • 举报
回复
kernel32.dll不是“AcitveX COM DLL”,不能进行注册的。
把函数名首字母大写就可以了。
 API声明:必须要写成 Sleep

API函数的函数名大小写必须与DLL中的导出函数名完全匹配。
舉杯邀明月 2020-02-02
  • 打赏
  • 举报
回复
你需要在各种“模块代码”开头部分用 Declare xxxxx Lib "XXXXX" 这样声明后,
 然后就可以“直接用”的 Function 或 Sub ,就叫“API函数”。
这不一定是“Win系统”的,也可以是第三方dll的。

而你说的 rnd() 这样的函数,就不是API了。
那是“开发环境内置函数”,跟系统无关的,只跟“语言环境”有关。
至于“自动更正大小写”,那是因为BASIC和VB/VBA 的“这家子”(所有版本),
 对于标识符都是不区分大小写的、并且IDE会“自动格式化代码”造成的。

  • 打赏
  • 举报
回复
问题解决了,谢谢! 追问您一句,API函数是不是就是windows系统做好的一个函数,拿来用时必须与原来的函数名一模一样?但是有些函数,比如rnd等,如果大小写不一致,系统会自动更正为大写,也不会报错,这又是为什么呢?

7,785

社区成员

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

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