- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我们正在 Azure 上运行 WCF 服务,并且希望能够通过代码重新启动计算机。
我尝试过以下方法:
方法 1 - 使用 Process.Start("shutdown.exe")
http://msdn.microsoft.com/en-us/library/vstudio/system.diagnostics.process.start
此方法存在问题 - IIS 7 通过应用程序池实现安全性,并且在 Azure 上手动更改权限/等会重置且不可信。
我尝试使用 icacls
( http://technet.microsoft.com/en-us/library/cc753525.aspx ) 授予 IIS 运行 shutdown.exe
的权限,但不幸的是,它似乎不适用于内部文件system32
文件夹。
方法2 - 调用RoleEnvironment.RequestRecycle
我们已经使用了此功能,它运行良好 - 但是我们需要完整的服务器重新启动,而不仅仅是角色实例回收。
方法 3 - 使用 Azure 的 REST API
http://msdn.microsoft.com/en-us/library/azure/gg441298.aspx
到目前为止,这看起来是实现这一目标的最有前途的方法,我能够通过生成证书,将其作为管理证书上传到 Azure 门户上,在我的开发计算机上运行,但是,对于我来说,这是一生的事情我无法从 Azure 实例本身获取管理证书。
<小时/>所以 - 如果有人能想出一种方法让方法 1 或 3 发挥作用,那就太好了,或者如果您能想到另一种选择 - 我们将不胜感激。
最佳答案
另一个选择是使用 Azure Powershell cmdlet ( http://azure.microsoft.com/en-us/documentation/articles/install-configure-powershell/ )。
然后您可以运行 Restart-AzureVM
( http://msdn.microsoft.com/en-us/library/dn495199.aspx ) + 许多其他管理命令
关于c# - 如何从 Azure 上运行的 IIS 进程重新启动服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23982144/
我是一名优秀的程序员,十分优秀!