平台安装时写入注册表的打包方法

最近根据客户要求,在用户下载办公系统安装包安装后,将直接从网页登陆,这需要在注册表中写入delit项,在此之前平台一直采用的是安装好后,从平台提供的登陆界面登陆然后在向注册表添加项。

要解决这个问题,只能在用户安装好客户端后就自动的向注册表写入delit项。下面是实现方法:
1、我们使用下图中所示工具进行安装包打包:
 
2、具体打包步骤可以参照http://plat.delit.cn/article-1-167.html 
3、点击安装之后——双击结束安装——点击操作——选择On Preload事件,如下图所示:
 
4、在On Preload事件中插入下列代码:

--写注册表,支持网页调用客户端
result = Registry.DoesKeyExist(HKEY_CLASSES_ROOT, "Delit");

if (result) then
        Registry.DeleteKey(HKEY_CLASSES_ROOT, "Delit");

end

Registry.CreateKey(HKEY_CLASSES_ROOT, "Delit");
Registry.CreateKey(HKEY_CLASSES_ROOT, "Delit\\DefaultIcon");
Registry.CreateKey(HKEY_CLASSES_ROOT, "Delit\\shell\\open\\command");

strPath = String.Concat(SessionVar.Expand("%AppFolder%"), "\\DLSOFT.exe");

    
Registry.SetValue(HKEY_CLASSES_ROOT,"Delit","","URL: Delit Protocol 协议",REG_SZ);
Registry.SetValue(HKEY_CLASSES_ROOT,"Delit","URL Protocol",strPath,REG_SZ);
Registry.SetValue(HKEY_CLASSES_ROOT,"Delit\\DefaultIcon","",String.Concat(strPath,",1"),REG_SZ);
Registry.SetValue(HKEY_CLASSES_ROOT,"Delit\\shell\\open\\command","",String.Concat("\"",String.Concat(strPath,"\" \"%1\"")),REG_SZ);

原文地址:http://bbs.delit.cn/thread-822-1-1.html

转载请注明出处:

撰写人:度量科技http://www.delit.cn

时间: 2024-10-07 06:32:25

平台安装时写入注册表的打包方法的相关文章

C#部署安装写入注册表操作

imihiro 安装部署程序,将安装目录写入注册表 (1)在“安装部署项目”上点击“注册表编辑器” (2)在HKey_LOCAL_MACHINE_SoftWare 下新建键 Manufacturer 代表软件的制造商. (3) 右键à新增字符串值,设置Name和Value属性. Name   NewPrjClient Value  @[TARGETDIR]NewPrjClient.exe [TARGETDIR]代表用户选择的安装目录. NewPrjClient.exe 代表exe的名称.   这

【转】C# Winform打包部署时添加注册表信息实现开机启动

使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表,HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run中 添加键值保存软件目录.    注意:默认的可能只有HKEY_CURRENT_USER\Software\[Manufacturer],没关系,我们依次添加以上的项即可.即:HKEY_C

C++ 无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run

C++  无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,但在写入HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run时,在目录HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run下也会生成,同时在以下两图目录下也生成相应的注册项. 实际写入目录为:

ASP.NET中如何读取和写入注册表

直接给源码: 读取注册表内容: 1 RegistryKey regkey=Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run"); 2 string[] n=regkey.GetValueNames(); 3 for(int i=0;i<n.Length;i++) 4 { 5 Response.Write(n[i]+": "+regkey.GetVal

sql2008安装时提示重启计算机失败解决方法

安装sql 2008的时候,在检测安装环境中有一项是”重新启动计算机”显示的结果是“失败”.上网看了半天,找到了解决方案,虽然我没弄明白具体原因,但问题是解决了,解决方案如下: 一.Windows+R,在对话框中输入“regedit”,点击运行:二.此时会弹出注册表信息,在里面找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager”目录 三.删除“PendingFileRenameOperations”:四.关

安装lr时无法将值Disable Script Debugger 写入注册表

1. 运行“regedit”打开注册表编辑器. 2. 右键点击权限.HKEY_CURRENT_USER-Softwart-Microsoft-Internet Explorer-Main 3. 勾选everyone组的权限-Full Control(完全控制) 4. 返回安装页面点击重试,如果不行退出重启机器,安装lr

VMWare------安装时出现无法将值写入注册表项

安装时提示详情: 无法打开注册表项UNKNOWN\Components\...请确认你是否有足够的权限访问该注册表项,或者与技术支持人员联系. 解决方法: 关掉360安全卫士等软件再安装

c++写入注册表

一.说明:      注册表是Windows重要组成部分,注册表记录了大量有关电脑软硬件的信息.注册表中的值通过其名称标识.值名称由与键名相同的字符组成.值本身可以是字符串.二进制数据或者是32位无符号值.在这里我们主要运用以下技巧: (一).预定义的注册表键.注册表包含了几个预定义键: HKEY_LOCAL_MACHINE 包含描述计算机及其配置的条目.其中包括关于处理器.系统主板.内存和已安装的软件和硬件的信息. HKEY_CLASSES_ROOT 是与文档类型和 OLE\COM 相关的信息

.Net Framework 4.5.1 安装时遇到严重错误 问题的解决方法

问题来源 在安装VS2013时,本来是勾选了个全部安装就没去管它了,过了一会一看,居然提示我是 .Net Framework 4.5.1 安装时遇到严重错误, 像这样 本以为是个很简单的问题,结果没想到折腾了一天,直到现在才解决,还是用的独家方法. 类似问题 在寻找答案的过程中,碰到类似的问题有:1:安装.net framework 4.0 返回错误代码16032:使用windows updata更新的时候,出现返回错误代码 6433:安装.net framework 4.5 的时候,返回 安装