C#:注册组件
注册flash 为例: 代码比较差 仅供学习参考
/// <summary>
/// 注册组件
/// </summary>
private static void Registor()
{
PrintLog("注册flash");
#if _RELEASE && !_ORG_MANAGER
string ver=GetRegistData("CurrentVersion");
bool flag = true;
if (ver.Length != )
{
string[] vString = ver.Split(',');
if (vString.Length == )
{
int major = ;
int minor = ;
int build = ;
int revision = ; int.TryParse(vString[],out major);
int.TryParse(vString[], out minor);
int.TryParse(vString[], out build);
int.TryParse(vString[], out revision); Version v1 = new Version(, , , );
Version v2 = new Version(major, minor, build, revision);
if (v2>v1)
flag = false;
}
}
if(flag)
{
Registor(@"bin\Flash32.ocx");
}
#endif
} private static void Registor(string filename)
{
try
{
var fi = new FileInfo(filename);
File.Delete(Environment.GetFolderPath(Environment.SpecialFolder.System) + @"\" + fi.Name);
File.Copy(fi.FullName, Environment.GetFolderPath(Environment.SpecialFolder.System) + @"\" + fi.Name);
}
catch (Exception ex)
{
PrintException(ex);
} try
{
var fi = new FileInfo(filename); if (File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.System) + @"\" + fi.Name))
{
var p = new Process();
p.StartInfo.FileName = "regsvr32.exe";
p.StartInfo.CreateNoWindow = false;
p.StartInfo.Arguments = "/s " + Environment.GetFolderPath(Environment.SpecialFolder.System) + @"\" +
fi.Name;
p.Start();
}
}
catch (Exception ex)
{
PrintException(ex);
}
} private static string GetRegistData(string name)
{
string registData = "";
try
{
RegistryKey hkml = Registry.LocalMachine;
RegistryKey software = hkml.OpenSubKey("SOFTWARE", false);
RegistryKey aimdir = software.OpenSubKey("Macromedia\\Flashplayer", false);
registData = aimdir.GetValue(name).ToString();
}
catch (Exception)
{
}
return registData;
}
C#:注册组件的更多相关文章
- Ioc容器Autofac系列(3)-- 三种注册组件的方式
简单来说,所谓注册组件,就是注册类并映射为接口,然后根据接口获取对应类,Autofac将被注册的类称为组件. 虽然可像上篇提到的一次性注册程序集中所有类,但AutoFac使用最多的还是单个注册.这种注 ...
- VueJs(8)---组件(注册组件)
组件(注册组件) 一.介绍 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的小组件来构建大型应用,任意类型的应用界面都可以抽象为一个组件树 那么什么是组件呢? 组 ...
- 为什么VUE注册组件命名时不能用大写的?
这段时间一直在弄vue,当然也遇到很多问题,这里就来跟大家分享一些注册自定义模板组件的心得 首先"VUE注册组件命名时不能用大写"其实这句话是不对的,但我们很多人开始都觉得是对的, ...
- 向Spring容器中注册组件的方法汇总小结
1.通过xml定义 <bean class=""> <property name="" value=""></ ...
- C#:注册组件 (cmd)
public class ComRegistor { public static string classID = "CLSID\\{479A1AAC-C148-40BB-9868-A977 ...
- Vue 全局注册逐渐 和 局部注册组件
//定义一个名为 button-counter 的新组件 Script: Vue.component('button-counter',{//button-counter 这个是组件的名字 data: ...
- vux 全局注册组件
背景:调试better-scroll的时候进行封装,作为组件来调用: 希望:全局注册组件: 1,在src的main.js下: 这样就可以用了:
- [翻译]Component Registration in Script System 在脚本系统中注册组件
Component Registration in Script System 在脚本系统中注册组件 To refer to our component from a script, the cl ...
- Castle Windsor 注册组件
1.逐个注册组件即对每个接口通过代码指定其实现类,代码: container.Register( Component.For<IMyService>() //接口 .Implemented ...
随机推荐
- asp.net identity 3.0.0 在MVC下的基本使用 序言
本人也尚在学习使用之中,错误之处请大家指正. 开发环境:vs2015 UP1 项目环境:asp.net 4.6.1 模板为:asp.net 5 模板 identity版本为:asp.n ...
- tshark 抓包分析
一,安装#yum install -y wireshark 二.具体使用案例 1.抓取500个包,提取访问的网址打印出来tshark -s 0 -i eth0 -n -f 'tcp dst port ...
- hibernate学习(5)——一对多关系表达
一对多实现 1. 实现类 package com.alice.hibernate02.vo; import java.util.HashSet; import java.util.Set; publi ...
- ajax返回json在 IE下,提示打开或保存的解决方法
Content-type要设置成 text/html 我是用的mvc jquery.form.js 提交的表单. 返回json响应数据. 结果在ie下提示打开或保存,查看保存的内容.就是我返回的jso ...
- centos7 mariadb
闲置已久的空间环境配置忘得差不多了,今天得空整理,重置了磁盘重新搭建环境,首先在CentOS 7.0安装MariaDB的数据库,在这里记录下安装过程,以便以后查看. 1.安装MariaDB 安装命令 ...
- 总结:客户端与服务器端使用正则增加URL参数的方法
先说服务器端的: C#版本 #region URL参数操作 /// <summary> /// URL参数操作 /// </summary> public class UrlP ...
- android 生命周期
引入android生命周期概念来做前端的hash切换页面的思路: 1. page manager来管理多个page(一对多的关系); 2. route:URL <-> Page; 3. P ...
- 《阿Q正传》读后感
kindle大法好. 利用坐车的时间阅读完了鲁迅先生写的<阿Q正传>, 心中感慨良多, 记下等以后翻看这些摸不着的回忆吧. 我没看过实体书版, 电子书版的<阿Q正传>注解很详细 ...
- Jquery实现静态切换tab
1. <div id="tabs"> <ul> <li><a href=</a></li> <li>& ...
- Java反射使用技巧
1. 通过setAccessible关闭安全检查,关闭的目的不是因为访问的field/method是私有的,而且因为关闭后访问公有方法也不会再有安全检查. SomeObject someObject ...