Artigo: 327213 - Última revisão: segunda-feira, 23 de Janeiro de 2006 - Revisão: 2.5

Erro: Objecto SaveFileDialog devolve 'Cancelar' se substituir um ficheiro existente ou não

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sintomas

Quando chama o método ShowDialog de um objecto SaveFileDialog do procedimento Sub Main, receberá DialogResult.CANCEL se optar por substituir um ficheiro existente ou não.

Resolução

Para evitar este problema, chame o método ShowDialog de fora do procedimento Sub Main.

Ponto Da Situação

A Microsoft confirmou que este é um erro no Microsoft produtos listados no início deste artigo.

Mais Informação

Passos para reproduzir o comportamento

  1. No Visual Basic. NET, crie uma nova aplicação de consola de projecto.
  2. No Explorador de projecto , clique com o botão direito do rato em References e, em seguida, clique em Adicionar referência.
  3. Clique em .NET Framework .
  4. Na lista Nome do componente , clique em System.Windows.Forms.Dll , clique em Seleccionar e, em seguida, clique em OK .
  5. Acima da secção módulo do módulo 1, introduza o seguinte código:
    Imports System.Windows.Forms
    					
  6. No procedimento Sub Main, introduza o seguinte código:
    Dim myDialog As New SaveFileDialog()
    MessageBox.Show(myDialog.ShowDialog.ToString)
    					
  7. No menu Debug , clique em Iniciar para executar a aplicação.
  8. Na caixa de diálogo Guardar como , seleccione qualquer ficheiro existente e, em seguida, clique em Guardar .
  9. Na caixa de diálogo que lhe pede a pergunta "Pretende substituir o ficheiro existente", clique em Sim .

    Repare que a caixa de mensagem apresenta a cancelar DialogResult.
  10. Inicie a aplicação novamente. Repita o passo 8, mas na caixa de diálogo que pede-lhe a pergunta "Pretende substituir o ficheiro existente", clique em não .

    Repare que a caixa de mensagem apresenta a cancelar DialogResult.

A informação contida neste artigo aplica-se a:
  • Microsoft .NET Framework 1.1
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
Palavras-chave: 
kbmt kbvs2005doesnotapply kbvs2005swept kbvs2002sp1sweep kbbug kbnofix KB327213 KbMtpt
Tradução automáticaTraduçã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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 327213  (http://support.microsoft.com/kb/327213/en-us/ )