自定义操作,用于读取文件并在会话obj中存储值。有没有办法在调用其他自定义操作时将其用作属性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义操作,用于读取文件并在会话obj中存储值。有没有办法在调用其他自定义操作时将其用作属性相关的知识,希望对你有一定的参考价值。
<CustomAction I'd=readValue binaryKey = custom.dll
DllEntryy = readfilevalue Execute= deferred Return =
check/>
// // In a .cs file code to read the file having method
// readfilevalue。 //我正在设置Custom Session.write会话值(键,值);
// In another .wxs file invoking executables
<Custom Action = someExe After= someOtherExe>
<!CDATA[ key < someValue]>
<Custom>
//我可以在此Custom标签中获取键值吗?如果没有那么//我怎么能得到这个值,请建议。
答案
不,延迟操作(@ Execute =“deferred”)和共享Windows Installer会话之间存在very limited information flow。该流程包括向操作发送一些属性(包括CustomActionData),并从中接收进度信息和成功或失败,但不会像您描述的那样携带任意数据。
你看到他们的选择:
- 立即执行第一个自定义操作,以便它可以参与规划。如果操作需要提升权限,或者访问由另一个延迟操作执行的某些操作,则此操作无效,但这是执行此操作的最“正确”方式。请注意,如果数据本身可以通过现有搜索模式(如RegistrySearch)读取,那甚至比立即自定义操作更好。
- 合并这两个动作,因此不需要这样的信息流。
- 使用不受支持的黑客攻击,例如共享两个操作都可以访问的Windows Installer之外的文件位置。然后你可以通过它发送信息。请注意,对此进行清理可能很难纠正,并且其不受支持的性质可能会导致深奥场景中的其他问题。 (关于获取上下文信息的链接暗示了原因。)
以上是关于自定义操作,用于读取文件并在会话obj中存储值。有没有办法在调用其他自定义操作时将其用作属性的主要内容,如果未能解决你的问题,请参考以下文章
用于 uid 列表的 Firebase 存储自定义元数据安全规则