用VB实现这样的功能: 当我打开一个应用程序的时候,会自动打开一个我指定的文件夹? 求高手指导
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用VB实现这样的功能: 当我打开一个应用程序的时候,会自动打开一个我指定的文件夹? 求高手指导相关的知识,希望对你有一定的参考价值。
如题
我想大家都没有理解我的意思:
比如说有一个程序 A.EXE 一个文件 B
我要编写能实现这样功能的程序:
当它检测到A.EXE启动的时候,就马上打开文件B。
要求这VB程序能在后台运行的。
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Sub Form_Load()
ShellExecute hWnd, "open", "explorer.exe", "E:\张志晨\童谣\", "", 1
End Sub
............................................
请参阅:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Sub Command1_Click()
ShellExecute hWnd, "open", "explorer.exe", "/e,/select,E:\焦点文件.MP3", "", 1
End Sub
通过explorer.exe的开关实现.
Explorer.exe的参数如下:
命令格式Explorer [/n][/e][[,/root],[path]][[,/select],[path filename]]
参数说明
/n表示以“我的电脑”方式打开一个新的窗口,通常打开的是Windows安装分区的根目录。
/e表示以“资源管理器”方式打开一个新的窗口,通常打开的也是Windows安装分区的根目录。
/root,[path]表示打开指定的文件夹,/root表示只显示指定文件夹下面的文件(夹),不显示其它磁盘分区和文件夹;[path]表示指定的路径。
如果不加/root参数,而只用[path]参数,则可以显示其它磁盘分区和文件夹中的内容。另外,[path]还可以指定网络共享文件夹。
/select,[path filename]表示打开指定的文件夹并且选中指定的文件,[path filename]表示指定的路径和文件名。
如果不加/select参数,则系统会用相应的关联程序打开该文件。如果[path filename]不跟文件名就会打开该文件夹的上级目录并选中该文件夹。
张志晨
参考资料:http://hi.baidu.com/chen_bawang/blog/item/a889728dea875610b21bba19.html
参考技术A 嗯 就是用CommonDialog1控件,这个控件可以用来打开文件和保存文件。追问只是打开文件夹我知道用CommonDialog控件
但我要的是这样的:
if 进程A.EXE 存在 else
打开文件B
打开文件
Private Sub OpenGG_Click()
On Error GoTo err
Dim GGLuJin As String
GuangGaoTxt.Text = ""
CommonDialog1.Flags = cdlCFBoth
CommonDialog1.ShowOpen
GGLuJin = CommonDialog1.FileName
Open GGLuJin For Input As #1
Do While Not EOF(1)
Line Input #1, st '每次读取一个整行
GuangGaoTxt.Text = GuangGaoTxt.Text + st '+ vbCrLf换行
Loop
Close #1
err:
End Sub
保存文件
Private Sub SaveGG_Click()
On Error GoTo ErrHandler
Dim i As Integer
Dim pp As String
CommonDialog1.Filter = "文档文件(*.txt)|*.txt|所有文件(*.*)|*.*"
CommonDialog1.CancelError = True
CommonDialog1.ShowSave
Open CommonDialog1.FileName For Output As #1
pp = Mid(GuangGaoTxt.Text, 1, Len(GuangGaoTxt.Text))
Print #1, pp
'MsgBox "文件保存成功!", g + 64, "提示"
Close
MsgBox "广告已保存到 " & CommonDialog1.FileName
ErrHandler:
End Sub
能给点注释吗
追答Private Sub OpenGG_Click() ‘Button的Click事件
On Error GoTo err ‘运行出错调转
Dim GGLuJin As String 定义字符串
GuangGaoTxt.Text = "" 清空输入文本框
CommonDialog1.Flags = cdlCFBoth 设置CommonDialog
CommonDialog1.ShowOpen 设置CommonDialog为打开文件
GGLuJin = CommonDialog1.FileName 打开文件位置
Open GGLuJin For Input As #1 打开文件
Do While Not EOF(1) 文件没读完继续。。。到读完为止
Line Input #1, st '每次读取一个整行
GuangGaoTxt.Text = GuangGaoTxt.Text + st '+ vbCrLf换行
Loop
Close #1 关闭文件
err: 出现错误调到这里
End Sub
以下函数实现保存文件
Private Sub SaveGG_Click()
On Error GoTo ErrHandler
Dim i As Integer
Dim pp As String
CommonDialog1.Filter = "文档文件(*.txt)|*.txt|所有文件(*.*)|*.*" 设置保存文件的可选的文件类型
CommonDialog1.CancelError = True 允许取消
CommonDialog1.ShowSave 跳出保存对话框
Open CommonDialog1.FileName For Output As #1 打开文件
pp = Mid(GuangGaoTxt.Text, 1, Len(GuangGaoTxt.Text))
Print #1, pp 写文件
'MsgBox "文件保存成功!", g + 64, "提示" 提示保存文件成功
Close 关闭
MsgBox "广告已保存到 " & CommonDialog1.FileName 提示文件已经保存到哪里
ErrHandler: 发生错误调转到这里,结束函数
End Sub
CommonDialog1.InitDir = "C:\" '改成你想打开的路径
CommonDialog1.ShowOpen
End Sub 参考技术C 路过
ajax,请教用ajax实现一个功能的思路?
我在浏览页面的时候,这个页面显示的是一个表里的数据,这个时候这个表里的数据有更新,我浏览页面的时候接收到提示,告诉我有新数据。
我的思路是这样的,用一个每5秒执行一次的javascript方法(setInterval()),没5秒通过异步交互区访问这个数据库,查看这个数据库的记录条数是否多余刚打开页面时的条数,如果多了,就返回给页面一个信息。
但是我感觉这样好像不太好,尤其是判断是否多数据的时候,那位有经验的程序员给我个思路。
大部分优化是对SERVER端的处理,以及CALLBACK后的DOM操作。
你的思路没有问题,5秒请求一次肯定会增加服务器的负荷。个人觉得可以在SERVER端设置一个标志变量,用程序级的变量实现多用户共享,每当你的数据表条目发生变化时对其进行设置。这样,在AJAX请求时就不需要去专门查询数据库了,只需要判断标志变量然后决定后续操作就可以了。 参考技术A 没有 参考技术B 我只是提供以下想法 当你每更新一次 记录当前时间保存在cookie下,而数据库里每条数据记录下添加的时间,这样使用ajax比对时间 从数据库里返回比cookie时间大的时间的数据就行了 如果没有 不返回任何信息
以上是关于用VB实现这样的功能: 当我打开一个应用程序的时候,会自动打开一个我指定的文件夹? 求高手指导的主要内容,如果未能解决你的问题,请参考以下文章
vb 的webBrowser控件为啥有时候打开网页速度奇慢?用IE却正常.