c# winform程序 鼠标右键获取选中文件的完整路径及文件名

haohanzhilv001 2010-07-21 05:39:20
我目前做了个winform程序
想鼠标右键某个文件,然后弹出winform程序,然后winfom中显示该鼠标选中文件的完整路径及文件名(texbox.tex或者文件夹名)
不知道怎么实现??
...全文
1756 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
yellowgiutou 2012-10-24
  • 打赏
  • 举报
回复
了解IContextMenu 接口

给你一个参考地址:
http://www.cnblogs.com/lemony/archive/2008/08/29/1279588.html
YU-ZHANG 2011-08-17
  • 打赏
  • 举报
回复
帮顶,我也遇到了这个问题,求助
haohanzhilv001 2010-07-22
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 mydear303 的回复:]
楼主,你得学习一下外接程序(插件),最近我也在做这方面的开发

DTE2、ProjectItem接口

ProjectItem.get_FileNames(1) //路径
ProjectItem.Name //名称
[/Quote]


看来你很有这方面的经验
能否说得详细点了?
非常感谢
mydear303 2010-07-22
  • 打赏
  • 举报
回复
楼主,你得学习一下外接程序(插件),最近我也在做这方面的开发

DTE2、ProjectItem接口

ProjectItem.get_FileNames(1) //路径
ProjectItem.Name //名称
Love_Air523824 2010-07-22
  • 打赏
  • 举报
回复
你选中的文件夹没有名字吗,获得文件夹得名字
用在System.Environment.CurrentDirectory.ToString();后面加上你得到的文件夹名
haohanzhilv001 2010-07-21
  • 打赏
  • 举报
回复
再等。。。
nonamehhw 2010-07-21
  • 打赏
  • 举报
回复
钩子程序,在C#中调用 API

源代码下载

http://download.csdn.net/source/1568502
newxdlysk 2010-07-21
  • 打赏
  • 举报
回复
想到一个估计实现起来蛮麻烦的
系统显示文件夹的就是一个listview控件
首先要获得listview控件item的值,就是文件or文件夹的名字
然后就是获得路径,窗口工具栏那有个“地址”的Combox控件,里面有个Edit控件,同样获得句柄就获得了路径
然后就是路径+文件夹or文件名就行了。
接下来是怎样获得选中的Listview控件中的item
GetForegroundWindow获得当前操作窗口句柄,再FindWindowEX找到其中的ListView控件
得到ListView句柄,然后类似listview.getselecteditem之类的获得名称
右击弹出窗口就要利用全局HOOK钩住鼠标右击消息
不过应该事先做一个隐藏的窗口先注册这个全局钩子,之后钩住对应消息后,再显示一个无边框的窗体放个label就差不多了

不知道有没有更好的方法了,希望大家指正
haohanzhilv001 2010-07-21
  • 打赏
  • 举报
回复
我目前通过string exeRoad = System.Environment.CurrentDirectory.ToString();能够得到文件夹或文件的一部分路径,但是我要的是选中的文件或文件夹的完整路径(精确到该文件的后缀)

我想过用鼠标右键获取选中的文件名或文件夹名,但不知道具体怎么实现
a569673493 2010-07-21
  • 打赏
  • 举报
回复
你的意思是在系统右键菜单中嵌入的程序功能吧,没搞过,帮顶
Love_Air523824 2010-07-21
  • 打赏
  • 举报
回复
你选中的这些文件放在bin目录下的debug文件夹下,用 AppDomain.CurrentDomain.BaseDirectory+“文件名”
qlzf11140820 2010-07-21
  • 打赏
  • 举报
回复
Shell32 Shell 试试
haohanzhilv001 2010-07-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 mayonglong 的回复:]
操作注册表试试

看看这个有没有帮助

利用注册表操作系统右键菜单
[/Quote]


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

看看这个有没有帮助

利用注册表操作系统右键菜单
haohanzhilv001 2010-07-21
  • 打赏
  • 举报
回复
能不能说得详细点
我是菜鸟
newxdlysk 2010-07-21
  • 打赏
  • 举报
回复
HOOK鼠标消息

111,085

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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