修改本机iis中所有application pool的identity(OfficeServerApplicationPool除外) c#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.DirectoryServices;
using System.Collections;

namespace ResetIISApplicationIdentity
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] strusers = System.IO.File.ReadAllLines("userid.txt", System.Text.Encoding.UTF8);
            int sid = 0;
            foreach (string struser in strusers)
            {
                string[] arruser = struser.Split(‘|‘);
                string name = arruser[0];
                string pwd = arruser[1];

DirectoryEntry appPool = new DirectoryEntry("IIS://localhost/W3SVC/AppPools");
                try
                {
                    foreach (DirectoryEntry getdir in appPool.Children)
                    {
                        if (getdir.Name != "OfficeServerApplicationPool")
                        {
                            getdir.Properties["WAMUserName"][0] = name;
                            getdir.Properties["WAMUserPass"][0] = pwd;
                            //getdir.Properties["AppPoolIdentityType"][0] = "3";  //"3"应用程序池作为特定用户帐户来运行,"0"应用程序池作为 LocalSystem 来运行,"1"应用程序池作为 LocalService 来运行,"2"应用程序池作为 NetworkService 来运行。
                            getdir.CommitChanges();                           
                            Console.WriteLine(getdir.Name + "\t" + getdir.Properties["WAMUserName"][0] + "\t" + getdir.Properties["WAMUserPass"][0]);
                        }
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                    return;
                }
                Console.ReadKey();
            }
        }
    }
}

时间: 2024-07-31 20:29:18

修改本机iis中所有application pool的identity(OfficeServerApplicationPool除外) c#的相关文章

从本机IIS中管理 远程服务器 IIS

有时候,一般情况下,我们对服务器上 IIS 上的管理局限于 使用远程桌面:现在介绍一种,通过  本机 管理管理远程IIS 的方法! 1. 服务器端设置: 服务器管理器 ==>增加角色和功能向导==>勾选  管理服务   安装. 1)如图所示安装     2)安装完成之后,远程 的 IIS 中  安全性 一栏中  会 出现  管理服务 选项. 3)启用远程连接,设置好之后,右侧 启动服务. 2. 客户端 本机电脑:  1). 本机电脑 下载安装  IIS Manager for Remote A

SharePoint Error occurred in deployment step 'Recycle IIS Application Pool': 0x80070005:拒绝访问

错误出现的前提:多个用户在一台机器上做开发,使用非系统管理员账号时会出现,因为一般创建网站集时指定管理员为系统管理员: Error occurred in deployment step 'Recycle IIS Application Pool': 0x80070005:拒绝访问 使用 Visual Studio 2010 部署时报错,错误截图如下: 原因:当前部署代码的用户不是部署代码网站集的管理员,加上即可: 一般网站集管理员在网站集创建是指定的: 解决这个错误,可以增加权限: 步骤: 

How do I create an IIS application and application pool using InnoSetup script

Create an IIS application. Create a new IIS application pool and set it's .NET version to 4. Set the application pool of the new application to the new application pool. procedure CreateIISVirtualDir(); var IIS, WebSite, WebServer, WebRoot, VDir: Var

Windows Azure Cloud Service (41) 修改云服务IIS托管管道模式为4.0经典模式

<Windows Azure Platform 系列文章目录> 这是笔者在之前的项目中遇到的问题,做一下总结,给网友做参考. 在一般情况下,Visual Studio开发的Cloud Service在部署到Azure PaaS平台后,是IIS托管管道模式.有的时候,客户的Web应用程序需要4.0经典模式.就需要在启动Web Role时自定义IIS配置.我这里简单介绍一下. 1.在项目中添加引用:C:\Windows\System32\inetsrv\Microsoft.Web.Administ

c# 调用EXCEL在VS上能正常运行,部署在IIS上不能实现,在VS中运行页面和发布之后在IIS中运行的区别

发现一篇文章,很好,解决了这个问题:感谢原博主!特此做个笔记. 地址:http://www.cnblogs.com/zhongxinWang/p/3275154.html 发布在IIS上的Web程序,调用服务器的COM组件 场景大致是这样的,在工厂中分布着许多的PDA点,这些PDA点都要进行实时的扫描--打印操作.实现方法是采用网络打印机,然后服务器安装驱动,管理着所有的打印机.然后服务器,发布一个WebService,给每个PDA上的程序进行调用,PDA在要进行打印的时候,就掉用这个服务,传递

WCF服务发布到IIS中去(VS2013+win7系统)

第一个WCF程序 1. 新建立空白解决方案,并在解决方案中新建项目,项目类型为:WCF服务应用程序.建立完成后如下图所示: 2.删除系统生成的两个文件IService1.cs与Service1.svc. 3.添加自定义的WCF[服务文件]User.svc,此时vs2010会自动生成WCF接口文件IUser.cs,我们在IUser中定义WCF方法ShowName,在User.svc.cs对该接口的方法进行实现. 代码如下: using System.ServiceModel; namespace

Quartz.net 定时任务在IIS中未按时执行

IIS 垃圾回收机制下解决Quartz.net 的不执行问题 IIS中涉及了垃圾回收机制,quartz.net 在ASP.NET 项目中可以实现线程监控定时执行任务,但是在IIS7.5机一下版本中涉及到IIS的应用程序池在一段时间后被垃圾回收机制回收,从而导致quartz.net 配置的定时服务无法按时启动.下面来说说如何 本机装的是IIS7.5,默认的垃圾回收时间间隔为1740分钟(=29h),29小时内访问该网站(此处给了我们曲线救国的方针,让我们有机会瞒过IIS的垃圾回收,以时前文提到的问

IIS7 Application Pool Integrate Mode 和 Classic Mode 的区别

IIS7也用了好久了,关于Application Pool Integrate Mode 和 Classic Mode 究竟是什么也是懵懵懂懂,于是下决心去官网看了技术文档,终于恍然大悟,特来分享一下. IIS从7开始引入了Application Pool,解决了IIS6设置在Server上的问题(因为设置在Server上,因此你不能让两个application跑在两个mode下).并且增加了模式设置,分别为 Integate Mode 和 Classic Mode.那么这两个模式有什么区别呢,

在ASP.Net和IIS中删除不必要的HTTP响应头[转]

http://www.cnblogs.com/CareySon/archive/2009/12/14/1623624.html 引入 每次当浏览器向Web服务器发起一个请求的时,都会伴随着一些HTTP头的发送.而这些HTTP头是用于给Web服务器提供一些额外信息以便于处理请求.比如说吧.如果浏览器支持压缩功能,则浏览器会发送Accept-Encoding HTTP头,这样一来服务器便知道浏览器可以使用哪种压缩算法.还有任何在上一次传输中服务端设置的cookies也会通过Cookies HTTP头