为何用 Name As 移动文件有时能行有时不行?

ssq119 2008-01-16 09:52:38
我在一VB6程序中要操作Word文档,因涉及到处理文档中插图,要用到剪贴板,为了防止程序运行过程中弹出Word提示框(如“剪贴板中有大量图片,要应用到其他程序……”),所以要清空剪贴板,我先引用API函数:

Private Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function CloseClipboard Lib "user32" () As Long
Private Declare Function GetClipboardData Lib "user32" (ByVal uFormat As Long) As Long
Private Declare Function EmptyClipboard Lib "user32" () As Long

然后写下:
OpenClipboard (0)
EmptyClipboard
CloseClipboard
可以达到目的。但我在程序中还要将Word文档在处理完后移动到另一目录下,写下:

'在文档所在目录下建立DOC_BAK目录,用以备份源文档
If Dir(aDoc.Path & "\DOC_BAK", vbDirectory) = "" Then MkDir aDoc.Path & "\DOC_BAK"
'为复制备份源文档做准备(要带全路径及文件名,且只能在文档被Word释放后才能复制,故在后面实现)
Dim str1 As String, str2 As String
str1 = aDoc.Path & "\" & aDoc.Name
str2 = aDoc.Path & "\DOC_BAK" & "\" & aDoc.Name

当程序释放Word文档和Word后,再写下移动文件的代码:
Name str1 As str2

奇怪的是:
如果处理Word文档时,若文档中不含插图,程序不会调用剪贴板,此时移动文件能成功
但当处理Word文档时,若文档中含有插图,程序就会调用剪贴板,此时移动文件就不能成功

我百思不解,望高手赐教。谢谢!
...全文
279 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiong_chi 2008-01-19
  • 打赏
  • 举报
回复
可能是在某个模块中调用了剪贴板,特殊是针对文档中嵌入式图处理后可能有此情况。
ssq119 2008-01-19
  • 打赏
  • 举报
回复
在5楼的启发下,问题已解决。
ssq119 2008-01-16
  • 打赏
  • 举报
回复
MoveFile用过,FileCopy也用过,效果都一样。
关掉Word文档和释放WORD的命令都在之前用到了。
ssq119 2008-01-16
  • 打赏
  • 举报
回复
MoveFile用过,FileCopy也用过,效果都一样。
关掉Word文档和释放WORD的命令都在之前用到了。
caofusheng 2008-01-16
  • 打赏
  • 举报
回复
可能是哪儿的处理没有关掉,导致文件正在使用。使Name as 失败
chenhui530 2008-01-16
  • 打赏
  • 举报
回复
使用MoveFile呢?
Visual Studio Code 是由微软开发的一款免费、开源、跨平台的现代化轻量级代码编辑器,自发布以来迅速成为全球开发者最受欢迎的工具之一。它结合了编辑器的轻便性和集成开发环境(IDE)的强大功能,支持多种编程语言和开发场景,核心特点: 1. 跨平台支持 可在 Windows、macOS 和 Linux 上运行,保持一致的用户体验。 2. 轻量级与高性能 启动速度快,占用资源少,适合处理大型项目或低配置设备。 3. 智能代码补全 内置 IntelliSense(智能感知),提供代码提示、参数信息、快速修复等功能,支持 JavaScript、TypeScript、Python、C++ 等主流语言。 4. 内置终端 直接在编辑器内打开集成终端(支持 PowerShell、CMD、Bash 等),方便执行命令行操作。 5. 调试工具 内置调试器,支持断点、变量监视、调用堆栈查看等,无需离开编辑器即可调试代码。 6. Git 集成 直接通过侧边栏管理 Git 仓库,支持提交、分支切换、冲突解决等操作。 7. 丰富的扩展生态系统 通过 Extensions Marketplace 可安装数千款插件,扩展功能包括: 语言支持:如 Java、Go、Rust 等。 主题与图标:自定义界面风格。 工具集成:如 Docker、Kubernetes、数据库连接等。 效率工具:如 REST Client、Live Server 等。 8. 自定义与主题 支持修改键盘快捷键、界面主题、文件图标等,打造个性化开发环境。 9. 多光标编辑 按住 Alt(Windows/Linux)或 Option(macOS)点击可添加多个光标,同时编辑多处代码。 10. 远程开发支持 通过 Remote - SSH、Remote - Containers 等扩展,可直接连接远程服务器或开发容器,实现无缝协作。

7,785

社区成员

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

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