【发布时间】:2021-04-24 13:29:53
【问题描述】:
我的程序看到了 drop 事件,但无法获得有效的格式响应。这在过去一周左右发生了变化(即,用于查看格式为 1(文本消息)且附件名称被删除的工作代码)。
从 64 位 Outlook 版本 13901.20336 拖到 32 位 VFP9 .exe。
在 Outlook 窗口之间拖放(即将附件从电子邮件拖放到电子邮件)仍然有效。
在 oleDRAGDROP 事件中,我有测试已知格式的代码,然后直接在 -64000 到 +64000 之间进行搜索。没有任何东西被认可。 例如
do case
case odataobject.getformat(-16378)
m.lctext = odataobject.getdata(-16378)
case odataobject.getformat(15)
*
*
case odataobject.getformat(1)
*
otherwise
for i= -64000 to 64000
if odataobject.getformat(m.i)
m.lctext = odataobject.getdata(m.i)
exit
endif
next
endcase
n
编辑: 更新后的 Outlook(构建 13901.20462 点击运行),问题仍然存在。
现在,如果我的 oledragdrop 代码未能获得有效的 .getformat(),它假定从 Outlook 中拖动并获取当前选定的不是嵌入图像的 Outlook 项目上的第一个 PDF、JPG 或 PNG 附件。
不理想,但可能在 90% 的情况下都符合预期。
【问题讨论】:
-
你有什么代码来处理拖放操作?
-
工作代码(直到一周前)循环执行 odataobject.getformat()。作为最后的手段,它从 -64000 循环到 +64000 但正如我直到一周前所说的那样,它会将附件文件名视为格式 1。
标签: outlook drag-and-drop visual-foxpro