获取本机上配置好的Oracle服务名

2016-02-19 17:54 5 1 收藏

想要天天向上,就要懂得享受学习。图老师为大家推荐获取本机上配置好的Oracle服务名,精彩的内容需要你们用心的阅读。还在等什么快点来看看吧!

【 tulaoshi.com - Web开发 】

          /*
          获取Oracle服务名
          1。查询注册表,获取oracle安装根目录
              如:HKEY_LOCAL_MACHINESOFTWAREORACLEORACLE_HOME   REG_SZ  E:ORACLEORA92
              得知oracle服务名文件所在地:根目录etworkADMINnsnames.ora
             
          2。解析该文件,该文件结构如
              # ------------------------------------------------
              PORTAL =
              (DESCRIPTION =
                  (ADDRESS_LIST =
                  (ADDRESS = (PROTOCOL = TCP)(HOST = 134.104.52.6)(PORT = 1521))
                  )
                  (CONNECT_DATA =
                  (SERVICE_NAME = portal)
                  )
              )

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

          3。解析要点:
              一行一行获取再解析
              跳过以#打头的注释行
              过滤掉空格后,首字符在A~z之间的行就包含了Oracle服务名
              截取该行第一个“=”号左边的字符串,trim处理后就是Oracle服务名了
          */
          public static string[] GetOracleTnsNames()
          {
              try
              {
                  // 查询注册表,获取oracle服务文件路径
                  RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE").OpenSubKey("ORACLE");
                  string home = (string)key.GetValue("ORACLE_HOME");
                  string file = home + @"etworkADMINnsnames.ora";

                  // 解析文件
                  string line;
                  ArrayList arr = new ArrayList();
                  StreamReader sr = new StreamReader(file);
                  while ((line = sr.ReadLine()) != null)
                  {
                      line = line.Trim();
                      if (line != "")
                      {
                          char c = line[0];
                          if ( c= 'A' && c='z')
                              arr.Add(line.Substring(0, line.IndexOf(' ')));
                      }
                  }
                  sr.Close();

                  // 返回字符串数组
                  return (string[])arr.ToArray(typeof(string));
              }
              catch (Exception ex)
              {
                  return null;
              }
          }

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  http://www.cnblogs.com/surfsky/archive/2006/08/29/489682.html

来源:http://www.tulaoshi.com/n/20160219/1616352.html

延伸阅读
(1)OracleServiceSID 数据库服务,这个服务会自动地启动和停止数据库。如果安装了一个数据库,它的缺省启动类型为自动。服务进程为ORACLE.EXE,参数文件initSID.ora,日志文件SIDALRT.log,控制台SVRMGRL.EXE、SQLPLUS.EXE。 (2)OracleHOME_NAMETNSListener 监听器服务,服务只有在数据库需要远程访问时才需要(无论是通过另外一台...
标签: Web开发
偶尔想知道IUSR和IWAM账号的密码,但是经常忘记adsutil.vbs的用法,今天查了一下,发现代码其实很简单:(另存为.wsf文件双击运行即可。) 代码如下: jobscript language="javascript" var IIS = GetObject("IIS://Localhost/W3SVC"); var IUSR = "IUSR_机器名的密码是:" + IIS.Get("Anonym...
标签: 服务器
WinXP如何配置传真机配置传真服务   WinXP连接传真机后,安装好驱动却不知道怎样配置传真机,相信不少用户都有这方面的困扰,其实WinXP配置传真服务非常简答, 只要打开开始菜单,找到打印机和传真就可以轻松设置了。下面就请大家看具体的操作方法。 1、单击开始,选择打印机和传真。 2、在打开的对话框中,双击传真图...
代码如下: /*  * Java文件操作 获取文件扩展名  *   */       public static String getExtensionName(String filename) {            if ((filename != null) && (filename.length() 0)) {       &n...
近段时间很多网友提出监听配置相关问题,客户终端(Client)无法连接服务器端(Server)。本文现对监听配置作一简单介绍,并提出一些客户终端无法连接服务器端的解决思路,愿对广大网友与读者有一些帮助。  一、 监听器(LISTENER) 监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求。既然是基...

经验教程

567

收藏

23
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部