У меня есть компьютер с win7 x64 с установленным VS2013, а также экземпляр Win Server 2012 с установленным VS2013. Я пытаюсь заставить BrowserMob Proxy.NET работать на сервере для установки JEnkins/Selenium, которую я запускаю. Когда я запускаю AutomatedTester.BrowserMob Server.Start, расположенный в файле Server.cs, и он создает экземпляр объекта Process, я получаю сообщение об ошибке: «32-разрядные процессы не могут получить доступ к модулям 64-разрядного процесса», который имеет NativeErrorCode 299 с указанием: Выполнена только часть запроса ReadProcessMemory или WriteProcessMemory.
Теперь, если я запускаю его на своем компьютере с Win7 x64, он работает просто отлично, но когда я запускаю то же самое на своем компьютере с сервером 2012, он выдает указанную выше ошибку. Я запускаю IIS8 на сервере, где IIS7 работает на Windows 7. Если у кого-то есть какие-либо идеи о том, что я могу сделать, напишите, пожалуйста :) Я построил проект, используя платформу 4.5 и выбранный «Любой процессор».
Что меня беспокоит, так это то, что это отлично работает на моем локальном компьютере, но не работает на сервере. Я беспокоюсь, что я отслеживаю это как конкретную проблему архитектуры, и, возможно, это какой-то параметр безопасности или что-то, о чем я не знаю. Еще одна информация: этот Windows 2012 Server работает на AWS. Я разместил блок кода ниже, с которым это происходит. Спасибо всем!
try
{
var _serverProcess = new Process
{
StartInfo = { FileName = pathToBrowserMobProxy }
};
}
catch (System.ComponentModel.Win32Exception e)
{
throw e;
}