gpt4 book ai didi

c++ - 寻找 MSIHANDLE

转载 作者:行者123 更新时间:2023-11-30 04:16:59 27 4
gpt4 key购买 nike

我有一个安装程序(使用 Advanced Installer 制作)。我有一个必须与之交互的应用程序,但我不知道如何找到该安装的 MSIHANDLE。我查看了 Microsoft 引用资料,但没有发现任何对我的问题有帮助的信息。

有什么帮助吗?

最佳答案

MSI 句柄不可用于进程外代码。您需要编写一个自定义操作来承载某种类型的 RPC 机制,您的应用程序随后可以与之交互。这基本上就是 Windows Installer XML (Wix) Deployment Tools Foundation (DTF) 的工作方式。它允许您使用用 C++ 主机包装的 C# 编写自定义操作。 C++ 主机使用 RunDLL32 在进程外执行托管代码(这样它就不会用 CLR 版本标记 msiexec 进程),然后在两者之间创建一个 IPC 隧道。

在您的 C# 中有一个互操作库,它通过 IPC 隧道编码调用,然后 C++ 代码调用 MSI API 并返回结果。

关于c++ - 寻找 MSIHANDLE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17380666/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com