查看完整版本: 怎样向某一程序的文本框中自动输入字符后又自动执行程序?

lixian39 2007-6-16 20:21

怎样向某一程序的文本框中自动输入字符后又自动执行程序?

例如,自动打开某一查找程序,在查找对象的文本框中自动输入我要查找的内容“basic”后,自动执行查找程序。

Nothing 2007-6-16 21:41

不明白你的意思?
是自动运行程序还是查找文件?

lixian39 2007-6-17 07:08

先是自动在文本框中输入要查找的内容,然后再自动运行查找程序。
用VB编程来完成以上功能。

Nothing 2007-6-17 08:30

先建个文本框,可以输入内容,然后用dir命令查找文件。

Nothing 2007-6-17 08:31

[table=95%][tr][td][color=#000000]
          [color=#0000FF]Option[/color] [color=#0000FF]Explicit[/color]
          [color=#0000FF]Dim[/color] filesearch As [color=#FF0000]String[/color]
          [color=#0000FF]Dim[/color] findflag As Boolean
            
          [color=#0000CC]'[/color] 清空搜索结果
          [color=#0000FF]Private[/color] [color=#0000FF]Sub[/color] clrcmd_Click[color=#0000CC]([/color][color=#0000CC])[/color]
                  lstfiles[color=#0000CC].[/color]Clear
          [color=#0000FF]End[/color] [color=#0000FF]Sub[/color]
            
          [color=#0000CC]'[/color] 开始查找文件
          [color=#0000FF]Private[/color] [color=#0000FF]Sub[/color] cmdgo_Click[color=#0000CC]([/color][color=#0000CC])[/color]
          [color=#0000FF]Dim[/color] starttime As Single
          [color=#0000FF]Dim[/color] i As Integer
          [color=#0000FF]Dim[/color] Add As Boolean
            
          lstfiles[color=#0000CC].[/color]Clear [color=#0000CC]'[/color]查找文件之前先清空结果
          lstdirs[color=#0000CC].[/color]Clear
          findflag [color=#0000CC]=[/color] [color=#0000FF]True[/color] [color=#0000CC]'[/color]设置查找标志
          stopcmd[color=#0000CC].[/color]Enabled [color=#0000CC]=[/color] [color=#0000FF]True[/color] [color=#0000CC]'[/color]设置停止查找按钮为可用
          clrcmd[color=#0000CC].[/color]Enabled [color=#0000CC]=[/color] [color=#0000FF]False[/color] [color=#0000CC]'[/color]设置清空结果按钮为不可用
          starttime [color=#0000CC]=[/color] Timer [color=#0000CC]'[/color]记录开始查找时刻
          filesearch [color=#0000CC]=[/color] Combo1[color=#0000CC].[/color]Text
          [color=#0000CC]'[/color] 将查找文件加入到组合框中
          [color=#0000FF]For[/color] i [color=#0000CC]=[/color] 0 [color=#0000FF]To[/color] Combo1[color=#0000CC].[/color]ListCount [color=#0000CC]-[/color] 1
                  [color=#0000FF]If[/color] Combo1[color=#0000CC].[/color]List[color=#0000CC]([/color]i[color=#0000CC])[/color] [color=#0000CC]<[/color][color=#0000CC]>[/color] Combo1[color=#0000CC].[/color]Text [color=#0000FF]Then[/color]
                          Add [color=#0000CC]=[/color] [color=#0000FF]True[/color]
                  [color=#0000FF]Else[/color]
                          Add [color=#0000CC]=[/color] [color=#0000FF]False[/color]
                  [color=#0000FF]End[/color] [color=#0000FF]If[/color]
          [color=#0000FF]Next[/color]
          [color=#0000FF]If[/color] Add [color=#0000CC]=[/color] [color=#0000FF]True[/color] [color=#0000FF]Then[/color]
                  Combo1[color=#0000CC].[/color]AddItem [color=#0000CC]([/color]Combo1[color=#0000CC].[/color]Text[color=#0000CC])[/color]
          [color=#0000FF]End[/color] [color=#0000FF]If[/color]
          lstdirs[color=#0000CC].[/color]AddItem [color=#0000CC]([/color]Drive1[color=#0000CC].[/color]Drive [color=#0000CC]&[/color] [color=#FF00FF]"\"[/color][color=#0000CC])[/color]
          [color=#0000CC]'[/color] 执行查找文件
          [color=#0000FF]Do[/color]
                  status[color=#0000CC].[/color]Caption [color=#0000CC]=[/color] [color=#FF00FF]"Searching . . . "[/color] [color=#0000CC]&[/color] lstdirs[color=#0000CC].[/color]List[color=#0000CC]([/color]0[color=#0000CC])[/color]
                  [color=#0000CC]'[/color] 调用函数
                  findfilesdir lstdirs[color=#0000CC].[/color]List[color=#0000CC]([/color]0[color=#0000CC])[/color]
                  [color=#0000CC]'[/color] 从目录列表中移除
                  lstdirs[color=#0000CC].[/color]RemoveItem 0
                  [color=#0000CC]'[/color] 中途退出查找
                  [color=#0000FF]If[/color] findflag [color=#0000CC]=[/color] [color=#0000FF]False[/color] [color=#0000FF]Then[/color]
                      [color=#0000FF]Exit[/color] [color=#0000FF]Do[/color]
                  [color=#0000FF]End[/color] [color=#0000FF]If[/color]
          [color=#0000FF]Loop[/color] [color=#0000FF]Until[/color] lstdirs[color=#0000CC].[/color]ListCount [color=#0000CC]=[/color] 0
          stopcmd[color=#0000CC].[/color]Enabled [color=#0000CC]=[/color] [color=#0000FF]False[/color]
          clrcmd[color=#0000CC].[/color]Enabled [color=#0000CC]=[/color] [color=#0000FF]True[/color]
            
          [color=#0000CC]'[/color] 显示查找文件的信息
          status[color=#0000CC].[/color]Caption [color=#0000CC]=[/color] [color=#FF00FF]"用时"[/color] [color=#0000CC]&[/color] Timer [color=#0000CC]-[/color] starttime [color=#0000CC]&[/color] [color=#FF00FF]"秒 "[/color] [color=#0000CC]&[/color] [color=#FF00FF]"找到"[/color] [color=#0000CC]&[/color] lstfiles[color=#0000CC].[/color]ListCount [color=#0000CC]&[/color] [color=#FF00FF]"个文件"[/color]
          [color=#0000FF]End[/color] [color=#0000FF]Sub[/color]
            
          [color=#0000CC]'[/color] 用来查找文件的函数
          [color=#0000FF]Public[/color] [color=#0000FF]Sub[/color] findfilesdir[color=#0000CC]([/color]DirPath As [color=#FF0000]String[/color][color=#0000CC])[/color]
          [color=#0000FF]Dim[/color] filestring As [color=#FF0000]String[/color]
          DirPath [color=#0000CC]=[/color] [color=#FF0000]Trim[/color][color=#0000CC]([/color]DirPath[color=#0000CC])[/color]
            
          [color=#0000FF]If[/color] [color=#FF0000]Right[/color][color=#0000CC]([/color]DirPath[color=#0000CC],[/color] 1[color=#0000CC])[/color] [color=#0000CC]<[/color][color=#0000CC]>[/color] [color=#FF00FF]"\"[/color] [color=#0000FF]Then[/color]
              DirPath [color=#0000CC]=[/color] DirPath [color=#0000CC]&[/color] [color=#FF00FF]"\"[/color]
          [color=#0000FF]End[/color] [color=#0000FF]If[/color]
          [color=#0000CC]'[/color] 使用Dir函数获得DirPath目录下的文件或目录
          filestring [color=#0000CC]=[/color] Dir[color=#0000CC]([/color]DirPath [color=#0000CC]&[/color] [color=#FF00FF]"*.*"[/color][color=#0000CC],[/color] vbArchive [color=#0000FF]Or[/color] vbHidden [color=#0000FF]Or[/color] vbSystem [color=#0000FF]Or[/color] vbDirectory[color=#0000CC])[/color]
          [color=#0000FF]Do[/color]
              DoEvents [color=#0000CC]'[/color]转让控制权,以便让操作系统处理其它的事件
              [color=#0000FF]If[/color] filestring [color=#0000CC]=[/color] [color=#FF00FF]""[/color] [color=#0000FF]Then[/color]
                  [color=#0000FF]Exit[/color] [color=#0000FF]Do[/color]
              [color=#0000FF]Else[/color]
                  [color=#0000FF]If[/color] [color=#0000CC]([/color]GetAttr[color=#0000CC]([/color]DirPath [color=#0000CC]&[/color] filestring[color=#0000CC])[/color] [color=#0000FF]And[/color] vbDirectory[color=#0000CC])[/color] [color=#0000FF]Then[/color]
                      [color=#0000FF]If[/color] [color=#FF0000]Left[/color][color=#0000CC]([/color]filestring[color=#0000CC],[/color] 1[color=#0000CC])[/color] [color=#0000CC]<[/color][color=#0000CC]>[/color] [color=#FF00FF]"."[/color] [color=#0000FF]And[/color] [color=#FF0000]Left[/color][color=#0000CC]([/color]filestring[color=#0000CC],[/color] 2[color=#0000CC])[/color] [color=#0000CC]<[/color][color=#0000CC]>[/color] [color=#FF00FF]".."[/color] [color=#0000FF]Then[/color]
                          lstdirs[color=#0000CC].[/color]AddItem DirPath [color=#0000CC]&[/color] filestring [color=#0000CC]&[/color] [color=#FF00FF]"\"[/color]
                      [color=#0000FF]End[/color] [color=#0000FF]If[/color]
                  [color=#0000FF]Else[/color]
                      [color=#0000CC]'[/color] 比较以确定是否是要查找的文件
                      [color=#0000FF]If[/color] [color=#0000CC]([/color]filestring Like filesearch[color=#0000CC])[/color] [color=#0000FF]Then[/color]
                      lstfiles[color=#0000CC].[/color]AddItem DirPath [color=#0000CC]&[/color] filestring
                      [color=#0000FF]End[/color] [color=#0000FF]If[/color]
                  [color=#0000FF]End[/color] [color=#0000FF]If[/color]
              [color=#0000FF]End[/color] [color=#0000FF]If[/color]
              filestring [color=#0000CC]=[/color] Dir [color=#0000CC]'[/color] 返回其他文件名
          [color=#0000FF]Loop[/color]
          [color=#0000FF]End[/color] [color=#0000FF]Sub[/color]
            
          [color=#0000CC]'[/color] 结束退出
          [color=#0000FF]Private[/color] [color=#0000FF]Sub[/color] quitcmd_Click[color=#0000CC]([/color][color=#0000CC])[/color]
                  Unload Me
                  [color=#0000FF]End[/color]
          [color=#0000FF]End[/color] [color=#0000FF]Sub[/color]
            
          [color=#0000CC]'[/color] 停止查找
          [color=#0000FF]Private[/color] [color=#0000FF]Sub[/color] stopcmd_Click[color=#0000CC]([/color][color=#0000CC])[/color]
                  findflag [color=#0000CC]=[/color] [color=#0000FF]False[/color]
                  stopcmd[color=#0000CC].[/color]Enabled [color=#0000CC]=[/color] [color=#0000FF]False[/color]
          [color=#0000FF]End[/color] [color=#0000FF]Sub[/color]
            
          [color=#0000FF]Private[/color] [color=#0000FF]Sub[/color] Form_Load[color=#0000CC]([/color][color=#0000CC])[/color]
                  Combo1[color=#0000CC].[/color]AddItem [color=#0000CC]([/color][color=#FF00FF]"*.*"[/color][color=#0000CC])[/color]
          [color=#0000FF]End[/color] [color=#0000FF]Sub[/color]
   
[/color][/td][/tr][/table]

Nothing 2007-6-17 08:39

利用API函数查找文件

[table=95%][tr][td][color=#000000]
[color=#0000FF]Public[/color] Declare [color=#0000FF]Function[/color] SearchTreeForFile Lib [color=#FF00FF]"imagehlp.dll"[/color] [color=#0000CC]([/color][color=#0000FF]ByVal[/color] lpRoothPath As [color=#FF0000]String[/color][color=#0000CC],[/color] [color=#0000FF]ByVal[/color] lpInputName As [color=#FF0000]String[/color][color=#0000CC],[/color] [color=#0000FF]ByVal[/color] lpOutputName As [color=#FF0000]String[/color][color=#0000CC])[/color] As Long

[color=#0000CC]'[/color][color=#0000CC]-[/color][color=#0000CC]-[/color][color=#0000CC]-[/color][color=#0000CC]-[/color] 下面为sysFileFind函数的编码:

[color=#0000FF]Public[/color] [color=#0000FF]Function[/color] sysFileFind[color=#0000CC]([/color][color=#0000FF]ByVal[/color] WhichRootPath As [color=#FF0000]String[/color][color=#0000CC],[/color][color=#0000FF]ByVal[/color] WhichFileName As [color=#FF0000]String[/color][color=#0000CC])[/color] As [color=#FF0000]String[/color]
    [color=#0000FF]Dim[/color] iNull As Integer
    [color=#0000FF]Dim[/color] lResult As Long
    [color=#0000FF]Dim[/color] sBuffer As [color=#FF0000]String[/color]
    [color=#0000FF]On[/color] [color=#0000FF]Error[/color] GoTo L_FILEFINDERROR
    sBuffer [color=#0000CC]=[/color] [color=#FF0000]String[/color][color=#FF0000]$[/color][color=#0000CC]([/color]1024[color=#0000CC],[/color] 0[color=#0000CC])[/color]
    [color=#0000CC]'[/color]注释:查找文件
    lResult [color=#0000CC]=[/color] SearchTreeForFile[color=#0000CC]([/color]WhichRootPath[color=#0000CC],[/color] WhichFileName[color=#0000CC],[/color] sBuffer[color=#0000CC])[/color]
    [color=#0000CC]'[/color]注释:如果文件找到,将返回字符串后续的空格删除
    [color=#0000CC]'[/color]注释:否则返回一个空字符串
    [color=#0000FF]If[/color] lResult [color=#0000FF]Then[/color]
        iNull [color=#0000CC]=[/color] [color=#FF0000]InStr[/color][color=#0000CC]([/color]sBuffer[color=#0000CC],[/color] vbNullChar[color=#0000CC])[/color]
        [color=#0000FF]If[/color] [color=#0000FF]Not[/color] iNull [color=#0000FF]Then[/color]
            sBuffer [color=#0000CC]=[/color] [color=#FF0000]Left[/color][color=#FF0000]$[/color][color=#0000CC]([/color]sBuffer[color=#0000CC],[/color] iNull [color=#0000CC]-[/color] 1[color=#0000CC])[/color]
        [color=#0000FF]End[/color] [color=#0000FF]If[/color]
        sysFileFind [color=#0000CC]=[/color] sBuffer
     [color=#0000FF]Else[/color]
            sysFileFind [color=#0000CC]=[/color] [color=#FF00FF]""[/color]
    [color=#0000FF]End[/color] [color=#0000FF]If[/color]
[color=#0000FF]Exit[/color] [color=#0000FF]Function[/color]
L_FILEFINDERROR[color=#0000CC]:[/color]
    [color=#FF0000]MsgBox[/color] [color=#FF00FF]"查找文件过程中遇到错误!"[/color][color=#0000CC],[/color]
    vbInformation[color=#0000CC],[/color] [color=#FF00FF]"查找文件错误"[/color]
    sysFileFind [color=#0000CC]=[/color] Format[color=#0000CC]([/color][color=#FF0000]Err[/color][color=#0000CC].[/color]Number[color=#0000CC])[/color] [color=#0000CC]&[/color] [color=#FF00FF]" - "[/color] [color=#0000CC]&[/color] [color=#FF0000]Err[/color][color=#0000CC].[/color]Description
[color=#0000FF]End[/color] [color=#0000FF]Function[/color]

[color=#0000CC]'[/color][color=#0000CC]-[/color][color=#0000CC]-[/color][color=#0000CC]-[/color][color=#0000CC]-[/color] 该函数可以很快遍历整个硬盘,从而查找到我们所需的文件。

[/color][/td][/tr][/table]
页: [1]
查看完整版本: 怎样向某一程序的文本框中自动输入字符后又自动执行程序?