IDesktopGadget::RunGadget 方法 (shobjidl.h)
将已安装的小工具添加到桌面。
语法
HRESULT RunGadget(
[in] LPCWSTR gadgetPath
);
参数
[in] gadgetPath
类型: LPCWSTR
指向 .小工具文件夹的完整 (绝对) 路径的指针。 未与 Windows 一起打包的小工具只能从以下两个位置之一运行。 在任何其他位置安装小工具将导致此方法失败并出现拒绝访问错误。
注意 此路径不应包含环境变量;必须提供完全扩展的路径。 ExpandEnvironmentStrings 可用于展开此参数中所需窗体的路径。
(%ProgramFiles%\Windows Sidebar\Shared 小工具)
这是建议用于非 Microsoft 小工具安装的路径,可供所有用户使用。
(%LOCALAPPDATA%\Microsoft\Windows Sidebar\小工具)
此位置应用于小工具的单用户安装。
返回值
类型: HRESULT
如果成功,则返回S_OK,否则返回错误值,包括:
返回代码 | 说明 |
---|---|
|
小工具已在运行。 |
|
发生错误,涉及 小工具路径指向的小工具文件夹的路径。 |
注解
此处的“运行”小工具意味着小工具已添加到桌面。
只能在已安装到系统的小工具上调用 RunGadget。 不能在已在运行的小工具上调用它 -- 在任何给定时间,只能通过此方法运行一个小工具的一个实例。
由于小工具安装没有自己的 UI,因此此方法通常作为安装过程中的最后一个步骤运行,或者作为小工具关联的应用程序的首次启动的一部分运行。 将小工具安装到 %ProgramFiles%\Windows Sidebar\Shared 小工具需要管理权限。 因此,建议在 Microsoft Installer (MSI) 安装过程中执行小工具的安装。
重要 应用程序在未事先请求用户权限的情况下不应调用 RunGadget 。 如果选择作为检查框提供给用户,则默认情况下应取消选择该检查框。
每用户应用程序应按用户安装其小工具。 每台计算机应用程序应按计算机安装其小工具。 这可确保为用户提供统一的体验。
示例
以下示例演示正在使用 的 IDesktopGadget::RunGadget 。
HRESULT RunMyGadget(PCWSTR pszGadgetPath)
{
IDesktopGadget *pDG;
HRESULT hr = CoCreateInstance(CLSID_DesktopGadget,
NULL,
CLSCTX_INPROC_SERVER,
IID_PPV_ARGS(&pDG));
if (SUCCEEDED(hr))
{
hr = pDG->RunGadget(pszGadgetPath);
pDG->Release();
}
return hr;
}
要求
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
目标平台 | Windows |
标头 | shobjidl.h |