Autohotkey 如何监视文件外观并将其移动到当前工作目录?

Autohotkey 如何监视文件外观并将其移动到当前工作目录?,autohotkey,Autohotkey,我正试图: 使用FastStone屏幕截图捕获屏幕截图;结果是图像保存到C:\Capture\screenshot.jpg 监视C:\Capture,如果找到screenshot.jpg,请将其移动到active Explorer窗口中的当前工作目录 因此,如果我在C:\Pictures中捕获screenshot.jpg,该文件应自动从C:\capture移动到C:\Pictures。换句话说,捕获的图像应该移动到目录中,这是active Explorer窗口的屏幕截图 FastStone屏幕捕

我正试图:

使用FastStone屏幕截图捕获屏幕截图;结果是图像保存到C:\Capture\screenshot.jpg

监视C:\Capture,如果找到screenshot.jpg,请将其移动到active Explorer窗口中的当前工作目录

因此,如果我在C:\Pictures中捕获screenshot.jpg,该文件应自动从C:\capture移动到C:\Pictures。换句话说,捕获的图像应该移动到目录中,这是active Explorer窗口的屏幕截图

FastStone屏幕捕获可以将图像保存到可变路径。但是我还没有为当前打开的目录找到这样的变量


关于如何实现目标的几点提示:

您可以使用AHK库拍摄屏幕截图,例如。您可以完全控制它们的图像格式、裁剪/剪切屏幕区域,最重要的是,您可以选择输出路径。 在Windows 7上,我通常使用以下代码段获取活动的资源管理器路径: 如果WinActiveahk_类CabinetWClass{ ControlGetText、wDir、工具栏窗口322 RegExMatchwDir,:\s*,wDir wDir:=wDir1;当前路径将存储在wDir中 }


这个过程很简单:定义一个启动这个过程的热键。检索当前资源管理器路径。拍摄部分屏幕截图,并将其保存在刚检索到的路径中。

关于如何实现此目的的另一个技巧:

使用Autoit库

#include <ScreenCapture.au3>

; Capture full screen
_ScreenCapture_Capture(@MyDocumentsDir & "\GDIPlus_Image1.jpg")

; Capture region
_ScreenCapture_Capture(@MyDocumentsDir & "\GDIPlus_Image2.jpg", 0, 0, 796, 596)

我使用了一个非常有用的库,它可以让您轻松地获取当前资源管理器窗口的路径。你可以这样使用它

#Include Explorer.ahk
; Can change this to the hotkey for your screenshot app 
; or have the script send the key on first line
+PrintScreen:: 
    SSFile := "C:\Capture\screenshot.jpg"
    CurrentDir := Explorer_GetPath()

    While ! FileExist(SSFile)
        Sleep, 500

    FileCopy, %SSFile%, %CurrentDir%
    FileDelete, %SSFile%
Return

我现在还没有为查找文件设置超时,但这可能是您最终需要的。

拍摄浏览器窗口的屏幕截图有什么意义?假设您有包含相册或项目的目录。我喜欢做的是将相关内容的一个小屏幕截图(一个缩略图)放在名为folder.jpg的目录中--尝试在第一篇文章中嵌入一个图像,以显示一个示例,这样可以很容易地查看和识别。