!!!请问用VB如何实现自身复制,到其它指定目录下呢???

cxydbylt 2005-08-09 12:55:31
在一次使用FileCopy时提示错误!百思不得其解,后来发现对一个已打开的文件使用 FileCopy 语句,则会产生错误!

于是我想到,如果一个程序想把自身复制到指定目录,要如何实现?

请高手能贴出代码,指点我等小辈!

!!!先谢了!!!
...全文
218 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoyaolz 2005-08-10
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
FileCopy App.Path & "\" & App.EXEName & ".exe", App.Path & "\" & Replace(Now, ":", ":") & App.EXEName & ".exe"
End Sub
App.Path & "\" & Replace(Now, ":", ":") 可改为你的路径
http://www.jiyi.org
loverpyh 2005-08-09
  • 打赏
  • 举报
回复
up
cxydbylt 2005-08-09
  • 打赏
  • 举报
回复
楼上的4个回复,是两种不同方法,我正在实验…………,先谢谢回帖!
小泽zz 2005-08-09
  • 打赏
  • 举报
回复
filecopy就可以了,即使你自身在运行,也是可以复制的

我试过了,没问题
cxydbylt 2005-08-09
  • 打赏
  • 举报
回复
用michael_zy(枫林)、maohaibin(永不言弃) 的方法实现了!

批处理文件的方法,正在试……
maohaibin 2005-08-09
  • 打赏
  • 举报
回复
用API函数CopyFile可以复制正在运行的exe到指定目录,当然也可以复制自身,代码如下:

声明API
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long

’ToPath为目的文件路径,FromPath为源文件路径
If Dir(ToPath) = "" Then
Call CopyFile(FromPath, ToPath, False)
End If
michael_zy 2005-08-09
  • 打赏
  • 举报
回复
我虽然没有试过楼上的方法,但是绝对是没有必要搞那么复杂的。。。。。
以下代码是刚刚测试过的~~~~~可以复制程序自身~~~~
Option Explicit

Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long


Private Declare Function GetModuleFileName Lib "kernel32" Alias "GetModuleFileNameA" (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long


Private Sub Form_Load()
Dim moduleName As String * 256
GetModuleFileName 0&, moduleName, 256&
CopyFile moduleName, App.Path & "\1.exe", 1
End Sub
of123 2005-08-09
  • 打赏
  • 举报
回复
1 启动另一个程序,让它来执行拷贝。一般是用批处理文件,因为它易于生成。在批处理文件中,循环执行复制操作,直至成功。

2 主程序退出,以便被复制。

3 批处理程序复制完成后,重新启动主程序。

4 此时主程序可以删除批处理文件。
FindExRen 2005-08-09
  • 打赏
  • 举报
回复
写个批处!~ 哎
qiqi5521 2005-08-09
  • 打赏
  • 举报
回复
正在运行的exe是可以进行读访问的,但是一定要用默认的共享模式,打开文件的时候不要用 Lock Read 或 Lock Write。

7,763

社区成员

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

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