Artigo: 949730 - Última revisão: terça-feira, 26 de Fevereiro de 2008 - Revisão: 1.0

MCTS Paced Training Kit (Exam 70-536): Microsoft ® .NET Framework 2.0, comentários de Foundation de desenvolvimento de aplicações e correcções parte 3

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

Sumário

Este artigo contém comentários, correcções e informações sobre erros conhecidos relacionados com o livro do Microsoft Press MCTS Paced Training Kit (Exam 70-536): Microsoft ® .NET Framework 2.0-Application Development Foundation , 0-7356-2277-9.Estão disponíveis artigos 923018 (http://support.microsoft.com/kb/923018/) 935218 (http://support.microsoft.com/kb/935218/) e 949734 (http://support.microsoft.com/kb/949734/) correcções adicionais para este livro.

Abrange os seguintes tópicos:

  • Página 512: O primeiro parágrafo na página não está correcto
  • Página 529: Incompletas informações no passo 2 de laboratório
  • Páginas 544-545: ConfigurationSection tem um construtor personalizado criado
  • Página 546: Classe de configuração referenciado em vez da classe ConfigurationManager
  • Página 549: Sugeridas prática título correcção
  • Página 556: Aplicação referenciada em vez de "registo de eventos" na legenda figura 10-2
  • Páginas 564-565: O termo métodos é utilizado em vez de membros
  • Página 567: Descrição incorrecta do método de escrita da classe de depuração
  • Página 568: Descrição incorrecta do método WriteLine da classe de depuração
  • Página 579: Referência incorrecta à versão anterior do .NET Framework
  • Página 579: Método referenciado em vez de atributo
  • Página 582: DelimmedListTraceListener referenciado em vez de DelimitedListTraceListener
  • Métodos de página 582-583: referenciados em vez de membros
  • 584 De página: Código de ficheiro de configuração incorrecta
  • Página 590: MyListener não adicionado à coleção Trace.Listeners
  • Página 600: A imagem na figura 10 a 13 está incorrecta
  • Página 601: A imagem na figura 10 a 14 está incorrecta
  • Página 606: Isto utilizado em vez de me no exemplo de código
  • Página 606: Declaração variável incorrecta no segundo exemplo de código
  • Página 606: tbFileName não utilizado na instrução Process.Start no terceiro exemplo de código
  • Página 607: Incorrecta figura 10-15
  • Página 608: tbUsername utilizado em vez de tbUserName
  • Página 612: XmlTextWriterListener deve ser XmlWriterTraceListener
  • 616 De página: Utilizado de "DirectoryObjectSearcher" em vez de "ManagementObjectSearcher"
  • Página 619: Endereço_IP utilizado em vez de IP_Enabled
  • 621 De página: Incorrecta utilização das directivas no passo 5

Mais Informação

Página 512: O primeiro parágrafo na página não está correcto

Na página 512, o primeiro parágrafo na página é uma reprodução do primeiro parágrafo na página 448. Ignore este parágrafo.

Página 529: Incompletas informações no passo 2 de laboratório

Na página 529, passo 2 do laboratório lê:

"Seleccione o nó Política de segurança runtime"

Deverá ler:

"Seleccione o nó de política de segurança de tempo de execução e, seleccione a opção aumentar assemblagem fidedignidade."

Páginas 544-545: ConfigurationSection tem um construtor personalizado criado

Nas páginas 544-545, leia os passos 7 e 8:

"7. Seleccione o Program.cs ou Module1.vb ficheiro e abri-lo. Crie um novo método estático/partilhada com nenhum tipo de retorno e o nome WriteSettings, tal como mostrado aqui:
' VB
Private Shared Sub WriteSettings()
End Sub

// C#
private static void WriteSettings()
{};

8. Insert the following code into the method:

' VB
Private Shared Sub WriteSettings()

	Try

		Dim LabSection As ConfigurationSection
		Dim config As _
			System.Configuration.Configuration = _
			ConfigurationManager.OpenExeConfiguration( _
			ConfigurationUserLevel.None)
		If config.Sections("LabSection") Is Nothing Then
			LabSection = New ConfigurationSection()
			config.Sections.Add("LabSection", ConfigurationSection)
			customSection.SectionInformation.ForceSave = True
			config.Save(ConfigurationSaveMode.Full)
		End If

		Catch ex As ApplicationException
			Console.WriteLine(ex.ToString())
	End Try
End Sub

// C#
try
	{
	ConfigurationSection LabSection;

	// Get the current configuration file.
	System.Configuration.Configuration config =
		ConfigurationManager.
		OpenExeConfiguration(ConfigurationUserLevel.None);

	if (config.Sections["LabSection"] == null)
		{
		customSection = new ConfigurationSection();
		config.Sections.Add("LabSection", ConfigurationSection);
		customSection.SectionInformation.ForceSave = true;
		config.Save(ConfigurationSaveMode.Full);
		}
	}
catch (ApplicationException ex)
	{
	Console.WriteLine(ex.ToString());
	}
"

Deverá ler:

"7. Seleccione o Program.cs ou Module1.vb ficheiro e abri-lo. Crie um novo método estático/partilhada com nenhum tipo de retorno e o nome WriteSettings, tal como mostrado aqui:
' VB
Private Shared Sub WriteSettings()
End Sub

// C#
private static void WriteSettings()
{};

Create a new public class called CustomSection, as shown here:

' VB
Public Class CustomSection
	Inherits ConfigurationSection
End Class

//C#
public class CustomSection : ConfigurationSection
{
	public CustomSection()
	{ }
}

8. Insert the following code into the method:

' VB
Try
	Dim customSection As CustomSection
	Dim config As _
	System.Configuration.Configuration = _
	ConfigurationManager.OpenExeConfiguration( _
	ConfigurationUserLevel.None)
	If config.Sections("LabSection") Is Nothing Then
		customSection = New CustomSection()
		config.Sections.Add("LabSection", customSection)
		customSection.SectionInformation.ForceSave = True
		config.Save(ConfigurationSaveMode.Full)
	End If
Catch ex As ApplicationException
	Console.WriteLine(ex.ToString())
End Try

// C#
try
	{
	CustomSection customSection;

	// Get the current configuration file.
	System.Configuration.Configuration config =
		ConfigurationManager.
		OpenExeConfiguration(ConfigurationUserLevel.None);

	if (config.Sections["LabSection"] == null)
		{
		customSection = new CustomSection();
		config.Sections.Add("LabSection", customSection);
		customSection.SectionInformation.ForceSave = true;
		config.Save(ConfigurationSaveMode.Full);
		}
	}
catch (ApplicationException ex)
	{
	Console.WriteLine(ex.ToString());
	}
"

Página 546: Classe de configuração referenciado em vez da classe ConfigurationManager

Na página 546, a primeira revisão lição perguntas leituras:

"Os métodos da classe de configuração são válidas formas de abrir um ficheiro de configuração? (Seleccione todos os que se aplicam.)"

Deverá ler:

"Os métodos da classe ConfigurationManager são válidas formas de abrir um ficheiro de configuração? (Seleccione todos os que se aplicam.)"

Página 549: Sugeridas prática título correcção

Na página 549, sob as práticas sugeridas título-leituras:

"Criar uma unidade de isolamento para Common Language Runtime dentro de uma aplicação do .NET Framework utilizando domínios de aplicação"

Deverá ler:

"Incorporar a funcionalidade Gestão de configuração para uma aplicação do .NET Framework".

Página 556: Aplicação referenciada em vez de "registo de eventos" na legenda figura 10-2

Na página 556, lê a legenda a figura 10-2:

"O Windows Visualizador de eventos depois da aplicação Chap10Demo foi criada e escrita"

Deverá ler:

"O Windows Visualizador de eventos depois do registo de eventos Chap10Demo foi criado e escrito"

Páginas 564-565: O termo métodos é utilizado em vez de membros

Na página 564, a última frase:

"Os métodos listados na tabela de 10-1."

Deverá ler:

"Os membros são listados na tabela de 10-1".

Na página 565, lê o título da tabela de 10-1:

"Métodos de classe Debugger"

Deverá ler:

"Os membros da classe Debugger"

Página 567: Descrição incorrecta do método de escrita da classe de depuração

Na página 567, lê a descrição do método Write na tabela de 10-2:

"Escreve informações sobre anexados objectos de escuta de classe de rastreio de depuração ou na colecção listeners."

Deverá ler:

"Escreve informações anexados rastreio de depuração ou escuta objectos de classe na colecção listeners."

Página 568: Descrição incorrecta do método WriteLine da classe de depuração

Na página 568, lê a descrição do método WriteLine na tabela de 10-2:

"Escreve informações sobre anexados objectos de escuta de classe de rastreio de depuração ou na colecção listeners."

Deverá ler:

"Escreve informações anexados rastreio de depuração ou escuta objectos de classe na colecção listeners."

Página 579: Referência incorrecta à versão anterior do .NET Framework

Na página 579, a quarta da secção DebuggerStepThroughAttribute frase:

"Nas versões anteriores do .NET Framework, sempre que criou um Winform por exemplo, este atributo foi adicionado para o método InitializeComponent."

Deverá ler:

"No Visual Basic .NET e Visual Basic 2005, sempre que criou um Winform por exemplo, este atributo é aplicado a método InitializeComponent."

Página 579: Método referenciado em vez de atributo

Na página 579, a segunda secção DebuggerStepThroughAttribute frase:

"Ao contrário de DebuggerHiddenAttribute no entanto, este método indica o depurador para o passo através de código em vez de ocultá-la do resultado."

Deverá ler:

"Ao contrário de DebuggerHiddenAttribute no entanto, este atributo indica o depurador para o passo através de código em vez de ocultá-la do resultado."

Página 582: DelimmedListTraceListener referenciado em vez de DelimitedListTraceListener

Na página 582, a segunda da secção de classe de rastreio de frase:

"Visual Studio 2005 tem escuta objectos muitos incorporados, incluindo XmlTraceListener, DefaultTraceListener, DelimmedListTraceListener e EventLogTraceListener."

Deverá ler:

"Visual Studio 2005 tem escuta objectos muitos incorporados, incluindo XmlTraceListener, DefaultTraceListener, DelimitedListTraceListener e EventLogTraceListener."

Métodos de página 582-583: referenciados em vez de membros

Na página 582, a terceira da secção de classe de rastreio de frase:

"Uma lista dos métodos mais úteis é fornecida na tabela de 10-4."

Deverá ler:

"Fornecida uma lista dos membros útil está na tabela de 10-4."

Lê o título de tabela de 10-4:

"Métodos de classe rastreio"

Deverá ler:

"Os membros da classe rastreio"

Na página 583, lê a primeira frase depois tabela 10-4:

"Uma vez que estes métodos são idênticos aos descritas na secção anterior sobre a classe de depuração ou são auto-explicativo, let?s mover."

Deverá ler:

"Uma vez que estes membros são idênticos aos descritas na secção anterior sobre a classe de depuração ou são auto-explicativo, let?s mover."

584 De página: Código de ficheiro de configuração incorrecta

Na página 584, lê a quarta linha do primeiro exemplo de código:

<add name="DemoApp" value="2" />

Deverá ler:

<add name="DemoApp.Switch" value="Information"/>


Página 590: MyListener não adicionado à coleção Trace.Listeners

Na página 590, lê o código de exemplo do passo 4:

' VB
Trace.Listeners.Clear()
Dim MyLog as New EventLog("Chapter10", "localhost", "Chapter10Demo")
Trace.AutoFlush = True
Dim MyListener as EventLogTraceListener = new EventLogTraceListener(MyLog)
Trace.WriteLine("This is a test")

// C#
EventLog MyLog = new EventLog("Chapter10", "localhost", "Chapter10Demo");
Trace.AutoFlush = true;
EventLogTraceListener MyListener = new EventLogTraceListener(MyLog);
Trace.WriteLine("This is a test");

Deverá ler:

' VB
Trace.Listeners.Clear()
Dim MyLog as New EventLog("Chapter10", "localhost", "Chapter10Demo")
Trace.AutoFlush = True
Dim MyListener as EventLogTraceListener = new EventLogTraceListener(MyLog)
Trace.Listeners.Add(MyListener)
Trace.WriteLine("This is a test")

// C#
EventLog MyLog = new EventLog("Chapter10", "localhost", "Chapter10Demo");
Trace.AutoFlush = true;
EventLogTraceListener MyListener = new EventLogTraceListener(MyLog);
Trace.Listeners.Add(MyListener);
Trace.WriteLine("This is a test");


Página 600: A imagem na figura 10 a 13 está incorrecta

Na página 600, a imagem na figura 10 a 13 deverá ser substituída pela imagem da figura 10 a 14 de página 601.

Página 601: A imagem na figura 10 a 14 está incorrecta

Na página 601, a imagem na figura 10 a 14 deve ser substituída pela imagem da figura 10-15 na página 607.

Página 606: Isto utilizado em vez de me no exemplo de código

Na página 606, lê a terceira linha do primeiro exemplo de código:

Info.FileName = this.tbProcessName.Text

Deverá ler:

Info.FileName = Me.tbProcessName.Text


Página 606: Declaração variável incorrecta no segundo exemplo de código

Na página 606, lê a terceira linha da segunda amostra de código:

String FileName = "C:\ProcessStartDemo.exe"

Deverá ler:

Dim FileName As String = "C:\ProcessStartDemo.exe"


Página 606: tbFileName não utilizado na instrução Process.Start no terceiro exemplo de código

Na página 606, lê o terceiro exemplo de código:

' VB
Dim SecurePassword As New SecureString
For i As Int32 = 0 To Me.tbPassword.Text.Length - 1
	SecurePassword.AppendChar(Convert.ToChar(Me.tbPassword.Text(i)))
Next
Process.Start(Me.tbUserName.Text, Me.tbUserName.Text, SecurePassword, Me.tbDomain.Text)

// C#
SecureString SecurePassword = new SecureString();
for (Int32 i = 0; i < this.tbPassword.Text.Length; i++)
{
	SecurePassword.AppendChar(Convert.ToChar(this.tbPassword.Text[i]));
}
Process.Start(this.tbUserName.Text, this.tbPassword.Text, SecurePassword , this.tbDomain.Text);

Deverá ler:

' VB
Dim SecurePassword As New SecureString
For i As Int32 = 0 To Me.tbPassword.Text.Length - 1
	SecurePassword.AppendChar(Convert.ToChar(Me.tbPassword.Text(i)))
Next
Process.Start(Me.tbFileName.Text, Me.tbUserName.Text, SecurePassword, Me.tbDomain.Text)

// C#
SecureString SecurePassword = new SecureString();
for (Int32 i = 0; i < this.tbPassword.Text.Length; i++)
{
	SecurePassword.AppendChar(Convert.ToChar(this.tbPassword.Text[i]));
}
Process.Start(this.tbFileName.Text, this.tbUserName.Text, SecurePassword,
    this.tbDomain.Text);


Página 607: Incorrecta figura 10-15

Na página 607, figura 10-15 está incorrecto. Ignore este valor.

Página 608: tbUsername utilizado em vez de tbUserName

Na página 608, lê a oitava linha do exemplo de código C#:

if (this.tbUsername.Text != String.Empty)

Deverá ler:

if (this.tbUserName.Text != String.Empty)


Página 612: XmlTextWriterListener deve ser XmlWriterTraceListener

Na página 612, a quarta frase a segunda marca inclui uma referência incorrecta à XmlTextWriterListener.

Alteração:
"O XmlTextWriterListener permite a depuração e rastreio de saída a ser escritos com informações detalhadas armazenadas em atributos XML predefinidos."

Para:
"O XmlWriterTraceListener permite a depuração e rastreio de saída a ser escritos com informações detalhadas armazenadas em atributos XML predefinidos."

616 Páginas: "DirectoryObjectSearcher" utilizado em vez de "ManagementObjectSearcher"

Na página 616, existem várias instâncias onde "DirectoryObjectSearcher" é utilizado em vez de "ManagementObjectSearcher", a primeira do parágrafo em objectos de gestão de enumerar frase:

"No núcleo do System.Management o espaço de nomes é o objecto DirectoryObjectSearcher que ccan aceder programaticamente a recursos através do WMI."

Deverá ler:

"No núcleo do System.Management o espaço de nomes é o objecto ManagementObjectSearcher que ccan aceder programaticamente a recursos através do WMI."

O último do mesmo parágrafo frase:

"Para executar uma consulta utilizando o DirectoryObjectSearcher, os seguintes passos tem de ser efectuada:"

Deverá ler:

"Para executar uma consulta utilizando o ManagementObjectSearcher, os seguintes passos tem de ser efectuada:"

Leituras de passo nº 2:

"Declarar uma instância da classe DirectoryObjectSearcher."

Deverá ler:

"Declarar uma instância da classe ManagementObjectSearcher."

Leituras de passo # 5:

"Criar um ManagementObjectCollection e defina-o valor devolvido do método de obter o DirectoryObjectSearcher."

Deverá ler:

"Criar um ManagementObjectCollection e defina-o valor devolvido do método de obter o ManagementObjectSearcher."

Página 619: Endereço_IP utilizado em vez de IP_Enabled

Na página 619, linha de código de exemplo 28, lê:

if (Convert.ToBoolean(DemoManager[IP_Address]) == true)

Deverá ler:

if (Convert.ToBoolean(DemoManager[IP_Enabled]) == true)


621 De página: Incorrecta utilização das directivas no passo 5

Na página 621, lê o exemplo de código C# no passo 5:

Using System.Diagnostics;
Imports System.Management;

Deverá ler:

using System.Diagnostics;
using System.Management;


Está empenhada em fornecer informativos e precisos livros Microsoft Press. Todos os comentários e as correcções listadas acima estão prontas para inclusão no futuras impressões deste livro. Se tiver uma posterior impressão deste manual, já pode conter a maior parte ou todas as correcções acima.

A informação contida neste artigo aplica-se a:
  • MCTS Self-Paced Training Kit (Exam 70-536): Microsoft .NET Framework 2.0 - Application Development Foundation, ISBN 0-7356-2277-9
Palavras-chave: 
kbmt KB949730 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: 949730  (http://support.microsoft.com/kb/949730/en-us/ )