+5 votos
145 visitas
Quando eu preciso depurar uma DLL em C# que é chamada pelo Runner (7.7.3.1), o Visual Studio (2010, 2012, 2013) não pára nos breakpoints.

Só vou conseguir parar nos breakpoints se mandar "desatachar" (detach) e "atachar" (attach to process...) o processo de novo.

Por que será?
por (72 pontos) | 145 visitas

2 Respostas

+1 voto

Olá,

Abra as propriedades do seu projeto;

Em "Application" clique no botão "Assembly Information" e marque a opção "Make assembly COM-Visible";

Em "Build" e configure o "Output path" para sua pasta de trabalho;

Em "Debug" configure a aplicação a ser executada, seus parâmetros e a pasta de trabalho.

Quanto você compilar serão gerados os .pdb na pasta de trabalho os quais são utilizados na depuração.

por (353 pontos)
Obrigado pela dica, mas não adiantou. Eu achei que era porque eu não tinha preenchido o Working Directory, mas não fez diferença alguma.
Os pdbs foram todos colocados lá pelo Visual Stido, mesmo assim continuou não parando nos breakpoints.
+1 voto

Algo de gosto de usar é o namespace System.Diagnostics com o método Debugger.Launch. Assim não preciso atachar o processo para depuração. No codigo insiro a linha onde quero fazer o attach, quando isto rodar, o proprio windows pergunta se quer atachar com o Visual Studio. 

Exemplo

static void Main(string[] args)
{
     Console.WriteLine("System.Diagnostics");
     System.Diagnostics.Debugger.Launch();
     Console.WriteLine("Testando");
}

Ao passar pela linha "Debugger.Launch()" o VS pergunta se quer atachar. Se já estiver, nada acontece. 

 

Outra dica, é colocar todo o output da solution na pasta de trabalho do Runner. Assim nenhuma dependencia será antiga, fazendo com que não consiga uma depuração de todas as dll. Isto pode ser feito por linha de comando rapidamente. 

Para tal, é necessário abir o "Developer Command Prompt for VS2012" de rodar a linha abaixo, alterando o nome da solution e o caminho do output

msbuild "C:\Benner\Fontes\Bef\Bef.sln" /m /p:outdir="C:\Benner\Bin\Runner"

 

por (933 pontos)

Perguntas relacionadas

Melhores Oct 2020
  1. willian.metalsystem

    15 Pontos

  2. DollyTerpstr

    7 Pontos

  3. Thiago Coutinho

    7 Pontos

  4. eacherbtk7

    5 Pontos

  5. cynhadt85b

    5 Pontos

  6. robert.metalsystem

    4 Pontos

200 pontos
Melhores 2020 Oct 19 - 25
  1. eacherbtk7

    5 Pontos

  2. cynhadt85b

    5 Pontos

  3. Thiago Coutinho

    2 Pontos

445 perguntas
490 respostas
350 comentários
497 usuários