MORE INFORMATION
CD-ROM: Test Engine Uninstall Disables Visual Studio .NET Functionality
An error has been discovered that occurs when you uninstall the
developing Web/Win apps test engine. You are left unable to open a new project
in Visual Studio, with an error that Automation Server Can't Create
Object.
The workaround is to re-register the
windows/system32/scrrun.dll file with the following steps:
- Open the command prompt.
- Change directory to windows\system32: Type
cd\windows\system32 and press enter.
- Verify that the scrrun.dll file is in the system32
directory: Type dir scrrun* and press enter. The file name should be
displayed.
- You now need to register scrrun.dll: Type regsvr32
scrrun.dll and press enter. You should get a message that the registration was
successful.
You should now be able to open a new project in Visual
Studio.
Page xxvi: Correction To Requirements
On page xxvi, in the second bullet,
Change:
"Microsoft Certified Solution Developers are required to pass three core
Microsoft Windows operating system technology exams and one BackOffice
technology elective exam."
To:
"Microsoft Certified Solution
Developer (MCSD) for Microsoft .NET candidates are required to pass four core
exams and one elective exam."
Page 11: Missing As
On page 11, under "Using Value Type and Reference Type
Variables",
change:
"Dim x, y Integer"
to:
"Dim
x, y As Integer"
Page 11: Incorrect Statement About Variable Default Initialization in C#
On page 11, the final paragraph of the section "Reference Types"
incorrectly states that in C# variables are not given default initialization.
In fact, variables of a reference type have a default value of null.
Change:
"In C#, variables are not given default initialization. Any
attempt to use an uninitialized variable, whether at a class level or a method
level, will result in an error."
To:
"In C#, variables of a
reference type have a default value of null. It is generally not recommended
that you rely on the default value, and these variables should not be used
uninitialized."
Page 13: Corrections To Code Sample
On page 13, in the second Visual C# code example, there are two
capitalization errors (one in line 3, one in line 4) and "anotherWidget" is
missing from the third line of code.
Change:
// You can now refer to MyNameSpaceTwo as myAlias. The
// following two lines produce the same result:
MyNameSpaceTwo.Widget = new myNameSpaceTwo.Widget
MyAlias anotherWidget = new myAlias
To:
// You can now refer to MyNameSpaceTwo as myAlias. The
// following two lines produce the same result:
MyNameSpaceTwo.Widget anotherWidget = new MyNameSpaceTwo.Widget
myAlias anotherWidget = new myAlias
Page 13: Incorrect Information About Aliasing in Visual Basic.NET
On page 13, remove the line above "Referencing External
Libraries":
"Aliasing is not available in Visual Basic.NET."
Page 16: "Public Integer Spin" Should Be "Public Spin as Integer"
On page 16, in the second line from the bottom,
Change:
"Public Integer Spin"
To:
"Public Spin as
Integer"
Page 20: Missing "Return Result"
On page 20, in the code sample for "Visual Basic.NET",
Change:
Result = first + second
End Function
To:
Result = first + second
Return Result
End Function
Page 31: Object1 Should Be Object2
On page 31, in the last line,
Change:
"Object1.MyField = 20"
To:
"Object2.MyField = 20"
Page 38: Timer Update Interval Correction
On page 38, in the first paragraph of Exercise 1.2, Demonstrating
Garbage Collection, there is the statement that an invisible timer updates the
label control every second. The example included on the CD, however, actually
does this update every tenth of a second.
Page 39: Correction To Step 2
On page 39, Step 2,
Change:
"Right-click Form1 and choose View Code. The code window opens."
To:
"Double-click Button1 to create the click event handler for Button1."
Page 56: Active Should Be Activate
On page 56, under the first "Visual C#",
Change:
"myForm.Active();"
To:
"myForm.Activate();"
Page 59: Deactivated Should Be Deactivate
On page 59, in the "Activated/Deactivated" section, the form
event "Deactivate" is incorrectly referred as "Deactivated". All instances of
"Deactivated" should be changed to "Deactivate" in this section.
Page 60: CancelEventArgsCancel Should Be CancelEventArgs.Cancel
On page 60, under "Visual C#",
Change:
"CancelEventArgsCancel = true;"
To:
"CancelEventArgs.Cancel =
true;"
Page 64: Tab Index Should Be Tab Order
On page 64, in the second step 1,
Change:
"1. From
the View menu, choose Tab Index."
To:
"1. From the View menu,
choose Tab Order."
Page 78: Correction To Access Keys
On page 78, under Access Keys, remove:
"When it is
open, you can choose Alt+N to create a new item."
Page 96: Libby Should Be Joe
On page 96, in Table 2.2,
Change:
"Libby's
Doughnut Factory"
To:
"Joe's Doughnut Factory"
Pages 104 And 505: Shortcut Should Be Context
On pages 104 and 505, in question 6,
Change:
"shortcut menu"
To:
"context menu"
Page 119: (day DaysOfWeek) Should Be (DaysOfWeek day)
On page 119, in the second Visual C# sample code, change:
(day DaysOfWeek)
To:
(DaysOfWeek day)
Page 124: Missing () In Both Code Samples
On page 124, in both code samples for Visual C#,
Change:
System.Collections.ArrayList myList = new System.Collections.ArrayList;
...
Widget myWidget = new Widget;
To:
System.Collections.ArrayList myList = new System.Collections.ArrayList();
...
Widget myWidget = new Widget();
Page 150: Incorrect Comment Mark
On page 150, in the code sample,
Change:
// A default value for price
To:
' A default value for price
Page 209: Incorrect Step Over And Step Out Shortcut Key
On page 209, in Table 5.1,
Change:
"Step Into F11
Step Over F10"
To:
"Step Into F8
Step Over Shift+F8"
Page 229: Correction To Lesson Goals
On page 229, in the first
paragraph
Remove:
"Additionally, you will learn how to create a
multicultural test environment and to provide multicultural test data to your
application."
Also remove the second and third bullets on this
page:
"Explain how to create a multicultural test environment for your
application"
"Describe how to provide multicultural test data to your
application"
Page 244: Project Name Correction
On page 244, step 3 of the exercise, the file names given,
CalculatorVB and CalculatorCSharp, are incorrect.
Change:
"...and choose either CalculatorVB or CalculatorCSharp, ..."
To:
"...and choose either VB or C Sharp,..."
Page 245: Correction To Names
On page 245, in steps 4 and 5, the first instance of
CurrentOperation and Register2 should be misspelled to match the error message.
Change:
"4. Double-click the first error in the Task List. You
are taken to an error that cannot find a member named CurrentOperation. Change
this statement to read CurrentOperation to correct the error.
5.
Double-click the final error in the Task List. Correct the spelling of
Register2 to correct the error."
To:
"4. Double-click the first
error in the Task List. You are taken to an error that cannot find a member
named CurretOperation. Change this statement to read CurrentOperation to
correct the error.
5. Double-click the final error in the Task List.
Correct the spelling of Regiter2 to correct the error."
Page 245: Additional Code Correction Step In Exercise 5.1
In the section "To identify and correct syntax errors" on page
245, an additional step is required to correct the project code in order to
complete the following Lab section "To identify and correct a run-time error".
Add the following step:
7. Locate the NumberHandler method.
For VB, change:
CurrentNumberString = CurrentNumberString & CType((CType(sender, Textbox).Tag), String)
To:
CurrentNumberString = CurrentNumberString & CType((CType(sender, Button).Tag), String)
For C#, change:
CurrentNumberString = CurrentNumberString + ((TextBox)sender).Tag.ToString();
To:
CurrentNumberString = CurrentNumberString + ((Button)sender).Tag.ToString();
Page 246: Values Of Test Cases
On page 246, the values given for columns CurrentNumberString and
CurrentNumberString Expected for the first test case in Table 5.4 are
incorrect.
In addition, the column header "Value of
LabelDisplay.Text" should read "Value of DisplayLabel.Text"
Change:
To:
Page 258: Correction To SqlCommand
On page 258, in the second paragraph under "Using Data
Commands",
Change:
"The SqlCommand class is designed to interact
specifically with Microsoft SQL Server 7.0"
To:
"The SqlCommand
class is designed to interact specifically with Microsoft SQL Server 7.0 and
above"
Page 271: Incorrect Concatenation Character
In the first line of the Visual C# code snippet on page 271, the
ampersand ("&") character is used incorrectly as the concatenation of the
SQL command string. This should be the plus ("+") character.
Change:
Cmd = "DELETE = FROM Employees WHERE Name = '" & aString & "'";
To:
Cmd = "DELETE = FROM Employees WHERE Name = '" + aString + "'";
Page 282: DataSet should be DataTable
On page 282, in step 3 of the section To create a DataSet programmatically,
Change:
"...Columns collection of the DataSet."
To:
"...Columns collection of the DataTable"
Page 283: DataSet should be DataTable
On page 283, in the third paragraph,
Change:
"Next, you should add the appropriate number of columns to your DataSet."
To:
"Next, you should add the appropriate number of columns to your DataTable."
Page 287: myDataRow Should Be myDataColumn
On page 287, under the section Unique Constraints there are three
instances where the reference should be to DataColumn, not Data Row. In the
first paragraph, and in the immediately following Visual Basic .NET and Visual
C# examples of setting the property to true, the reference should be changed
from Data Row to DataColumn.
In the first paragraph, change:
"...set the Unique property of a DataRow to True (true)..."
To:
"...set the Unique property of a DataColumn to True (true)..."
In the Visual Basic .NET example immediately following, change:
"myDataRow.Unique = True"
To:
"myDataColumn.Unique =
True"
In the Visual C# example of this, change:
"myDataRow.Unique = true;"
To:
"myDataColumn.Unique =
true;"
Page 293: Transaction Should Be Command
On page 293, in
step 4,
Change:
"Execute each transaction"
To:
"Execute each command"
Page 320: ConnectionText should be CommandText
On page 320, in Table 6.7,
Change:
"ConnectionText"
To:
"CommandText"
Page 324: DataRelation Should Be Relation
On page 324, in steps 1 and 3 of the "To add DataRelation objects
to your schema using the XML Designer" section, you are instructed to drag a
DataRelation object. In the toolbox this object is referred to as a Relation
object.
In step 1, change:
"1. From the Toolbox, drag a
DataRelation object..."
To:
"1. From the Toolbox, drag a
Relation object..."
In step 3, change:
"3. Drag another
DataRelation object..."
To:
"3. Drag another Relation
object..."
Page 327: Change To Visual C# Sample Code
On page 327, in the first Visual C# code sample below table 6.11,
a line of code is repeated.
Change:
daOrders.Fill(objdsDoughnut);
daOrders.Fill(objdsDoughnut);
To:
daOrders.Fill(objdsDoughnut);
daItems.Fill(objdsDoughnut);
Page 356: Missing ) After (button)
On page 356, in the last Visual Basic.Net code
sample,
Change:
<ToolboxBitmap(GetType(button)>
To:
<ToolboxBitmap(GetType(button))>
Page 420: Correction To Sample Visual Basic Code
On page 420, in the Visual Basic code sample, 12 lines from the
top of page, change:
If Not (ItemCounter = lstOrders.Items.Count - 1) Then
e.HasMorePages = True
To:
If Not (ItemCounter = lstOrders.Items.Count) Then
e.HasMorePages = True
Page 462: Missing Dashes In Comment
On page 462, in step 5 for Visual C#, the first comment is not
closed properly.
Change:
<!-- Change the value of Culture to set the current culture >
To:
<!-- Change the value of Culture to set the current culture -->
Page 505: Correction to Question 4 Answer
On page 505, in the answer for question 4,
Change:
"You can set the tab order in Visual Studio by choosing Tab Index from the View
Menu..."
To:
"You can set the tab order in Visual Studio by
choosing Tab Order from the View Menu..."
Microsoft Press is committed to providing informative and accurate
books. All comments and corrections listed above are ready for inclusion in
future printings of this book. If you have a later printing of this book, it
may already contain most or all of the above
corrections.