我们开发数据库应用程序.用户要求新功能:将blob复制到剪贴板,以便Windows资源管理器可以将它们粘贴为新文件.一种解决方案是将blob保存到临时文件夹中,并将这些临时文件添加到剪贴板.
但我正在寻找更好的解决方案.是否可以在Windows资源管理器中挂钩粘贴操作并自行将blob保存到目标路径?
我需要编写一个可以传递不同枚举选择的过程.
type
TEnumOne = (eOneFlagOne, eOneFlagTwo);
TEnumTwo = (eTwoFlagOne, eTwoFlagTwo);
Run Code Online (Sandbox Code Playgroud)
该方法应采用不同的枚举:
Process([eOneFlagOne, eTwoFlagTwo]);
Run Code Online (Sandbox Code Playgroud)
我试图像这样实现它:
// does not work!
procedure Process(const Enums: array of Variant);
var aValue; Variant
begin
for aValue in Enums do
begin
// of course, can't work...
if aValue is TEnumOne then
end;
end;
Run Code Online (Sandbox Code Playgroud)
那么,有没有一种类型而不是Variant,我可以选择吗?或者是一种不同的方法,我不明白吗?
如果我更喜欢只从第二个表中获取记录,如何加入表格?如果不存在秒,请记录第一个表.
Table A Table B Result
pid,name,type pid,name,type pid,name,type
1,Anna,null 1,Anna,100 "1,Anna,100"
2,Bea,null - "2,Bea,Null"
3,Caro,null 3,Caro,100 "3,Caro,100"
3,Caro,200 "3,Caro,200"
Run Code Online (Sandbox Code Playgroud)
编辑:我试图改进我的示例表.