小编Got*_*hAr的帖子

如何在Delphi XE2中将菜单项添加到Mac OS Finder

我正在研究面向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)

delphi macos finder delphi-xe2

31
推荐指数
1
解决办法
1229
查看次数

外表.将文件夹添加到收藏夹组

我现在正在使用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"动作?

outlook favorites vba

6
推荐指数
1
解决办法
1655
查看次数

标签 统计

delphi ×1

delphi-xe2 ×1

favorites ×1

finder ×1

macos ×1

outlook ×1

vba ×1