У меня следующая странная (по крайней мере для меня) ситуация:
Я создал простое консольное приложение в папке D:\Test
.Код следующий
static void Main(string[] args)
{
Console.WriteLine("Dumps hello world !");
int i = 5 + 5;
Console.ReadLine();
}
Постройте решение и скопируйте exe-файл в другую папку D:\Test2
.Запустите приложение из этой папки, создайте файл дампа (с помощью диспетчера задач), откройте этот дамп в Visual Studio, нажмите «Отладка с помощью Mixed».Visual Studio может загружать символы, и я могу анализировать файл дампа из Visual Studio.Все хорошо
Теперь я хочу следующее а) изменить текущий исходный код в папке D:\Test
б) уметь анализировать файлы дампа для старого exe-файла в папке D:\Test2
.Итак, чтобы сделать это, я сделал резервную копию старого файла .pdb.Я скопировал его в D:\StoredSymbols
папку
Измените исходный код на следующий
static void Main(string[] args)
{
Console.WriteLine("Dumps hello world !");
Console.WriteLine("Some minor changes");
int i = 5 + 5;
Console.ReadLine();
}
Запустите старый exec-файл из D:\Test2
, создайте дамп процесса, откройте его в Visual Studio, нажмите «Отладить с помощьюMixed».Как и ожидалось, Visual Studio пытается загрузить символы из папки D:\test
и не может это сделать, поскольку файл .pdb уже соответствует новому exe-файлу, а не старому.
Поэтому я установил новый путь дляФайл .pdb - D:\StoredSymbols
, но Visual Studio все еще не может проанализировать файл дампа!ЗАЧЕМ ??И что я должен сделать, чтобы выполнить мои задачи ?Это скриншот
![enter image description here](https://i.stack.imgur.com/A27ae.png)
Вот мой скриншот отладки -> Модули![enter image description here](https://i.stack.imgur.com/eCO9f.png)