gpt4 book ai didi

selecteditem - 所选文件的外壳扩展名

转载 作者:行者123 更新时间:2023-12-02 05:15:48 25 4
gpt4 key购买 nike

有没有办法知道在 Windows 资源管理器中选择了哪个文件?我一直在看这里发布的教程 Idiots guide to ...但描述的行动是:

徘徊

语境

菜单属性



拖放

我想知道是否有在选择文件时调用的方法。例如创建文件的缩略图 View 。

谢谢。

最佳答案

这是我在 AutoHotkey 中的操作方式:

GetWindowsExplorerSelectedFile(_hWnd)
{
local selectedFiles, file

; I can send ^C and parse Clipboard, but this way don't mess with clipboard at all, seems nicer.
; Warning: with this, you get only what is displayed in Explorer!
; If you kept the default Windows setting of not displaying file extensions (bad idea...),
; you will get partial file names...
ControlGet, selectedFiles, List, Selected Col1, SysListView321, ahk_id %_hWnd%
Loop, Parse, selectedFiles, `n ; Rows are delimited by linefeeds (`n).
{
If (A_Index = 1)
{
file := A_LoopField
}
Else
{
; Indicate that several files are selected, we return only the first one
; but count the total number of selected files, to indicate we return a partial result
ErrorLevel := A_Index
}
}
Return file
}

我从资源管理器的编辑字段中获取路径(这很容易出现问题!可以不存在或可以设置为不显示完整路径)。

核心思想是询问Explorer的SysListView32控件有哪些被选中的项,并得到它们。

现在,这是一个黑客,可能有更清洁的方法......

PS.:还发现了这个: Getting ListView items in C# from SysListView32 using SendMessage
需要一些巫术来让它在另一个进程上工作......

真实代码 a French site !

关于selecteditem - 所选文件的外壳扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/232083/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com