【发布时间】:2020-09-29 02:59:20
【问题描述】:
我有一个带有只读文本框的 GUI,我将文件拖到该文本框,然后一个函数与该文件一起运行。这在我的机器上适用于本地下载文件夹中的文件、所有文件扩展名、Outlook 电子邮件附件等。我没有问题。
一位同事已开始使用它,但他无法成功地将电子邮件附件从 Outlook 拖到框中。 arg 为空。这一切都适用于我的机器,但不是他的。我有另一个人测试,他们也有同样的问题。
$filebox.Add_DragEnter({
if ($_.Data.GetDataPresent([Windows.Forms.DataFormats]::FileDrop)) {
$_.Effect = [Windows.Forms.DragDropEffects]::Copy
}
})
$filebox.Add_DragDrop({
foreach ($file in $_.Data.GetData([Windows.Forms.DataFormats]::FileDrop)) {
create_dir $file # Function doesn't even trigger here with outlook email attachments because no arg
}
})
我们都从共享收件箱中提取信息。没有什么是硬编码来识别用户的,或者定义一个设置的路径,它应该只是抓住放在盒子里的 arg 的路径,对吧? 我只是对拖放对某些文件而不是电子邮件附件的工作感到困惑,然后在我的机器上也能完全工作。
我认为自己是一个相当新手的编码器,并且第一次弄乱了 Powershell。 (在这种情况下,我无法访问其他任何东西。无法编译 c#,powershell 就是它。)。也许我在这里遗漏了一些基本的东西。有人对此有什么想法吗?
【问题讨论】:
标签: powershell outlook drag-and-drop