我需要在电子邮件中嵌入图像并在Outlook中发送之前预览电子邮件.CDO和赎回不是一种选择.
我尝试了以下代码,但图像只显示为一个小块.
procedure AddAttachment(FullFileName: String; Attachments: Outlook2000.Attachments; CID: String);
const
PR_ATTACH_CONTENT_ID = $3712001E;
PR_ATTACH_CONTENT_ID_W = $3712001F; // Unicode
PR_ATTACH_MIME_TAG = $370E001E;
PR_ATTACH_ENCODING = $37020102;
var
IAttach: IMAPIProp;
Prop: PSPropValue;
AAttachment: Outlook2000.Attachment;
FileName: String;
PropValue: TSPropValue;
Prop1: TSPropTagArray;
begin
FileName := ExtractFileName(FullFileName);
Prop := nil;
try
AAttachment := Attachments.Add(FullFileName, olByValue, 1, FileName);
IAttach := AAttachment.MAPIOBJECT as IMAPIProp;
if Assigned(IAttach) then
try
PropValue.ulPropTag := PR_ATTACH_MIME_TAG;
PropValue.Value.lpszA := 'image/jpeg';
HrSetOneProp(IAttach, @PropValue);
PropValue.ulPropTag := PR_ATTACH_CONTENT_ID;
PropValue.Value.lpszA := PAnsiChar(AnsiString(CID));
HrSetOneProp(IAttach, @PropValue);
finally
if Assigned(Prop) then …Run Code Online (Sandbox Code Playgroud) 我需要在Delphi 2010中实现一个IFilter,它可以搜索Office 2007 docx文件并返回文档中的文本.
ifilter还需要使用IPersistStream接口.
谢谢
除非我以管理员模式运行我的应用程序,否则无法从注册表中读取.我正在使用IPreviewHandler接口构建预览处理程序,并且我需要位于HKEY_CLASSES_ROOT中的文件类型的GUID.
如何在不将我的应用程序提升为管理员的情况下访问此信息.我正在使用Delphi但很高兴任何示例代码.
谢谢,菲利普