IVsUIShellOpenDocument.AddStandardPreviewer 方法

添加 web 浏览器为可用 previewers 列表。

命名空间:  Microsoft.VisualStudio.Shell.Interop
程序集:  Microsoft.VisualStudio.Shell.Interop(在 Microsoft.VisualStudio.Shell.Interop.dll 中)

语法

声明
Function AddStandardPreviewer ( _
    pszExePath As String, _
    pszDisplayName As String, _
    fUseDDE As Integer, _
    pszDDEService As String, _
    pszDDETopicOpenURL As String, _
    pszDDEItemOpenURL As String, _
    pszDDETopicActivate As String, _
    pszDDEItemActivate As String, _
    aspAddPreviewerFlags As UInteger _
) As Integer
int AddStandardPreviewer(
    string pszExePath,
    string pszDisplayName,
    int fUseDDE,
    string pszDDEService,
    string pszDDETopicOpenURL,
    string pszDDEItemOpenURL,
    string pszDDETopicActivate,
    string pszDDEItemActivate,
    uint aspAddPreviewerFlags
)

参数

  • pszExePath
    类型:System.String
    [in] 要为 previewer 生成的可执行文件的完整路径。
  • pszDisplayName
    类型:System.String
    [in] 命名出现在 浏览。 对话框。
  • fUseDDE
    类型:System.Int32
    [in] 设置为 true 使用动态数据交换 (DDE)。有关更多信息,请参见动态响应动态数据交换 (DDE)
  • pszDDETopicOpenURL
    类型:System.String
    [in] 标识主题打开 URL。
  • pszDDEItemOpenURL
    类型:System.String
    [in] 提供路径。浏览的文件。
  • pszDDETopicActivate
    类型:System.String
    [in] 标识主题激活 URL。
  • pszDDEItemActivate
    类型:System.String
    [in] 标识主题激活字符串。
  • aspAddPreviewerFlags
    类型:System.UInt32
    [in] 将浏览器便是一个系统的默认代码页。有关更多信息,请参见 __VSASPFLAGS

返回值

类型:System.Int32
如果方法成功,则返回 S_OK。如果失败,它会返回一个错误代码。

备注

COM 签名

从 vsshell.idl:

HRESULT IVsUIShellOpenDocument::AddStandardPreviewer(
   [in] LPCOLESTR pszExePath,
   [in] LPCOLESTR pszDisplayName,
   [in] BOOL fUseDDE,
   [in] LPCOLESTR pszDDEService,
   [in] LPCOLESTR pszDDETopicOpenURL,
   [in] LPCOLESTR pszDDEItemOpenURL,
   [in] LPCOLESTR pszDDETopicActivate,
   [in] LPCOLESTR pszDDEItemActivate,
   [in] VSASPFLAGS aspAddPreviewerFlags
);

此方法将 web 浏览器到可以传递 OpenStandardPreviewer生成可用 previewers 的列表。在 previewer 添加的,则会在 HKEY_CURRENT_USER 下的注册表保留。

要添加标准 previewer 的 VSPackage 应放置注册表项在 HKEY_LOCAL_MACHINE 下 \…\7.0\AddStandardPreviewer {guidPackage} = "Name of Package”子级。该名称是仅用于调试目的和实际上并没有使用。

在中,环境分析注册表项并调用 ResetDefaults,按 PKGRF_ADDSTDPREVIEWER 的值 grfFlags 参数的在 VSPackage。此时 VSPackage 应调用 IVsUIShellOpenDocument::AddStandardPreviewer

例如,在中,如果环境未提供 Internet Explorer 作为标准 previewer,可以添加调用如下所示:

AddStandardPreviewer(L"c:\\program files\\internet explorer\\iexplore.exe", L"Microsoft Internet Explorer", TRUE, L"IEXPLORE", L"WWW_OpenURL", L"\"%s\",,0xffffffff,3,,,,",
L"WWW_Activate", L"0xffffffff,0", ASP_MakeDefault);

请小心使用 ASP_UnsetOldDefaults ,因为您必须取消与 ASP_MakeDefault的早期默认值,因此,不具有零个默认值。此外,,如果多个 Vspackage 使用 ASP_UnsetOldDefaults | ASP_MakeDefault,最后 VSPackage 是默认设置。

.NET Framework 安全性

请参见

参考

IVsUIShellOpenDocument 接口

Microsoft.VisualStudio.Shell.Interop 命名空间