ClickOnce 非托管 API 参考
dfshim.dll 中的 ClickOnce 非托管公共 API。
CleanOnlineAppCache
从 ClickOnce 应用程序缓存中清理或卸载所有联机应用程序。
返回值
如果成功,则返回 S_OK;否则,返回表示失败的 HRESULT。 如果发生托管异常,则返回 0x80020009 (DISP_E_EXCEPTION)。
备注
如果服务尚未运行,则调用 CleanOnlineAppCache 将启动 ClickOnce 服务。
GetDeploymentDataFromManifest
从清单和激活 URL 中检索部署信息。
参数
参数 | 说明 | 类型 |
---|---|---|
pcwzActivationUrl |
指向 ActivationURL 的指针。 |
LPCWSTR |
pcwzPathToDeploymentManifest |
指向 PathToDeploymentManifest 的指针。 |
LPCWSTR |
pwzApplicationIdentity |
指向缓冲区的指针,用于接收以 NULL 结尾的字符串,该字符串指定返回的完整应用程序标识。 | LPWSTR |
pdwIdentityBufferLength |
WCHAR 中指向 DWORD 以表示 pwzApplicationIdentity 缓冲区长度的指针。 这包括 NULL 终止字符的空格。 |
LPDWORD |
pwzProcessorArchitecture |
指向缓冲区的指针,用于从清单接收以 NULL 结尾的字符串,该字符串指定应用程序部署的处理器体系结构。 | LPWSTR |
pdwArchitectureBufferLength |
WCHAR 中指向 DWORD 以表示 pwzProcessorArchitecture 缓冲区长度的指针。 |
LPDWORD |
pwzApplicationManifestCodebase |
指向缓冲区的指针,用于从清单接收以 NULL 结尾的字符串,该字符串指定应用程序清单的代码库。 | LPWSTR |
pdwCodebaseBufferLength |
WCHAR 中指向 DWORD 以表示 pwzApplicationManifestCodebase 缓冲区长度的指针。 |
LPDWORD |
pwzDeploymentProvider |
指向缓冲区的指针,用于接收以 NULL 结尾的字符串,该字符串指定清单中的部署提供程序(如果存在)。 否则,将返回空字符串。 | LPWSTR |
pdwProviderBufferLength |
指向 DWORD 以表示 pwzProviderBufferLength 长度的指针。 |
LPDWORD |
返回值
如果成功,则返回 S_OK;否则,返回表示失败的 HRESULT。 如果缓冲区太小,则返回 HRESULTFROMWIN32(ERROR_INSUFFICIENT_BUFFER)。
备注
指针不得为 NULL。 pcwzActivationUrl
和 pcwzPathToDeploymentManifest
不得为空。
调用方负责清理激活 URL。 例如,在需要转义字符的位置添加转义字符或删除查询字符串。
调用方负责限制输入长度。 例如,最大 URL 长度为 2KB。
LaunchApplication
使用部署 URL 启动或安装应用程序。
参数
参数 | 说明 | 类型 |
---|---|---|
deploymentUrl |
指向以 NULL 结尾的字符串的指针,该字符串包含部署清单的 URL。 | LPCWSTR |
data |
保留供将来使用。 必须为 NULL。 | LPVOID |
flags |
保留供将来使用。 必须为 0。 | DWORD |
返回值
如果成功,则返回 S_OK;否则,返回表示失败的 HRESULT。 如果发生托管异常,则返回 0x80020009 (DISP_E_EXCEPTION)。