设为首页 收藏本站
查看: 703|回复: 0

[经验分享] InstallShield用于配置 IIS 的 InstallScrip(续)

[复制链接]

尚未签到

发表于 2017-2-12 06:51:34 | 显示全部楼层 |阅读模式
  //**            -2 没有找到指定的站点(异常);
//
**            -3 获取 W3SVC 失败;
//
**            -4 获取 W3SVC 失败(异常);
//
**            -5 设置指定站点状态失败(异常);
//
**            -6 参数 nvState 不正确;
//
** @Description        注意,对于已经停止的站点(4),不能转为暂停,否则会返回 -5
//
*********************************************************
function xzSetWebSiteState(nvSiteIndex, nvState)
OBJECT objW3SVC, objWebSite;
NUMBER nvResult;
STRING szInfo;
begin
szInfo
= IFX_PRODUCT_NAME + " 安装程序正在尝试设置指定 IIS 站点状态,请稍等 ...";
SdShowMsg(szInfo, TRUE);
if ( nvState = 2 || nvState = 4 || nvState = 6 ) then
try
set objW3SVC
= CoGetObject("IIS://" + xzIISConfig_LocalComputerName + "/W3SVC", "");
if (IsObject(objW3SVC)) then
try
set objWebSite
= objW3SVC.GetObject("IIsWebServer", nvSiteIndex);
if (IsObject(objWebSite)) then
try
if ( nvState = 2 ) then
objWebSite.Start();
else
if ( nvState = 4 ) then
objWebSite.Stop();
else
if ( nvState = 6 ) then
objWebSite.Pause();
endif;
endif;
endif;
nvResult
= 1;
try
nvResult
= objWebSite.ServerState;
catch
endcatch;
szInfo
= IFX_PRODUCT_NAME + " 安装程序设置 IIS 站点状态成功。";
SdShowMsg(szInfo, TRUE);
catch
//设置指定站点状态失败(异常)   
                            nvResult = -5;
szInfo
= IFX_PRODUCT_NAME + " 安装程序设置 IIS 站点状态失败:异常";
SdShowMsg(szInfo, TRUE);
endcatch;
else
//没有找到指定的站点   
                        nvResult = -1;
szInfo
= IFX_PRODUCT_NAME + " 安装程序设置 IIS 站点状态失败:没有找到指定的站点";
SdShowMsg(szInfo, TRUE);
endif;
catch
//没有找到指定的站点(异常)   
                    nvResult = -2;
szInfo
= IFX_PRODUCT_NAME + " 安装程序设置 IIS 站点状态失败:没有找到指定的站点(异常)";
SdShowMsg(szInfo, TRUE);
endcatch;
else
//获取 W3SVC 失败
                nvResult = -3;
szInfo
= IFX_PRODUCT_NAME + " 安装程序设置 IIS 站点状态失败:获取 W3SVC 失败";
SdShowMsg(szInfo, TRUE);
endif;
catch
//获取 W3SVC 失败(异常)
            nvResult = -4;
szInfo
= IFX_PRODUCT_NAME + " 安装程序设置 IIS 站点状态失败:获取 W3SVC 失败(异常)";
SdShowMsg(szInfo, TRUE);
endcatch;
else
//参数 nvState 不正确;
        nvResult = -6;
szInfo
= IFX_PRODUCT_NAME + " 安装程序设置 IIS 站点状态失败:参数 nvState 不正确";
SdShowMsg(szInfo, TRUE);
endif;
SdShowMsg(
"", FALSE);
return nvResult;
end;


  调用范例一:


//---------------------------------------------------------------------------
//
OnFirstUIAfter
//
//
The OnFirstUIAfter event called by the framework after the file transfer
//
of the setup when the setup is running in first install mode. By default
//
this event displays UI that informs the end user that the setup has been
//
completed successfully.
//
---------------------------------------------------------------------------
function OnFirstUIAfter()
STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
NUMBER bOpt1, bOpt2;
STRING szWebSiteRootPath, szWebSiteComment, szIPBands, szHost, svValue;
NUMBER nzPort, nzResult;
STRING szCommandLine, szIconPath, szWorkingDir, szShortCutKey;
NUMBER nIcon, nFlag;
begin
Disable(STATUSEX);
szWebSiteRootPath
= INSTALLDIR ^ "Help";
szWebSiteComment
= "XiaoZhu.com";
szIPBands
= "";
nzPort
= 80;
szHost
= "";
nzResult
= xzFindWebSite("", "", 80);
if ( nzResult > 0 ) then
nzResult
= xzChangeWebSite(nzResult, szWebSiteRootPath, szWebSiteComment, szIPBands, nzPort, szHost, TRUE);
if (nzResult < 0) then
NumToStr(svValue, nzResult);
MessageBox(
"更改站点设置失败,请联系系统管理员。(" + svValue + ")", WARNING);
endif;
else
nzResult
= xzCreateWebSite(szWebSiteRootPath, szWebSiteComment, szIPBands, nzPort, szHost, TRUE);
if (nzResult < 0) then
NumToStr(svValue, nzResult);
MessageBox(
"创建新站点失败,请联系系统管理员。(" + svValue + ")", WARNING);
endif;
endif;
bOpt1  
= FALSE;
bOpt2  
= FALSE;
szMsg1
= SdLoadString(IFX_SDFINISH_MSG1);
SdFinishEx(szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2);
////////////////////////////////////////////
    //打开浏览器浏览制定的网页   
    szCommandLine = ProgramFilesFolder ^ "Internet Explorer\\iexplore.exe";
LaunchAppAndWait(szCommandLine,
"http://127.0.0.1/Readme.htm", NOWAIT);
//LaunchAppAndWait(szCommandLine, INSTALLDIR ^ "help\\Readme.htm", NOWAIT);   

////////////////////////////////////////////
    //运行数据库设置程序
    LaunchAppAndWait(INSTALLDIR ^ "xzSQLDeploy.exe", "", NOWAIT);
////////////////////////////////////////////
    //在程序组中添加快捷方式   
    szWorkingDir  = INSTALLDIR;
nIcon         
= 0;
szShortCutKey
= "";
nFlag         
= REPLACE|RUN_MINIMIZED;
/*
//方法二 A:
szIconPath = "%SystemDrive%\\Program Files\\Internet Explorer\\iexplore.exe";
szCommandLine = szIconPath;
LongPathToQuote(szCommandLine, TRUE);
szCommandLine = szCommandLine + " " + "http://www.XiaoZhu.com";
AddFolderIcon(FOLDER_PROGRAMS ^ @PRODUCT_NAME, "Readme1", szCommandLine, szWorkingDir, szIconPath, 0, szShortCutKey, nFlag);
*/
////方法二 B:
    szIconPath    = ProgramFilesFolder ^ "Internet Explorer\\iexplore.exe";
szCommandLine
= szIconPath;
LongPathToQuote(szCommandLine, TRUE);
szCommandLine
= szCommandLine + " " + "http://www.XiaoZhu.com";
AddFolderIcon(FOLDER_PROGRAMS
^ @PRODUCT_NAME, "Readme2", szCommandLine, szWorkingDir, szIconPath, 0, szShortCutKey, nFlag);
end;

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-340793-1-1.html 上篇帖子: Windows 2000 IIS 安装、配置 . WEB篇 下篇帖子: 如何查看和分析IIS日志
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表