GAC write failed when upgrade with InstallShield
在接近final-build的时候,突然发现当前版本从上一个版本upgrade的时候,需要写到GAC (Global Assembly Cache)的assambly会写失败掉。但是只会在特定的Microsoft OS (我的重现环境是Win7)下会有这样的问题。
失败的具体情况为:
upgrade在卸载前版本的时候,GAC是清理干净了;
安装新版本的过程时,GAC会写不进去;
这种情况下,打开新版本,在task manager可以看到两个叫MSIEXEC.exe(windows installer进程)的进程被创建了;
纠其原因,是upgrade的时候,一些程序需要的global assembly不能正常的写到GAC。
这时候打开程序时,运行到引用这些global assembly的程序逻辑时,会发现这些assembly的缺失,所以新建了windows installer进程试图从installer中重新拿到global assembly去写入GAC。
但是程序逻辑没有停止,会发现引用失败,导致程序失败。只有windows installer把所有的global assembly写完了,再重新打开,程序才能正常启动。
这个是windows的已知bug,并且Microsoft已经给出了补丁。只要在出现问题的环境安装补丁就可以解决这个问题。补丁下载地址如下
Package:
-----------------------------------------------------------
-----------------------------------------------------------
KB Article Number(s): 981929
Language: All (Global)
Platform: x64
Location: (http://hotfixv4.microsoft.com/Windows%20Vista/sp3/Fix314138/6000/free/410051_intl_x64_zip.exe)
-----------------------------------------------------------
KB Article Number(s): 981929
Language: All (Global)
Platform: i386
Location: (http://hotfixv4.microsoft.com/Windows%20Vista/sp3/Fix314138/6000/free/410048_intl_i386_zip.exe)
GAC write failed when upgrade with InstallShield的更多相关文章
- Failed to upgrade Oracle Cluster Registry configuration(root.sh)
近期在给客户基于Suse 11 sp3安装Oracle 10g RAC,在安装完clusterware运行/u01/app/crs/root.sh时收到错误提示.Failed to upgra ...
- Failed to upgrade AX 2012 R3 Retail channel database from CU9 to CU11 if SQL Server version was lower than 2012
I tried to upgrade AX 2012 R3 Retail channel database from CU9 to CU11 for client. after generated n ...
- SQL SERVER 2012启动失败 because upgrade step 'SSIS_hotfix_install.sql' 失败
有台数据库服务器(开发服务器),开发人员邮件告诉我,SSMS连接不了这台服务器,远程登录后,发现SQL SERVER的服务停止了,启动服务时报错,服务启动不了.检查错误日志发现下面一些信息 2015- ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 3.安装Clus ...
- 使用DOS工具修复数据库
当SQL Server 实例出现异常,无法远程链接时,数据库管理员需要登陆到SQL Server实例机器上,通过命令行工具,修复异常. 一,使用net命令行启动数据库 通过net start 命令启动 ...
- RAW+ASM 的RAC 安装文档
实验平台:Oracle 10gR2 RAC + RHEL 4.0 +VMWare GSX 3.2.0 安装步骤: 1.安装前准备及OS安装配置 2.安装Oracle 10gR2 clusterware ...
- kubectl插件管理工具krew
文章转载自:https://blog.51cto.com/loong576/2452592 一.k8s核心组件 Kubernetes 主要由以下几个核心组件组成: etcd 保存了整个集群的状态: a ...
- AX2012 R3 Data upgrade checklist sync database step, failed to create a session;
最近在做AX2012 R3 CU9 到CU11的upgrade时 (用的Admin帐号), 在Date upgrade 的 synchronize database 这步 跑了一半,报出错误 说“fa ...
随机推荐
- [021]转 C++ Pimpl机制
出处:http://www.cnblogs.com/gnuhpc/ 1.简介 这个机制是Private Implementation的缩写,我们常常听到诸如“不要改动你的公有接口”这样的建议,所以我们 ...
- Hibernate: Truly Understanding the Second-Level and Query Caches--reference
I've written multiple articles here at Javalobby on the Hibernate O/R mapping tool, and they are usu ...
- Input
Input Basic Input Old Input Files Please note that both Input and Request do NOT sanitize your data, ...
- multithread synchronization use mutex and semaphore
#include <malloc.h> #include <pthread.h> #include <semaphore.h> struct job { /* Li ...
- div 块跟随 鼠标点击
js: $(document).ready(function () { $(".company-contact ul li").click(function (ev) { ...
- hadoop安装包的目录结构
初次接触Hadoop,了解了Hadoop安装包的目录结构,和大家分享下: bin:Hadoop最基本的管理脚本和使用脚本的目录,这些脚本是sbin目录下管理脚本的基础实现,用户可以直接使用这些脚本管理 ...
- 关于JFace中的输入值(InputDialog)对话框类
格式: InputDialog(Shell parentShell, String dialogTitle, String dialogMessage, String initialValue, In ...
- JavaScript 零散知识点1 (正则表达式+定时器+hover)
1.clear:both清楚浮动影响//css中 2.正则表达式 search方法 :指明是否存在相应的匹配,如找到一个返回一个整数值,表明这个匹配距离字符串开始的偏移位置,如果没有找到匹配返回-1f ...
- 다음에 적용될 Auto_increment 값 알아 내기 (计算下一个Auto_increment的值)
Mysql 4.X <------ SHOW TABLE STATUS FROM [DB_NAME] LIKE '[TABLE_NAME]'; Mysql 5.X ----------- ...
- ASP实现用年月日时分秒和两位随机数字来作为上传文件名的函数
Public Function GetNewFileName() dim ranNum dim dtNow dtNow=Now() randomize ranNum=int(90*rnd)+10 Ge ...