zoukankan      html  css  js  c++  java
  • 根据Oracle客户端安装信息,添加Server名

    在Oracle10g上测试过了,其它客户端应该差不多的。
    代码
                RegistryKey hklm = Registry.LocalMachine;
                RegistryKey hkSoftware 
    = hklm.OpenSubKey("Software");
                RegistryKey hkOracle 
    = hkSoftware.OpenSubKey("Oracle");
                
    if (hkOracle == null)
                {
                    MessageBox.Show(
    "未找到Oracle客户端安装路径信息。");
                    
    return;
                }
                
    string OraClient = null;
                
    foreach (string tmp in hkOracle.GetSubKeyNames())
                {
                    
    if (tmp.Contains("KEY_OraClient"))
                    {
                        OraClient 
    = tmp;
                        
    break;
                    }
                }
                
    if (OraClient == null)
                {
                    MessageBox.Show(
    "未找到Oracle客户端安装路径信息。");
                    
    return;
                }

                String path 
    = (string)hkOracle.OpenSubKey(OraClient).GetValue("ORACLE_HOME");
                
    string tns = File.ReadAllText(Path.Combine(path, @"NETWORK\ADMIN\tnsnames.ora"));
                
    if (!Regex.IsMatch(tns, @"(?s)km\s*=\s*\(.+\)"))
                    tns 
    += @"
    km =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.192.23)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = km)
        )
      )
    ";
                File.WriteAllText(Path.Combine(path, 
    @"NETWORK\ADMIN\tnsnames.ora"), tns);
  • 相关阅读:
    js中图片上传,多次上传同一张不生效
    mysql统计一年12月的数据
    jquery.qrcode.js 生成二维码并支持中文的方法
    layui 的 GitHub 及 Gitee (码云) 仓库
    枚举应用demo
    第十二节 线性回归:波士顿房价预测
    第十二节 gevent多任务
    第十一节 yield实现多任务
    第十节 next和send取生成器的值
    第九节 生成器
  • 原文地址:https://www.cnblogs.com/qldsrx/p/1689128.html
Copyright © 2011-2022 走看看