使用以下命令提取msi时出现2203错误.
msiexec/a"C:\ Test\Installer.msi"/ QB targetDIR ="C:\ Test\Eval"/ LV*"C:\ Test\INST_Logfile.log"
在回答时请考虑以下几点:
登录用户和SYSTEM帐户对
%TEMP%,C:\ Windows\Installer 具有完全访问权限.
msi未标记为ReadOnly.
检查Windows安装程序服务,它运行正常.
尝试取消注册并注册msiexec
MSIEXEC /UNREGISTER
MSIEXEC /REGSERVER
Run Code Online (Sandbox Code Playgroud)重启系统
以下是日志中捕获的错误:
MSI (s) (88:A4) [14:09:27:551]: Executing op: DatabaseCopy(DatabasePath=C:\Test\Installer.msi,,CabinetStreams=cab1.cab,AdminDestFolder=C:\Test\,)
MSI (s) (88:A4) [14:09:27:551]: Note: 1: 2203 2: C:\Test\Installer.msi 3: -2147287008
DEBUG: Error 2203: Database: C:\Test\Installer.msi. Cannot open database file. System error -2147287008
MSI (s) (88:A4) [14:09:34:634]: Product: Installer -- The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error …
我有一个WPF应用程序,可以采取命令行参数.我想在ViewModel中使用此命令行参数,我有以下选项来执行此操作.
1)在app.xaml.cs中创建公共静态变量.读取main方法中的命令行参数值并将其分配给公共静态变量.可以使用App.variablename在viewmodel中访问.
2)创建环境变量,如System.Environment.SetEnvironmentVariable("CmdLineParam","u"),然后在带有Environment.GetEnvironmentVariable("CmdLineParam")的viewmodel中使用它.
我想问一下考虑MVVM模式哪种方法很好,以及是否有更好的方法来实现这一点.