Я пытаюсь запустить все пулы приложений на серверах IIS7. Я хочу показать их в сетке и разрешить пользователям запускать, останавливать или перерабатывать их. Это отлично работает в IIS6, используя DirectoryENtry, но это не работает для IIS7. У меня будет 4 или 5 серверов, которые мне нужно будет пройти и захватить все пулы приложений. Вот мой код:Получить пулы приложений с нескольких серверов IIS7
using (SqlConnection myConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["DBConnection"].ConnectionString))
{
myConnection.Open();
SqlCommand cmd = new SqlCommand("SELECT ServerIP FROM Servers WHERE AppPoolIIS7='Y' AND Domain='LAN'", myConnection);
SqlDataReader rdr = cmd.ExecuteReader();
if (rdr.HasRows)
{
while (rdr.Read())
{
string serverIP = rdr["ServerIP"].ToString();
ServerManager sm = new ServerManager(serverIP);
ApplicationPoolCollection appPoolColl = sm.ApplicationPools;
foreach (ApplicationPool appPool in appPoolColl)
{
}
}
}
else
{
}
}
При пошаговом через код, мой первый сервер успешно извлечен из базы данных, но когда я пытаюсь передать ServerIP моего диспетчера сервера я получаю ошибку ниже.
Имя файла: \ \ 10.0.22.22 Ошибка: Не удается прочитать файл конфигурации
Почему добавление \ \ к мой IP?
EDIT: Я внесла некоторые изменения в код, и я получаю другую ошибку.
ServerManager sm = ServerManager.OpenRemote(serverIP);
Здесь ошибка я получаю:
Retrieving the COM class factory for remote component with CLSID {2B72133B-3F5B-4602-8952-803546CE3344} from machine failed due to the following error: 800706ba
Извините, если вы уже видели этот [аналогичный вопрос] (http://stackoverflow.com/questions/6693567/comexception-during-authentication-when-managing-iis-remotely-using-microsoft-we), это не получил принятый ответ, но на всякий случай какие-либо предложения помогут вам. – Klors
Какой пользователь это говорит? Пользователь, которым я запускаю приложение как? – Matt
Я бы так подумал. В противном случае я подозреваю, что это будет учетная запись компьютера, если она переводится на пользователя сетевой службы. Вы сможете увидеть данные пользователя в случае сбоя проверки подлинности на удаленном компьютере (если у вас есть аудит входа в систему). Я также видел, что что-то, связанное с DCOM, необходимо разрешить через брандмауэр, если вы ничего не видите на удаленной машине. – Klors