Atualizações para o Visual Studio 2008 SP1 depuração e pontos de interrupção

Traduções deste artigo Traduções deste artigo
ID do artigo: 957912 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

INTRODUÇÃO

A Microsoft lançou atualizações para componentes do depurador Microsoft Visual Studio 2008 SP1. Essas atualizações principalmente abordam problemas que ocorrem com depuração e com atingindo pontos de interrupção.

Mais Informações

Instalação

Esta atualização é para todas as versões do Visual Studio 2008 SP1 em computadores x 86 e x 64. No entanto, se você usar o Visual Studio 2008 Standard Edition em um sistema operacional de 64 bits, você deve instalar o 64-bit depurador do Visual Studio 2008 SP1 remoto antes de aplicar esta atualização. Para obter informações sobre como obter o 64-bit depurador do Visual Studio 2008 SP1 remota, visite o seguinte site:
http://www.microsoft.com/downloads/details.aspx?FamilyID=440ec902-3260-4cdc-b11a-6a9070a2aaab&DisplayLang=en

Correções de depurador multi-Process e multithread

Observação Descrições a um conjunto hipotético de processos que estão sendo depurado por uma única instância do Visual Studio. Quando são chamadas de funções, pressupõe-se que as funções são recursiva ou as funções contêm loops. Esses cenários não servem para reproduzir o problema. Em vez disso, eles são fornecidos para ajudar a explicar o problema.

Pontos de interrupção em loops parallelized eventualmente são ignorados após várias ocorrências

Pontos de interrupção colocar em loops ou de funções não são atingidas em todos os processos em cada iteração recursiva. Com freqüência, podem passar alguns processos por meio de várias iterações de um loop, ignorando o ponto de interrupção, antes de um processo é interrompido. Considere o seguinte cenário:
  1. Iniciar a depuração vários processos. Um dos processos que você está depurando está em um loop forte ou é uma função recursiva.
  2. Você interromper o thread principal do processo atual (o último processo para o ponto de interrupção) e, em seguida, você continuar a depuração. Repita essa ação para cada processo.
  3. Reinicie os segmentos para cada processo.
Observe que após várias iterações, pontos de interrupção não são atingidos. Esse comportamento é inesperado.

Parando e iniciando threads faz com que pontos de interrupção ser perdidas

Pontos de interrupção são atingidos, mas eles não são visíveis quando você depurar vários processos no depurador do Visual Studio. Considere o seguinte cenário no qual você está depurando dois processos, A processo e processo B.
  1. Definir um ponto de interrupção em ambos os processos e iniciar a depuração. Ambos os pontos de interrupção serão atingidos.
  2. Você interromper o thread principal do processo A, selecione o processo B e pressione F11 para entrar o comando uma vez.
  3. Reinicie o thread principal do processo A e, em seguida, você interromper o thread principal do processo B. Em seguida, você pressione F11 para entrar o comando.

    Você observe que ambos os processos estão na mesma linha.
  4. Você interromper o thread principal do processo a. Nenhum thread deverá ser interrompido neste momento.
  5. Pressione F5 para continuar.
O processo deve termine e Visual Studio deve retornar ao modo de design. No entanto, isso não ocorrer. Os processos quebrar novamente mais tarde no código.

Observação Se você remover os pontos de interrupção depois de pressionar F5 para continuar, o depurador é executado até que ela seja concluída.

O Visual Studio pode falhar quando você depurar vários processos ao mesmo tempo

Depurador do Visual Studio pode enfrentar um deadlock quando você iniciar e, em seguida, interromper um thread e, em seguida, executar o próximo ponto de interrupção se vários processos estão sendo depurados. Considere o seguinte cenário:
  1. Você pode definir pontos de interrupção em três declarações de variáveis arbitrárias.
  2. Iniciar a depuração 16 processos.
  3. Você quebra a um dos processos e parar o thread principal.
  4. Pressione F5.
  5. Você repetir as etapas 3 e 4 até que todos os processos tiverem atingido o ponto de interrupção.
  6. Iniciar os threads principais de todos os processos.
  7. Para cada processo, exclua primeiro ponto de interrupção e, em seguida, pressione F5.
  8. Para cada processo, você repita as etapas 3 e 4. Todos os processos devem estar no segundo ponto de interrupção.
  9. Pressione F5.
  10. Para cada processo, você repita as etapas 3 e 4.
Todos os processos devem acessar o terceiro ponto de interrupção, mas pelo menos um processo pode estar paralisado no estado de execução.

Depuração através de um ponto de interrupção desativado quando você depurar um aplicativo nativo transforma em "go"

Você depurar um aplicativo nativo no Visual Studio que contém um ponto de interrupção desativado. Quando você entrar o depurador após o ponto de interrupção desativado, as etapas restantes serão perdidas e o aplicativo continuará a ser executado.

Depuração quando você depurar um aplicativo multithread gerenciado pode transformar aleatoriamente em um "go"

Quando você depurar um aplicativo gerenciado multithread e você entrar em um segmento enquanto um evento ocorre com outro thread, como pressionar um ponto de interrupção, a solicitação de etapa é perdida. E, o aplicativo continua a executar.

Mensagem Passing Interface (MPI) depurador correções para Visual Studio Editions oferecendo suporte MPI plug-in

O Visual Studio falha quando você usar o comando "Step Into" para iniciar um programa MPI

Quando você usa o comando Step into ou pressione F11 para depurar várias instâncias de um processo MPI, o Visual Studio falha. Ou, você recebe a seguinte mensagem de erro:
Microsoft que Visual Studio encontrou e erro interno

Executar o comando "Depuração parcial" enquanto você está depurando vários processos faz com que um deadlock

Se você executar o comando Step Over enquanto você está depurando vários processos, o Visual Studio falha. Considere o seguinte cenário:
  1. Você abre um aplicativo multithread.
  2. Definir um ponto de interrupção em uma chamada de função recursiva.
  3. Depurar dois processos.
  4. Iniciar a depuração. O ponto de interrupção é atingido no processo de primeiro.
  5. Pressione F5. O ponto de interrupção é atingido sobre o processo de segundo.
  6. Você interromper o thread principal do primeiro processo.
  7. Você executa o comando Step Over sobre o segundo processo e, em seguida, clique em Pausar .

    A operação não pode ser concluída porque está aguardando o primeiro processo. Clique em Pausar para novamente no modo de interrupção. O depurador usa uma seta verde para indicar o próximo processo de instrução será executada quando ele retorna da função.
  8. Você pode adicionar um ponto de interrupção no processo de segundo.
  9. Pare o processo de primeiro e, em seguida, pressione F5.
Neste ponto, você espera que o depurador para atingir o ponto de interrupção em cada processo. No entanto, ambos os processos são travados dentro da função e o que foi adicionado por último ponto de interrupção nunca é atingido. Além disso, o depurador não pode executar até o final do aplicativo.

Correção UI do ponto de interrupção

Pontos de interrupção desativados não estão visíveis após a instalação Visual Studio 2008 Service Pack 1

Se você desabilitar um ponto de interrupção, o ponto de interrupção não é atingido. Além disso, o ponto de interrupção está oculto do canal editor mais à esquerda. O ponto de interrupção desativado ainda existe. Ele é exibido na janela Breakpoints ferramenta.

Resolução

Um hotfix suportado está disponível no Microsoft. No entanto, esse hotfix destina-se a corrigir o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico. Esta correcção poderá submetida a testes adicionais. Portanto, se você não tiver sido gravemente afetado por esse problema, recomendamos que você aguarde a próxima atualização de software que contém esse hotfix.

Para baixar esse hotfix a partir do MSDN Code Gallery, visite o seguinte site da Microsoft:
http://code.msdn.microsoft.com/KB957912

Observação MSDN Code Gallery exibe os idiomas para os quais o hotfix está disponível. Se você não vir seu idioma listado, é porque a página de recursos da Galeria de código não está disponível para esse idioma.

Observação Se ocorrerem problemas adicionais ou se qualquer solução de problemas é necessária, talvez você precise criar uma solicitação de serviço separada. Os custos normais de suporte serão aplicados a questões de suporte adicionais e problemas que não se qualificam para esse hotfix específico. Para obter uma lista completa de números de telefone de suporte e Atendimento Microsoft ou para criar uma solicitação de serviço separada, visite o seguinte site:
http://support.microsoft.com/contactus/?ws=support

Pré-requisitos

Você deve ter o Microsoft Visual Studio 2008 SP1 instalado para aplicar esse hotfix.

Requisitos de reinicialização

Não é necessário reiniciar o computador após aplicar esse hotfix.

Informações sobre a substituição do hotfix

Esse hotfix não substitui outros hotfixes.

Informações sobre o arquivo

A versão em inglês deste hotfix tem atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas no horário de universal coordenado (UTC). Quando você exibe as informações do arquivo, ele é convertido para a hora local. Para encontrar a diferença entre o UTC e o horário local, uso o fuso horário guia na Data e hora no painel de controle.
Recolher esta tabelaExpandir esta tabela
Nome de arquivoVersão do arquivoTamanho do arquivoDataTempoPlataforma
AvVsPkDH.dll9.0.30729.177325848 De novembro de 20082: 19x 86
AvVsPkDH.dll9.0.30729.177382168 De novembro de 20082: 19x 64
AvVsPkDH.dll9.0.30729.177750808 De novembro de 20082: 19IA-64
AvVsPkDH.dll9.0.30729.177750808 De novembro de 20082: 19x 86
AvVsPkDH.dll9.0.30729.177382168 De novembro de 20082: 19x 86
AvVsPkDH.dll9.0.30729.177325848 De novembro de 20082: 19x 86
cpde.dll9.0.30729.1776526088 De novembro de 20082: 19x 86
mcee.dll9.0.30729.17711809928 De novembro de 20082: 19x 86
mcee.dll9.0.30729.1776567048 De novembro de 20082: 19x 86
mcee.dll9.0.30729.1773648648 De novembro de 20082: 19x 86
mcee.dll9.0.30729.1773648648 De novembro de 20082: 19x 86
mcee.dll9.0.30729.1776567048 De novembro de 20082: 19x 64
mcee.dll9.0.30729.17711809928 De novembro de 20082: 19IA-64
MPIShim.exe9.0.30729.177238808 De novembro de 20082: 19x 86
MPIShim.exe9.0.30729.177238808 De novembro de 20082: 19x 86
MPIShim.exe9.0.30729.177238808 De novembro de 20082: 19x 86
MPIShim.exe9.0.30729.177238808 De novembro de 20082: 19x 86
MPIShim.exe9.0.30729.177290008 De novembro de 20082: 19x 64
MPIShim.exe9.0.30729.177546008 De novembro de 20082: 19IA-64
msvb7.dll9.0.30729.17740871048 De novembro de 20082: 19x 86
msvb7.dll9.0.30729.17757331848 De novembro de 20082: 19x 86
msvb7.dll9.0.30729.17727425928 De novembro de 20082: 19x 86
msvb7.dll9.0.30729.17740871048 De novembro de 20082: 19x 86
msvb7.dll9.0.30729.17740871048 De novembro de 20082: 19x 86
msvb7.dll9.0.30729.17727425928 De novembro de 20082: 19x 64
msvb7.dll9.0.30729.17757331848 De novembro de 20082: 19IA-64
msvsmon.exe9.0.30729.17799925208 De novembro de 20082: 19x 86
msvsmon.exe9.0.30729.17747614168 De novembro de 20082: 19x 86
msvsmon.exe9.0.30729.17732167128 De novembro de 20082: 19x 86
msvsmon.exe9.0.30729.17732167128 De novembro de 20082: 19x 86
msvsmon.exe9.0.30729.17747614168 De novembro de 20082: 19x 64
msvsmon.exe9.0.30729.17799925208 De novembro de 20082: 19IA-64
NatDbgDE.dll9.0.30729.17713479128 De novembro de 20082: 19x 86
NatDbgDE.dll9.0.30729.1773141848 De novembro de 20082: 19x 86
vsdebug.dll9.0.30729.17715849688 De novembro de 20082: 19x 86
msvb7.dll9.0.30729.17740871048 De novembro de 20082: 19x 86

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Propriedades

ID do artigo: 957912 - Última revisão: quarta-feira, 4 de fevereiro de 2009 - Revisão: 2.0
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Studio 2008 Service Pack 1
Palavras-chave: 
kbmt kbsurveynew kbhotfixserver kbexpertiseadvanced kbqfe KB957912 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 957912

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com