如何用Explorer打开指定的文件,我不知道要用哪个API函数。而且需要打开的资源管理器窗口中,被指定的文件被作为焦点,即被选中状态。

解决方案 »

  1.   

    Explorer打开指定的文件?
    你是说运行还是选择
    如果选择,你可以这样做,先执行文件前的目录,这样就可以打开Explorer到该文件所在文件夹,然后枚举该Explorer窗口的Listview控件中的所有图标文字,利用Sendmessage发送消息到Listview控件中即可,比较麻烦...实现起来也不是很容易
      

  2.   

    打开路径后按键就可以使文件(夹)获得焦点,对中文文件名无效下面的例子打开c盘,并使AUTOEXEC.BAT文件被选中Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)Private Sub Command1_Click()
        Shell "Explorer c:\", vbNormalFocus
        Sleep 1000'这里需要延迟一下,以确保Explorer已经显示
        SendKeys "AUTOEXEC.BAT"
    End Sub
      

  3.   

    TO  cso(sjxsoft-天水是我家):
    我说的是运行Explorer,效果就象BlueBeer(1win)说的Shell "Explorer..."。但是使用Shell不能“在打开的资源管理器窗口中,被指定的文件被作为焦点,即被选中状态。”
      

  4.   

    而且我想用API,不想用SHELL。我记得曾经在哪本书上看到过这个API,但忘记是什么了。
      

  5.   

    运行一个程序可以用SHELLEXEC或者WINEXEC。
      

  6.   

    还是不行啊!
    我知道如何打开"资源管理器",但不知道如何"选择"资源管理器中的某一文件.
    cso(sjxsoft-天水是我家)理解了我的意思.我试了一下他的思路,也不行.
      

  7.   

    为什么一定要用API呢
    用api 
    可以用winexec激活setfocus,然后用Sendkeys filename,true
      

  8.   

    bmd2chen(小小鸟) 的办法是一个能解决问题的办法。
    当然,我还是觉得如果能用API更好,因为Sendkeys filename,true有时用效,有时没用。