Determine o local/caminho de compilação original de um exe usando .Net Reflector ou outra ferramenta

StackOverflow https://stackoverflow.com/questions/2185626

  •  25-09-2019
  •  | 
  •  

Pergunta

Eu tenho um EXE que está atualmente implantado em nosso servidor de produção (c# .net 2).Herdei a tarefa de fazer algumas alterações neste aplicativo e reimplantá-lo.

Eu não escrevi este aplicativo e fui apontado para algumas pastas diferentes em várias unidades de rede com algumas soluções diferentes do Visual Studio (~10) que eram vários encantamentos deste aplicativo ao longo do tempo e poderiam ser concorrentes para o projeto do Visual Studio que foi usado para gerar este exe, mas não sei qual projeto foi usado que corresponde ao EXE em produção.

Existe uma maneira de usar o .net Reflector ou outra ferramenta para determinar o caminho do arquivo original que os arquivos de origem estavam quando foram usados ​​para compilar o EXE, posso então trabalhar de trás para frente para determinar a solução correta do Visual Studio e começar a fazer alterações nela.

Obrigado

Foi útil?

Solução

Isso soa como uma situação e tanto se você não consegue saber qual é a origem do que está sendo executado na produção.

No entanto, uma solução possível é dar uma olhada no cabeçalho de depuração do assembly .exe, se ele tiver sido compilado com símbolos de depuração, ele pode conter o caminho completo original do pdb, dando uma pista de onde ele foi construído .Você pode obtê-lo com o dumpbin ferramenta que faz parte do SDK do Windows.

Aqui está um exemplo da saída:

  Debug Directories

        Time Type       Size      RVA  Pointer
    -------- ------ -------- -------- --------
    4A0F2A94 cv           51 0006672C    6492C    Format: RSDS, {77468AA8-8494-46AC-87DF-422721517504}, 8, C:\sources\mcs\class\Mono.Cecil\obj\Debug\Mono.Cecil.pdb

Melhor ainda, se você tiver o pdb em mãos, poderá usar uma ferramenta como pdbdump para saber quais arquivos foram usados ​​para compilar o assembly.

Outras dicas

Sua melhor aposta é provavelmente usar o Reflector e um dos plug-ins geradores de arquivos em http://www.codeplex.com/reflectoraddins para despejar o código em arquivos.Antes de fazer qualquer alteração, certifique-se de poder reconstruir.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top