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 ...
随机推荐
- mysql在同一个表上查询和更新
- mysql 使用存储过程批量插数据
#创建测试表 DROP TABLE IF EXISTS test.test; CREATE TABLE test.test( id int(10) not null auto_increment, a ...
- OpenGL函数思考-glLoadIdentity
函数原型: void glLoadIdentity(void) 函数说明: OpenGL为我们提供了一个非常简单的恢复初始坐标系的手段,那就是调用glLoadIdentity()命令.该命令是一个无参 ...
- iOS10 导航条,这个二狗子变了...踩坑
1.iOS10导航透明要转换一个透明image UIImage *image = IsDeviceVersionIOS10 ? [WeUtils imageWithColor:[UIColor cle ...
- SpringMVC常用配置-配置DispatcherServlet映射请求路径的方式
- varnish4.0 流程图以及说明
varnish 中的内置变量 req repos client server bereq beresp bereq bereq.http.HEADER 由varnish发往backend server ...
- win10本地搭建apache+php+mysql运行环境
首先下载所需软件: Vc2015:https://www.microsoft.com/zh-CN/download/details.aspx?id=48145 Vc2012:http://www.mi ...
- RabbitMQ系列之Centos 7安装RabbitMQ 3.6.1
1.安装EPEL-7: rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm 2.安 ...
- J2EE环境配置与工具使用
一.Java SDK安装 J2SE最新版安装地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,包括JDK和JR ...
- linux查看某个进程内存占用情况以及/proc/pid/status解释
以nginx 为例1.toptop -b -n 1 |grep nginx|awk '{print "VIRT:"$5,"RES:"$6,"cpu:& ...