在创建文件时,是否有人经历过自定义操作的临时提取路径被追加的错误?
我有一个托管自定义操作(64位C# DLL使用Microsoft.Deployment.WindowsInstaller)执行一些系统检查.它在延迟CA中写入inf样式的key=value文件。这里没有什么好想象的,只有一个File.Create(FullPathToFile)。
但是,当我试图写入文件时,由于某种原因,将包含CA被解压缩到的临时目录。
MSI (3C:E4) 10:19:36:712:你好,我是您的64位提升自定义操作服务器。
SFXCA:将自定义操作提取到临时目录: C:\Windows\Installer\MSIC451.tmp-\ \
SFXCA:绑定到CLR版本v2.0.50727
to*'.:System.IO.DirectoryNotFoundException:未能找到路径'C:\Windows \MSIC451.tmp-*C:\Program\ path的一部分--属性文件应该写为在System.IO.__Error.WinIOError(Int32 errorCode,String maybeFullPath)
在System.IO.FileStream.Init(字符串路径、FileMode模式、FileAccess访问、Int32权限、布尔useRights、FileShare共享、Int32 bufferSize、FileOptions选项、SECURITY_ATTRIBUTES secAttrs、String msgPath、布尔值bFromProxy)
在System.IO.FileStream..ctor(字符串路径、FileMode模式、FileAccess访问、FileShare共享、Int32 bufferSize、FileOptions选项、字符串msgPath、布尔bFromProxy)
在..。
管理CA的流编写器的使用方式有什么奇怪之处吗?
发布于 2011-07-26 22:31:11
最后,我发现我试图使用的变量包括一个属性,即:[TARGETDIR]\otherstuff。当我将变量用作文件路径时,我期望路径为C:\Program Files\productname\otherstuff\mystuff。但不是财产。当与某些操作(在本例中为StreamWriter)一起使用时,该属性将无法正确解决,给出了上面的错误。
在我计算出部分路径实际上是从属性中解析出来之后,我就能够进行更改来解决我从属性中需要的路径,并且一切都按预期工作。
session.Format(Property)或session[Property]
https://stackoverflow.com/questions/6752488
复制相似问题