用DELPHI通过写注册表来实现建立IIS的虚拟目录

2016-02-19 12:48 26 1 收藏

下面图老师小编要跟大家分享用DELPHI通过写注册表来实现建立IIS的虚拟目录,简单的过程中其实暗藏玄机,还是要细心学习,喜欢还请记得收藏哦!

【 tulaoshi.com - 编程语言 】

      网上有很多关于用DELPHI来建立IIS的虚拟目录的例子,但都是需要加载类库,我这里则采用写注册表的方式来实现,方法简单,主要是不需要加入类的复杂过程,唯一的不同是需要重启电脑后才能生效。代码如下:

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

  procedure TForm1.Button1Click(Sender: TObject);
  var
    RegODBC:TRegistry;
    registerTemp : TRegistry;
    SysPath: array [0..255] of char;
  begin
    RegODBC:=TRegistry.create;     //访问注册表
    RegODBC.RootKey:=HKEY_LOCAL_MACHINE;
    RegODBC.OpenKey('SYSTEMControlSet001ServicesW3SVCParametersVirtual Roots',True);
    getsystemdirectory(SysPath,255);
    if regodbc.ValueExists('/fire') then
      begin
        suimessage1.Text:='本机WEB已存在名为fire的虚拟目录。'+#13#10+'请将此fire删除或重命名。';
          suimessage1.IconType:=suistop;
          suimessage1.ButtonCount:=1;
          suimessage1.Caption:='错误';
          if suimessage1.ShowModal=mrok then
            winexec(pchar(SysPath+'inetsrvinetmgr.exe'),sw_shownormal);
         exit;
      end
    else
      begin
    registerTemp := TRegistry.Create; //建立一个Registry实例
    with registerTemp do
      begin
        RootKey:=HKEY_LOCAL_MACHINE;//设置根键值为HKEY_LOCAL_MACHINE

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

  //找到或创建SYSTEMControlSet001ServicesW3SVCParametersVirtual Roots,写入IIS配置信息
       if OpenKey('SYSTEMControlSet001ServicesW3SVCParametersVirtual Roots',True) then
         begin
           WriteString('/fire','E:fire,,205');
         end
       else//创建键值失败
         begin
            suimessage1.Text:='IIS配置失败,本程序即将关闭。'+#13#10+'关闭后请先检查Internet服务管理器,排除错误或安装后再运行本程序。';
            suimessage1.IconType:=suistop;
            suimessage1.ButtonCount:=1;
            suimessage1.Caption:='错误';
          if suimessage1.ShowModal=mrok then
             application.Terminate ;
         end;
       CloseKey;
      Free;
    end;   
      end;
    RegODBC.Free;
   end;
  

   说明:代码中用到了suipack4控件的suimessagedialog组件,例子的确认窗口也可通过Application.MessageBox()来替代。如大家对此有兴趣的话可以与我联系。xh416@163.net   QQ:49055028
  

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

延伸阅读
标签: 电脑入门
Win8磁盘名称也能修改,你听说过吗?如果用户在将 XP 重装成Win8时,原本的硬盘分区名称可能会出现无法更改的情况,重新命名也都起不了作用。这种情况一般是因为使用XP系统下的Format Fdisk修改分区所造成的。那么我们该如何在这样的情况下重命名磁盘分区名字呢?下面请大家一起来看看。 以C盘命名为Windows8为例,执行 regedit 进入下列路径 [H...
    Windows注册表中包含了系统配置、机器硬件配置、Win32应用程序和用户的其他配置信息。注册表根据系统信息分为六个根键(RootKey),其中每个根键各有一个由子键和键值组成的树状结构,每个子键代表一个特定的配置项目。     用C++Builer控制注册表的要害在于了解TRegistry 类。在C++Builder的VC...
标签: windows 操作系统
注册表相当于电脑的神经系统,可以说电脑的一切都是用注册表来进行修改的。如果你熟练地掌握注册表,那么进行优化就非常容易,即使现在的那些所谓的优化软件大多数都是通过修改注册表来完成优化的。由于注册内容非常丰富,在本文中笔者就举几个对系统速度比较有影响的方面进行介绍。 一、一次点击即可关机 适用:Windows 98 ...
----毫不夸张的说,注册表相当于WIN95的“心”,几乎所有的Windows应用程序都毫不例外的要在这里边“安家筑巢”,如果你也用VB编写了一个程序,是不是也想在注册表里占有一席之地呢(即使刚才没有,现在大概也有了吧)?嗯,听我慢慢道来。 ----“API”中专门提供了处理注册表的函数,不用说也知道,它们肯定功能强大(因为它们是API)...
标签: 电脑入门
注册表虽然是通过各个根键和子键来分类管理各种信息,但具体数据信息还是依靠键值项和键值来实现。在注册表中绝大多数分支或子项中还包含了一个或若干个值项,每个值项又对应于一定数据类型的一组数据,这就是键值项和键值,打开注册表编辑器后,选择一个分支或子项,在注册表编辑器的右侧窗口中显示的就是键值项和键值(如图1)。 图1 细心...

经验教程

59

收藏

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