如何使用asp关闭、重起远程服务器?

如何使用asp关闭、重起远程服务器?,第1张

文件放在 c:\shutdown.exeasp代码如下<%Set WinShell = server.CreateObject("Wscript.Shell")iss=WinShell.Run("c:\shutdown.exe -r -f",0,true)response.write iss%>现在执行机器是没有反应的因为在winNT的构架的服务器里 有用户的权限问题因此以下操作将因为没有权限,而执行失败因此 要想办法提升 IIS 的权限,使其拥有重起计算机的权限。进入“本地用户和组” 将 “Internet 来宾帐号”和 “启动 IIS 进程帐号”都加到 administator组里,然后重新启动计算机。恭喜!!这样 asp就能关闭、重起远程服务器了!----------------------------附录:你可以自己用写一个程序,重起、关闭服务器哦。XP里的shutdown.exe 用起来不是很好。下面是 VC++ 代码:

重新安装下IIS组件: 开始菜单 >>控制面板 >>程序与功能 >>打开或关闭windows功能

然后在新打开的对话框中, 找到 "Interner信息服务" 项, 将里面的打勾全去掉, 最后点击确定.

可以关闭

更多的解释如下:

由于Asp.net程序是默认配置,所以Web.Config文件中关于Session的设定如下:

<sessionStatemode='InProc'stateConnectionString='tcpip=127.0.0.1:42424'sqlConnectionString='datasource=127.0.0.1Trusted_Connection=yes'cookieless='true'timeout='60'/>

我们会发现sessionState标签中有个属性mode,它可以有3种取值:InProc、StateServer?SQLServer(大小写敏感)。默认情况下是InProc,也就是将Session保存在进程内(IIS5是aspnet_wp.exe,而IIS6是W3wp.exe),这个进程不稳定,在某些事件发生时,进程会重起,所以造成了存储在该进程内的Session丢失。

将mode设定为StateServer。StateServer是本机的一个服务,可以在系统服务里看到服务名为ASP.NETStateService的服务,默认情况是不启动的。当我们设定mode为StateServer之后,请手工将该服务启动。

这样,我们就能利用本机的StateService来存储Session了,除非电脑重启或者StateService崩掉,否则Session是不会丢的(因Session超时被丢弃是正常的)。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/54004.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-26
下一篇2023-02-26

发表评论

登录后才能评论

评论列表(0条)

    保存