我正在研究面向Mac OS和Windows的Delphi XE2应用程序.我希望集成到上下文菜单中.对于Windows,这是一项简单的任务.但对于Mac OS,我不知道该怎么做.
我已阅读提供服务文档并在Delphi中尝试了类似的代码,但没有运气.
查看Finder集成试验的简单代码.
App.dpr
program App;
uses
SysUtils,
{$IFDEF MACOS}
AppKit, CocoaTypes, CoreFoundation,
CoreServices, Foundation, Mach, ObjCRuntime,
ObjectiveC, OCMarshal, OpenGL, QuartzCore, Security,
SystemConfiguration,
{$ENDIF}
MessageProvider;
{$IFDEF MACOS}
var
app: NSApplication;
provider: TMessageProvider;
{$ENDIF}
begin
Application.Initialize;
{$IFDEF MACOS}
provider := TMessageProvider.Create();
app := TNSApplication.Alloc();
app.setServicesProvider(provider);
{$ENDIF}
Application.CreateForm(TFormOSVersion, FormOSVersion);
Application.Run;
end.
Run Code Online (Sandbox Code Playgroud)
MessageProvider.pas
unit MessageProvider;
interface
uses
FMX.Dialogs
{$IFDEF MACOS}
, AppKit, CocoaTypes, CoreFoundation,
CoreServices, Foundation, Mach, ObjCRuntime,
ObjectiveC, OCMarshal, OpenGL, QuartzCore, Security,
SystemConfiguration
{$ENDIF}
;
type
TMessageProvider …Run Code Online (Sandbox Code Playgroud) 我现在正在使用Outlook宏来将所选文件夹添加到Outlook的收藏夹组中.我试过用这种方法
Sub AddToFavorites()
Dim olapp As Outlook.Application
Dim objFolder As Outlook.MAPIFolder
Set olapp = New Outlook.Application
Set objFolder = olapp.ActiveExplorer.CurrentFolder
objFolder.AddToPFFavorites
End Sub
Run Code Online (Sandbox Code Playgroud)
但AddToPFFavorites方法抛出错误"尝试的操作失败.无法找到对象".
我已尝试使用上下文菜单中的"在收藏夹中显示"操作将目标文件夹添加到收藏夹,因为结果文件夹已在收藏夹组中显示且没有错误.
我的问题是:如何将文件夹添加到收藏夹组?什么是VBA相当于"Show in Favorites"动作?