我目前做了个winform程序
想鼠标右键某个文件,然后弹出winform程序,然后winfom中显示该鼠标选中文件的完整路径及文件名(texbox.tex或者文件夹名)
不知道怎么实现??

解决方案 »

  1.   

    非常感谢,你的这一步我之前已经实现了,通过注册表我把我写的程序添加进入右键了,现在是想通过右键选中需要的文件或文件夹,然后点击我的程序,程序上的Textbox.text里获取此文件或文件夹的完整路径
      

  2.   

    你选中的这些文件放在bin目录下的debug文件夹下,用 AppDomain.CurrentDomain.BaseDirectory+“文件名”
      

  3.   

    我目前通过string exeRoad = System.Environment.CurrentDirectory.ToString();能够得到文件夹或文件的一部分路径,但是我要的是选中的文件或文件夹的完整路径(精确到该文件的后缀)我想过用鼠标右键获取选中的文件名或文件夹名,但不知道具体怎么实现
      

  4.   

    想到一个估计实现起来蛮麻烦的
    系统显示文件夹的就是一个listview控件
    首先要获得listview控件item的值,就是文件or文件夹的名字
    然后就是获得路径,窗口工具栏那有个“地址”的Combox控件,里面有个Edit控件,同样获得句柄就获得了路径
    然后就是路径+文件夹or文件名就行了。
    接下来是怎样获得选中的Listview控件中的item
    GetForegroundWindow获得当前操作窗口句柄,再FindWindowEX找到其中的ListView控件
    得到ListView句柄,然后类似listview.getselecteditem之类的获得名称
    右击弹出窗口就要利用全局HOOK钩住鼠标右击消息
    不过应该事先做一个隐藏的窗口先注册这个全局钩子,之后钩住对应消息后,再显示一个无边框的窗体放个label就差不多了不知道有没有更好的方法了,希望大家指正
      

  5.   

    钩子程序,在C#中调用 API源代码下载http://download.csdn.net/source/1568502
      

  6.   

    你选中的文件夹没有名字吗,获得文件夹得名字
    用在System.Environment.CurrentDirectory.ToString();后面加上你得到的文件夹名
      

  7.   

    楼主,你得学习一下外接程序(插件),最近我也在做这方面的开发DTE2、ProjectItem接口ProjectItem.get_FileNames(1) //路径
    ProjectItem.Name             //名称
      

  8.   

    了解IContextMenu 接口给你一个参考地址:
    http://www.cnblogs.com/lemony/archive/2008/08/29/1279588.html