September 29, 2008

ASP.NET INTRODUCTION

Unlike the ASP runtime, ASP.NET uses the Common Language Runtime (CLR) provided
by the .NET Framework. The CLR is the .NET runtime, which manages the execution
of code. The CLR allows the objects, which are created in different languages,
to interact with each other and hence removes the language barrier. CLR thus
makes Web application development more efficient.



In addition to simplifying the designing of Web applications, the .NET CLR
offers many advantages. Some of these advantages are listed as follows.

Improved performance:



The ASP.NET code is a compiled CLR code instead of an interpreted code. The CLR
provides just-in-time compilation, native optimization, and caching. Here, it is
important to note that compilation is a two-stage process in the .NET Framework.
First, the code is compiled into



the Microsoft Intermediate Language (MSIL).



Then, at the execution time, the MSIL is compiled into native code. Only the
portions of the code that are actually needed will be compiled into native code.
This is called Just In Time compilation. These features lead to an overall
improved performance of ASP.NET applications.



Flexibility:

The entire .NET class library can be accessed by ASP.NET applications. You can
use the language that best applies to the type of functionality you want to
implement, because ASP.NET is language independent.



Configuration settings:

The application-level configuration settings are stored in an Extensible Markup
Language (XML) format. The XML format is a hierarchical text format, which is
easy to read and write. This format makes it easy to apply new settings to
applications without the aid of any local administration tools.



Security:

ASP.NET applications are secure and use a set of default authorization and
authentication schemes. However, you can modify these schemes according to the
security needs of an application.



In addition to this list of advantages, the ASP.NET framework makes it easy to
migrate from ASP applications.



Creating an ASP.NET Application



Use a text editor:

In this method, you can write the code in a text editor, such as Notepad, and
save the code as an ASPX file. You can save the ASPX file in the directory
C:inetpubwwwroot. Then, to display the output of the Web page in Internet
Explorer, you simply need to type http://localhost/.aspx in the Address box. If
the IIS server is installed on some other machine on the network, replace "localhost"
with the name of the server. If you save the file in some other directory, you
need to add the file to a virtual directory in the Default WebSite directory on
the IIS server. You can also create your own virtual directory and add the file
to it.



Use the VS.NET IDE:

In this method, you use the IDE of Visual Studio .NET to create a Web page in a
WYSIWYG manner. Also, when you create a Web application, the application is
automatically created on a Web server (IIS server). You do not need to create a
separate virtual directory on the IIS server.



From the preceding discussion, it is obvious that the development of ASP.NET Web
applications is much more convenient and efficient in Visual Studio .NET.



ASP.NET Web pages consist of HTML text and the code. The HTML text and the code
can be separated in two different files. You can write the code in Visual Basic
or C# . This separate file is called the code behind file. In this section,
you'll create simple Web pages by using VB as well as C#.



Before you start creating a Web page, you should be familiar with basic ASP.NET
syntax. At the top of the page, you must specify an @ Page directive to define
page specific attributes, such as language.



To specify the language as VB for any code output to be rendered on the page.



This line indicates that any code in the block, <% %>, on the page is compiled
by using VB.



To render the output on your page, you can use the Response.Write() method.



Creating a Visual Basic Web Application



You can create an ASP.NET application using Visual Basic by creating a Visual
Basic



Web Application project. To do so, complete the following steps:



1. Select File ® New ® Project. The New Project dialog box appears.



2. Select Visual Basic Projects from the Project Types pane.



3. Select ASP.NET Web Application from the Templates pane. The Name box contains
a default name of the application. The Location box contains the name of a Web
server where the application will be created. However, you can change the
default name and location. In this case, the name of the sample application is
SampleVB.



Deploying an ASP.NET Web Application



After creating and testing your ASP.NET Web applications, the next step is
deployment.



Deployment is the process of distributing the finished applications (without the
source code) to be installed on other computers.



In Visual Studio .NET, the deployment mechanism is the same irrespective of the
programming language and tools used to create applications. In this section,
you'll deploy the "Hello World" Web application that you created. You can deploy
any of the application that was created by using VB or C#. Here, you'll deploy
the application created by using VB. To do so, follow these steps:



1. Open the Web application project that you want to deploy. In this case, open
the SampleVB project.



2. Select File ® Add Project ® New Project to open the Add New Project dialog
box.



3. From the Project Types pane, select Setup and Deployment Projects.



From the Templates pane, select Web Setup Project.



4. Change the default name of the project. In this case, change it to "SampleVBDeploy."



5. Click OK to complete the process. The project is added in the Solution
Explorer window.



Additional Resources and Reference

click here for more info mcitp training

click here for more info mcst training

:

 


MCITP SQL Server: Business Intelligence

I need to set some personal objectives for the next six months and I’ve been
considering working towards the Microsoft MCITP SQL Server: Business
Intelligence certification.



This requires that I pass two exams:

* 70-445: Microsoft SQL Server 2005 Business Intelligence – Implementation and
Maintenance

* 70-446 exam: Designing a Business Intelligence Infrastructure by Using
Microsoft SQL Server 2005



Passing the 70-445 gives you the MCTS SQL Server BI certification. Passing the
70-446 gives you the MCITP. The 70-445 is a prerequisite to the 70-446.



According to the latest MCP figures, there aren’t that many MCITP BI developers
out there, so this may be a challenge I’ll take on.



From the company perspective, it will be a big plus as it will earn them their
third competency - Business Intelligence, and will enhance our Microsoft Gold
Partner status. Hitting this milestone should also yield a good bonus at the end
of the year! On a personal level, it will allow me to build on my existing
BusinessObjects and Performance Point Server skills and pick up more of the
Microsoft BI toolset.



I’ve worked with Microsoft SQL Server a great deal and am currently playing
around with SQL Server 2008. I’ve also used most of the Microsoft BI tools as
well; SSIS, SSAS (for cubes) and SSRS. Having looked through the exam
preparation guides, I think I can clear these two exams in the next few months.



I don’t think I’ll take any formal classroom based training for these exams. I’d
rather use my training budget on something else, possibly Crystal Reports or
BusinessObjects Data Integrator. Hence, I’ll be using the MS book MCTS
Self-Paced Training Kit (Exam 70-445): Microsoft® SQL Server™ 2005 Business
Intelligence—Implementation and Maintenance to get me going.



Once this is out of the way, I might start looking at Sharepoint, and portals in
general.



Additional Resources:

click here for more info
mcitp training  

click here for more info
mcst training

MCTS .NET Certification Station

How Do You Retrieve Information About All Network Connections?

One of the objectives of the MCTS .NET Framework exam is to Embed management
information and events into a .NET Framework application. (Refer
System.Management namespace) and within that exam objective there is the
specific objective



Retrieve information about all network connections.

I started to look through the System.Management namespace and found the
ManagementObject and the ManagementObjectSearcher. Then the clarity of the
examples of the descriptions and examples began to muddy. I understood that the
ManagementObjectSearcher was using an ObjectQuery object to perform the search.
It was completely unclear WHAT was being queried.



My investigations then lead me to the Windows Management Interface, known as WMI.
What does this have to do with ObjectQuery and the ManagementObjectSearcher
classes? Well, WMI and the underlying WMI classes are what is actually being
queried. The queries are written in a SQL derivative named WQL. There is a
dizzying variety of information exposed by WMI.



After the mechanics of writing a query are understood, the next task is to find
the correct WMI class that encapsulates the information you need. In the case of
our question at hand, we are looking for networking information.



At first I was happy to find the Win32_NetworkConnection class, but found that
it did not return information for me. (Despite having a connection up for
writing this post). The next promising class was the Win32_NetworkAdapter class.
Using this class I created the example below that retrieves information about
all network connections.



A "gotcha" to consider before reviewing the code below:

My first version of the code listed a number of adapters. I then determined that
it listed physical AND logical network adapters. You will see an if block in the
code to distinguish between physical and logical adapters.



Retrieve Information About All Network Connections Example using System;

// A reference to the System.Management assembly needs

// to be added to your project...

using System.Management;



namespace NetworkConnectionsExample

{

class Program

{

static void Main(string[] args)

{

// In order to use ManagementObjectSearcher, we need to

// supply an query string to search on. We are searching

// against differenct classes exposed by the Windows Management

// Interface(WMI).

ManagementObjectSearcher network_connections =

new ManagementObjectSearcher(

"SELECT * FROM Win32_NetworkAdapter");



Console.WriteLine("\nFirst we will just list the names of all physical
adapters");

Console.WriteLine("and their connection status");

Console.WriteLine("-----------------------------");



// The query of the underlying ObjectQuery object is not executed

// until the Get() function is executed.

foreach (ManagementObject connection in network_connections.Get())

{

// Knowledge by experiment... on my machine there were a number

// of network adapters displayed on my first version of this code.

// I know I only have three pyhisical adapters (Wireless, 10/100,

// and 1394) so I empirically determined that the Management Objects

// with the NetConnectionStatus property were physical apdapters and

// not logical adapters... mileage may vary, results not insured ;)

if (connection.Properties["NetConnectionStatus"].Value != null)

{

Console.WriteLine("Product Name: " + connection.Properties["ProductName"].Value);

Console.WriteLine("Connection Status: " +
connection.Properties["NetConnectionStatus"].Value);

Console.WriteLine("-----------------------------");

}

}



Console.WriteLine("\nNext we will show all of the information availalbe for each
physical adapter.");

Console.WriteLine("Probably more than you ever wanted to know about your network
adapter, but your software might need to know it...");

Console.WriteLine("-----------------------------");



foreach (ManagementObject connection in network_connections.Get())

{

if (connection.Properties["NetConnectionStatus"].Value != null)

{

foreach (PropertyData d in connection.Properties)

{

Console.WriteLine("-- Name: " + d.Name + " Value: " + d.Value);

}

Console.WriteLine("-----------------------------");

}

}

}

}

}





Additional Resources

click here for more info mcitp training

click here for more info mcst training

click here for more info mcse training

click here for more info mcse 2003 training

click here for more info mcdst training

September 28, 2008

MCPD Web Developer exam 70-547 hints and tips

Following my post about studying toward
MCPD certification,
I’ve now taken the exam and am pleased to say I passed with a good score. The
exam 70-547 is about designing and developing web applications using ASP.NET
2.0. It focuses on the full software development lifecycle and covers planning,
architecture, design, testing and deployment, where as the prerequisite MCTS
exams cover more of the actual coding and implementation details.



My main study guide was the official Microsoft Press book, MCPD Self-Paced
Training Kit (Exam 70-547). It covered the syllabus thoroughly enough to get me
through the exam, but like most similar books wasn’t much fun to read. It’s over
700 pages, and after the first few hundred the content starts to get fairly
monotonous. It’s also difficult to skim because you might miss something
essential for the exam. If you’re an experienced developer then you might not
learn much, but if you’re new to coding then you should find plenty of useful
information about broader areas of software development, such as architecture,
data modelling and unit testing.



A lot of the testing chapters read like an advert for Visual Studio Team System
(VSTS) and aggressively promote its unit testing and web load testing
capabilities. There’s nothing wrong with that, it’s a Microsoft exam after all,
but you will need Visual Studio Team Test if you want to work through the
practical exercises (an evaluation version is available). The unit testing in
VSTS is impressive, but doesn’t seem to offer much over the freely available
NUnit. The web load testing on the other hand is invaluable.



My best advice for the book is to read it in short frequent bursts. Try to read
a little bit every day and you’ll easily work through it, so don’t be
intimidated. If you find yourself slacking, just register for the exam and
you’ll soon become motivated. And remember to use the 15% exam discount voucher
that comes with the book.



My other study resource, which I also used for the
MCTS exams, was
the practice test from Testkingdom.com. The questions are very relevant to the
actual exam, and helped highlight areas to focus my study. The most useful
feature is that every answer has an explanation, so if you get one wrong you can
see why and hopefully fill a gap in your knowledge.



The exam isn’t easy, but many questions appeal to common sense as well as
technical expertise, and there aren’t any trick questions. There’s more than
enough time to work through the 40 multiple-choice questions, so be careful to
read each one closely and don’t panic. Some questions ask you to pick more than
one answer so follow the instructions carefully. The passing score is 700 out of
1000.



According to Microsoft’s statistics there are only 2,147 MCPD web developers
worldwide, so if you want to improve your skills, stand out in the job market,
or negotiate a promotion then certification could be a great career move.



My next goal is MCTS
certification
for SQL Server and exam 70–431. Then it shouldn’t be too long
before the next generation of .NET 3.5 MCTS are available.

September 27, 2008

MCTS 3.5 certifications



Next week I scheduled in training time focused on gaining “MCTS .NET 2.0 web
dev”.

I started to investigate what the differences are between the 2.0 exams and the
3.5 versions. Here is what I have discovered (sharing it because everyone I’ve
asked haven’t had any ideas about the 3.5 certs)



They stripped out the old 3 ‘silos’ that the MCTS 2.0 exams had



* MCTS: .NET 2.0 Web apps

* MCTS: .NET 2.0 Windows apps

* MCTS: .NET 2.0 Distributed apps



and replaced it with a number of certifications that focus on a technology area.



The .NET 3.5 certifications are listed here. The first 3 with prep guides will
be released late March, with the others being released later on.



* MCTS: Windows Presentation Foundation 70-502 prep guide

* MCTS: Windows Communication Foundation 70-503 Prep guide

* MCTS: Windows Workflow 70-504 Prep guide

* MCTS: ADO.NET 70-561 Prep guide

* MCTS: ASP.NET. 3.5 70-562 Prep guide

* MCTS: Windows forms 70-505



All of these .NET 3.5 certifications still have this requirement



* MCTS: .NET 2.0 App development foundation 70-536 Prep guide



Which means you can work towards any of the 3.5 certifications right now. And if
you currently have a MCTS 2.0 certification then you already have passed that
requirement.

They will have “upgrade exams” from
MCTS certifications
to 3.5, but full details haven’t been decided yet. But it is suggested that the
upgrade exams will ONLY cover the differences.



References:

click here for more info mcitp training

click here for more info mcst training




 

September 26, 2008

MCP Defined



“The certification process itself consists of three levels –



MCP



-> MCAD



-> MCSD for the
.NET Framework 1.1 track.



You need to take 6 papers in all 5 compulsory and the last one you have a
choice.



You are an MCP when you clear any one paper of your liking!! You need to make up
your mind whether you want to follow the VB.NET track or the C#.NET track before
starting to prepare. You cannot take one paper from one track and take a
parallel paper from the other track and claim credits.



The papers are as follows:



1) C#.NET / VB.NET



2) ASP.NET (C# or VB.NET track)



3) XML and Web Services (C# or VB.NET track)



4) SQL Server 2000 or higher



5) Project Management



6) You have to choose one of several papers – (Commerce Server/ Exchange Server
etc …)



You become an MCP if you clear any one of the first 5 papers. You are an MCAD
when you clear papers 1 through 4. When you have all 6 you are an MCSD.NET.
However, with 2005, Microsoft has already started upgrade exams. In another
year, they would have a separate track for VS 2005!!
MCSD.NET will
still continue to be recognized at least for the next three years!!



My suggestion – go for paper 1 and make up your mind which track you want to
follow!”



So I chose to sit for MCP 70-315 (ASP.NET with C#).



click here for more info mcitp training

click here for more info mcst training

Boxing/Unboxing in .NET



This post has been long overdue; I should have posted it two months back.
Anyway, a couple of my friends attended training in .NET concepts sponsored by
my company. They came back from the training and discussed with me the stuff
they had learnt. One of the fellows mentioned that they had been taught that
int.ToString() converts an integer (a value type) to a string (a reference type)
and hence, boxes the int. On the other hand, int.Parse() converts a string to an
integer and hence, unboxes the string. When I heard that, I knew deep within me
that what they had been taught was incorrect. But, I did not know why. So, I set
out to find the answer. To find out what happens during a call to int.ToString(),
I decompiled mscorlib.dll (It is present is the .NET Framework directory which
on my machine happens to be C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727) which
contains the implementation of Int32 using Lutz Roeder’s .NET Reflector.



The implementation of ToString() is as follows:



public override string ToString()

{

return Number.FormatInt32(

this,

null,

NumberFormatInfo.CurrentInfo);

}



The Number.FormatInt32() method is declared as follows:



[MethodImpl(MethodImplOptions.InternalCall)]

public static extern string FormatInt32(

int value,

string format,

NumberFormatInfo info);



According to MSDN, the extern modifier is used in C# to declare a method that is
implemented externally. So, the question is: where is FormatInt32() (see above
code fragment) implemented? The answer lies in the MethodImpl attribute which
decorates the method declaration. According to MSDN,
MethodImplOptions.InternalCall specifies that the method is implemented in the
CLR itself. So, I proceeded to download SSCLI a.k.a. Rotor (source code to a
working implementation of the CLR) from here.



I learnt from this site that the ecall.cpp file (which is located at \clr\src\vm\ecall.cpp
in the SSCLI) contains a table that maps managed internal call methods to
unmanaged C++ implementations. I searched for FormatInt32 and found the
following code:



FCFuncElement("FormatInt32", COMNumber::FormatInt32)



This tells that the implementation of FormatInt32 method is actually the
implementation of the native C++ COMNumber::FormatInt32 function. So, the next
question is where do I find the implementation of COMNumber::FormatInt32
function? I noticed that there was a file named comnumber.cpp in the \clr\src\vm
directory. I opened the file and started to examine the COMNumber::FormatInt32
function. I discovered that COMNumber::FormatInt32 calls COMNumber::Int32ToDecChars
function. This function is defined as follows:



wchar_t* COMNumber::Int32ToDecChars(

wchar_t* p,

unsigned int value,

int digits)

{

LEAF_CONTRACT

_ASSERTE(p != NULL);



while (--digits >= 0 || value != 0) {

*–p = value % 10 + ‘0′;

value /= 10;

}

return p;

}



As you can see here, COMNumber::Int32ToDecChars takes each digit of the integer
starting from the rightmost digit and proceeding to the leftmost, converts it to
the equivalent character and stores it in a string and returns the string. There
is actually more action that goes on inside COMNumber::FormatInt32 but, I won’t
be discussing that here. The core function is performed by COMNumber::Int32ToDecChars.
So, I would wrap up the discussion of int.ToString() function by saying that it
converts individual digits of an integer to their equivalent characters, stores
them in a string and returns the string.



Next, I tried to figure out what goes on inside int.Parse(). I used .NET
reflector and found out that it is pretty similar to what int.ToString() does.
The string is read character-by-character, converted to its equivalent digit and
added to a number after the digits converted previously have been shifted by one
position.



Most C# textbooks provide an example as shown below for boxing/unboxing:



int i = 1729;

object o = i; // Boxing

int j = (int)o; // Unboxing



int.ToString() and int.Parse() cannot be used in the above manner and so, these
functions are not even remotely related to boxing/unboxing.



My final task was to find out what actually happens during boxing/unboxing. The
documentation that is available made my task easy. I referred the following:



1. C# Language Specification

2. Shared Source CLI Essentials - By David Stutz, Ted Neward and Geoff Schilling



See the excerpts from Shared Source CLI Essentials:



By default, when an instance of a value type is passed from one location to
another as a method parameter, it is copied in its entirety. At times, however,
developers will want or need to take the value type and use it in a manner
consistent with reference types. In these situations, the value type can be
“boxed”: a reference type instance will be created whose data is the value type,
and a reference to that instance is passed instead. Naturally, the reverse is
also possible, to take the boxed value type and dereference it back into a value
type - this is called “unboxing”.



The box instruction is a typesafe operation that converts a value type instance
to an instance of a reference type that inherits from System.Object. It does so
by making a copy of the instance and embedding it in a newly allocated object.
For every value type defined, the type system defines a corresponding reference
type called the boxed type. The representation of a boxed value is a location
where a value of the value type may be stored; in essence, a single-field
reference type whose field is that of the value type. Note that this boxed type
is never visible to anyone outside the CLI’s implementation-the boxed type is
silently generated by the CLI itself, and is not accessible for programmer use.
(It is purely an implementation detail that would have no real utility were it
exposed.)



This is made clearer by the C# language specification. Please refer to section
4.3 of the specification.



click here for more info mcitp training


click here for more info mcst training

The Day 1 of my MCTS Preparation

This is the Day 1 of my
MCTS preparation
article. Here I am assuming that the reader has some acquaintance with
programming and object oriented concepts.As I would be basically putting major
differences in C# with respect to traditional programming like in C++, I would
be glad to take up queries on any of these concepts.



Hope you will find it worthwhile. Good luck…



1. Overview of MS .Net Platform



The MS .Net platform provides all of the tools and technologies that you need to
build distributed web applications. It has:-



1. The .Net Framework

It provides necessary compile time and run time foundation to build and run .Net
based application. It has:-



1. Common Language Runtime. The CLR,

o simplifies application development,

o provides a robust and secure execution environment,

o support multiple languages and

o Simplifies application deployment and management.

o It is also referred as a managed environment ,

o in which common services such as garbage collection and

o Securities are automatically provided.



2. Class Library

It exposes features of the runtime and provides application (Component, Message
queuing, IIS etc.) and other services that can be extended further.



3. ADO .Net

Ahead of MS ActiveX DO, ADO.Net provides improved support for the disconnected
programming model.

It also provides rich XML support.



4. User Interfaces

Three types:-

o Web Form, works through ASP.Net

o Windows Form, works through Win32 client computer

o Console application



2. .Net My Services

It is a set of user centric XML web services. XML web services are programmable
web components that can be shared among applications on the internet or
intranet.



3. The .Net Enterprise Servers

It provides scalability, reliability, management and integration within and
across organizations



4. Visual Studio .Net



.Net Framework Advantages

1. Based on web standards and practices of existing internet technologies (HTML,
XML, SOAP etc.)

2. Designed using unified application models for any .Net compatible language or
programming model.

3. Easy to use, because of hierarchical namespaces and classes.

4. Extensible classes



2. C#



Class – is a user defined data type that contains a set of data and methods to
manipulate that data.

A class cannot span multiple files.



In C# application, there can be onle one entry point, but it is possible to have
multiple classes each with Main, but only one of them will be executed on your
specification.



Compilation command:-



csc myprogram.cs /

eg.

csc myprogram.cs /my_class_having_main_method__to_be_execute

csc myprogram.cs /?

csc myprogram.cs /help

csc myprogram.cs /debug



Execution process



I





II



C# source code





C# source code



MSIL





-



Machine code



(by JIT compiler @ runtime)





Machine code



(by Native Image Generator (Ngen.exe) utility)



Advantage :-



- loads faster because it restores code and data structures from native image
cache rather than generating dynamically



Advantage :-

- loads faster because it restores code and data structures from native image
cache rather than generating dynamically



3. Variables Types



Common Type System of CLR is the model that defines rules for declaring, using
and managing types. 2 types of variables in C#:-









Value Type





Reference Type



1

Directly contain data

Stores reference to data (i.e. objects)



2

Each has its own copy of data

2 refs can refer to same objects



3

Operation on one can not affect other

Operation on one can affect other



Value types

All value types directly contain data, and they cannot be null. 2 types of VT:-



1. Built in type

E.g. int, float

2. User defined

E.g. enum. struct



* Besides assigning a value to a variable as assignment expression itself has a
value, which is the value of the variable after the assignment has taken place.

Eg. Console.WriteLine(var = 2); prints 2



* You can use structs to create objects that behave like built in value types.
Because structs are stored inline and are not heap allocated, there is less
garbage collection pressure than classes.



Data Type Conversion



1. Implicit

• cannot fail

• may lose precision but not magnitude

2. Explicit

• Use a “cast“expression



*checked

{

Stmts expected to throw overflow exception

}



* C# does not support integer to Boolean conversion,

Eg.

If (x) //must be x!=0 in C#

If(x = 0) //must be x==0 in C#



Switch in C#



Enum MonthName{Jan, Feb, …,Dec}

MonthName current;

Int monthDays;





switch(current)

{

case MonthName.Feb:

monthDays = 28;

break;

case MonthName.April:

case MonthName.June:

case MonthName.September;

case MonthName.November:

monthDays = 30;

break;

default:

monthDays = 31;

break;

}



Q I want to ask:- One or more case labels cannot silently fall through or
continue to the next case labels, why???



4. Exception handling



try

{

Stmnts causing exception

}

catch(OverflowException caught) {…}

catch(DivideByZeroException caught) {…}

catch(OutOfMemoryException caught) {…}

catch(System.Exception) {…} or catch{…} /General catch block, has to be last of
all catch blocks



Raising exceptions using “throw”



if (cond…)

{

throw new InvalidTimException(“Error message text!!”);

}

The message can be displayed or logged



* You can “throw” only an object if the type of the object is directly or
indirectly derived from System.Exception.



If you wan to retain the info of the exception thrown while raising another
exception further then:-



catch(IOException caught)

{

throw new FileNotFoundException(filename,caught);

}



* A throw with no expression can be used, but only in a catch block.



catch(OutOfMemoryException caught)

{

throw caught; //equvivalent to rethrow of C++

}



catch(OutOfMemoryException caught) {throw; //same as above}



Finally block



1. Avoid duplication of statements

2. Release resources after the exception has been thrown



In finally block, don’t use:-

• break;

• continue;

• goto;

• return;

if it takes the control goes out of the finally block.



* C# program doesn’t check arithmetic for overflow, thus



int I = int.MaxValue;

Console.WriteLine(++i);



will display -2147483648 , the largest negative int value.



So you can globally turn on/off the arithmetic overflow checking by:-

C:\ csc /checked+ mycsharpfile.cs — on

C:\ csc /checked- mycsharpfile.cs — off



For statement specific



checked

{

Statement list

}



unchecked

{

Statement list

}



5. Methods and Parameters



Method – It is a named block of code that performs an action or computes a
value. Dividing the application into functional units also allows reuse
functional components.



Each method call needs memory to store return addresses and other information.



Mechanisms for passing parameters



3 ways to pass parameters to and from methods:-



1. By Value (to pass in)

2. Reference (to pass in/out)

3. Output (to pass out)



1. By Value (to pass in)

a. It is the default way

b. A new storage is assigned and value is copied

c. Variables can be changed inside method

d. Has no effect on the outside variable

e. Has to be of the same type or compatible type



2. Reference (to pass in/out)

a. Is the reference to the same memory location where the original variable is
stored

b. Use “ref” in method declaration and call

c. Match types and variable values

d. Changes in method affect the caller

e. Have to assign value before calling the method

3. Output (to pass out)



click here for more info mcitp training

click here for more info mcst training

Build up your future carrier through Logic!!!

Logic's Training division starts with the very strong aspiration of a simple logic to provide Competitive and World-class quality-maintained Education & Training in God's own Country. It is Logic that introduced the concept of Online Certification Courses first in United States; it laid our Firm-Foundation. Presently Logic operates with our four Direct Centres at Key locations in United States.

According to latest trends taking an International Certification is the blueprint to the successful IT profession, Logic played a big role in this revolution and we are pride to be famous as The Legend in Online Certifications. In this IT booming stage Logic comes in the first row among the best training institutes in United States, imparting advanced training in products from Microsoft, Cisco Systems, Sun Microsystems, Checkpoint, IBM, Lotus Corporation, Oracle Corporation etc. Our service infrastructure is the best in the industry backed up with faculties certified in MCP, MCSA, MCSE, MCAD, MCSD,MCTS,MCPD, CCNA, CCNP,CCVP,CCIE, OCP, SCSA etc., who believes in 100% practical, oriented training, in higher end LAN and WAN connectivity and our syllabus is designed according to the Industry Requirements.

In the past Successful years we have molded thousands of, Hardware Software and Network Engineering professionals who have achieved envious positions in their respective fields to the fullest extent.


click here for more info mcitp training


click here for more info mcst training


click here for more info ccie lab


click here for more info ccna exams


click here for more info mcse training


click here for more info mcse 2003 training


click here for more info mcdst training


click here for more info mcsa training


click here for more info ccnp training


click here for more info mcap training


click here for more info Microsoft Office Specialist

September 24, 2008

Visual Studio 2008 MCTS Exams Available Now

As of today, these two Visual Studio 2008 MCTS exams are available in English
for registration worldwide:



· Exam 70-561 TS: Microsoft .NET Framework 3.5, ADO.NET Application Development
(NEW!)

· Exam 70-562 TS: Microsoft .NET Framework 3.5, ASP.NET Application Development
(NEW!)



These exams, along with the three Microsoft Certified Technology Specialist (MCTS)
exams that released in April (Exam 70-502, 70-503, 70-504), make it possible for
you to verify your deep technical skills in key Visual Studio 2008 technologies.
Passing any of these five exams earns credit toward a corresponding MCTS
certification. You must also pass Exam 70-536 TS: Microsoft .NET Framework,
Application Development Foundation <http://go.microsoft.com/?linkid=9328048> in
order to complete the requirements for the certification.



SQL Server 2008 exams are scheduled to start coming out in September (subject to
change based on actual exam release date). Please look forward to another
notification and savings voucher at that time.



click here for more info
mcitp training  and click here for more info
mcst training

September 14, 2008

70-623: A Vista Exam for Consumer Support Techs

Exam 70-623 PRO: stands alone as a Microsoft certification. The exam targets IT professionals who work within the consumer market supporting end users. Familiar with The Geek Squad? Well, that's the target audience. Exam 70-623 gives this group a way to prove their knowledge supporting users with installation, configuration and troubleshooting retail versions of Windows Vista installed on consumers' machines.

Besides this exam, Microsoft has released four other Windows Vista exams:

* 70-620 TS: Configuring Windows Vista (reviewed here)
* 70-624 TS: Deploying and Maintaining Windows Vista and 2007 Office System Desktops
* 70-621 Pro: Upgrading your MCDST Certification to MCITP Enterprise Support
* 70-622 Pro: Supporting and Troubleshooting Applications on Windows Vista for Enterprise Support Technicians (reviewed here)

The 70-621 and 70-622 exams are aimed at testing candidates' knowledge of Vista installations at business and enterprise-class environments and qualify for the Microsoft Certified Technology Specialist and Microsoft Certified IT Professional certifications.

I took the 70-623 beta, which had 77 questions and was timed at 190 minutes. The final version of the exam is limited to 90-120 minutes, but has somewhere around 50 questions.

This exam was wide in scope and tested the candidate’s knowledge of all aspects of supporting users of Windows Vista in the consumer market in these key areas:

* Install, upgrade Windows Vista
* Post-Installation customization and configuration
* Configuring Vista security
* Configuring, troubleshoot, repairing networking
* Installing, configuring, troubleshooting devices
* Troubleshooting, repairing Vista

My first recommendation for study falls under the category of hands-on -- if you're new to Vista, you need some time at the controls, and it’s always time well spent!

Microsoft has several online and e-learning courses available for this exam (search here and here). If you'd rather take the self-study route, the official Microsoft Press publication is MCITP Self-Paced Training Kit (Exam 70-623): Supporting and Troubleshooting Applications on a Windows Vista Client for Consumer Support Technicians by Anil Desai. For my study, I went to www.testkingdom.com. It has links to information for consumers, developers and IT professionals like us. Click that link and you’ll find yourself at the Microsoft Technet site, where you’ll find all the printed study information you’ll need. I highly recommend you study the following documents available there: Windows Vista Product Guide, Deploying Vista Step by Step Guide, Windows Vista Security Guide, Understanding and Configuring User Account Control in Windows Vista, Step-By-Step Guide to Controlling Device Installation and Usage with Group Policy, and finally; Windows Vista Networking.

Now I could just give you all the questions and answers to the exam, but what fun would there be in that? After all it’s been five long years since Microsoft last released a new desktop operating system and I’m ready to learn all the new things, aren’t you? On with the review.

The set of skills you’ll need to demonstrate for this exam were noted earlier and through the remainder of this article, I will help you prepare to pass this exam by directing you to specific areas in Windows Vista. Be sure you read and study the exam objectives available from the Microsoft Web site for a general idea of what to expect on this exam.

Install and Upgrade Windows Vista
Minimum hardware requirements for Vista are a 800MHz CPU with 512 MB of RAM and a 20GB hard drive, and a DVD drive. You'll do better if you have at least a 1GHz or greater CPU, 1GB of RAM, and a 40GB hard drive (15GB of free disk space is required for upgrades). The Windows Aero feature requires a DirectX 9 video card that supports a Windows Display Driver Model driver, Pixel Shader 2.0, and is 32-bit pixel capable. The greater processor, memory, and video card allow you to experience all that Vista has to offer.

You can upgrade Windows XP Home or Professional with service pack 2 to one of the five versions of Windows Vista, or a Windows 2000 Professional PC via the clean install method using the Files and Settings Transfer wizard. If you're running any other version of Windows, you must perform a clean install. Windows Vista also supports upgrading from one version to another, such as the Home versions to Ultimate.

Installation issues can come up if the hardware is not at the minimum levels as stated previously, and it’s highly recommended you download and run the Windows Vista Upgrade Advisor to determine if your computer is hardware and software compatible.

Exam Tip: You cannot perform an upgrade to Windows Vista retaining personal files, settings and programs from Windows 2000.
70-623 Installing, Maintaining, Supporting, and Troubleshooting Applications on Windows Vista (Beta)

Reviewer's Rating
This exam is geared towards consumer support technicians in the field supporting consumer versions of Windows Vista for home or small business end users. It focuses on the most fundamental knowledge required for supporting Windows Vista.

This exam can be used for achieving the MCITP: Consumer Support Technician. There is no information as to whether or not this exam will qualify as a core or an elective for the MCSA or MCSE 2003.

Exam Title
70-623 PRO: Microsoft Desktop Support -- Consumer

Duration
190 minutes (beta; this differs from the live version)

Number of questions
77 (beta; this differs from the live version)

Who Should Take It
Anyone wishing to prove their knowledge of supporting users of Windows Vista in the home and small business environment.

Exam Objectives
http://www.microsoft.com/learning/
exams/70-623.mspx

Another option -- rather than upgrade or a clean install -- is to configure your computer with the old version of Windows along with Windows Vista. Often referred to as a multi-boot or dual-boot configuration, this approach allows you to resort to your old version if you change your mind, if things go wrong or you simply need time to migrate your files and settings. Microsoft provides a step-by-step article here showing the way.

Post-Installation: Customize and Configure Settings
Windows Sidebar provides a method of organizing the information you want to access quickly on the desktop. Sidebar is located on the desktop and contains gadgets, which are customizable mini-programs that display continuously updated information, with some that allow you to perform common tasks without opening a window. You can find more gadgets on the Microsoft Gadgets site here. To uninstall a gadget, click the plus sign at the top of the sidebar, right-click the gadget and click uninstall.

To support and configure the newest display option in Windows Vista, Aero, your system must meet the video card requirements as stated earlier. Be certain and make sure that the color is set to 32 bit and the monitor refresh rate is set higher than 10 hertz. The theme should then be set to Windows Vista, color scheme set to Windows Aero, and window frame transparency set on.

With many versions of Windows including Vista, each account type gives a user a different level of control over the computer. The standard user account is the account to use for all users. The administrator account provides the most control over the computer, and should only be used when necessary. The guest account is primarily for people who need temporary access to the computer. Windows Vista includes a new technology and security level called User Account Control -- more on this later.

When you use a standard user account, you can use most programs that are installed on the computer, but you can't install or uninstall software or hardware, delete files that are required for the computer to work, or change settings on the computer that affect other users. If you're using a standard user account, some programs might require you to provide an administrator password before you can perform certain tasks.

The Windows Vista Upgrade Advisor from Microsoft can help determine if all your installed hardware and software is compatible with Windows Vista prior to upgrading. Another method to verify whether or not your program software is compatible with Windows Vista is to download the Microsoft Application Compatibility Toolkit. It's an advanced tool, but it can provide very valuable information regarding thousands of software programs and versions and their compatibility with Windows Vista. ACT includes real-time reporting for many applications from the user community of Windows Vista and possible workarounds or show-stoppers with program software.

There are many ways to improve your computer’s performance and some of them are new to Windows Vista. The Performance Information and Tools lists found in Control Panel, has tasks that can help improve the performance of your computer, and it also shows information about your computer's performance capabilities. One way to speed up your system is to manage the startup programs that start themselves automatically when you start Windows. Too many of these programs opening at the same time can slow down your computer. This can be done with the new application from Microsoft, Windows Defender. Turning off unnecessary visual effects like Aero, disk defragmenting and adjusting disk and file indexing options (found in Control Panel) can help improve performance.

Configure Windows Vista Security
The Windows Security Center found in Control Panel is the main entry point for configuring, maintaining and troubleshooting security settings for consumer desktop users. Windows Security Center can help enhance your computer's security by checking the status of several security essentials on your computer, including firewall settings, Windows automatic updating, anti-malware software settings, Internet security settings and User Account Control settings.

If Windows detects a problem with any of these security essentials -- for example, if your antivirus software is out of date -- Security Center displays a notification and places a Security Center shield icon in the notification area. Click the notification or double-click the Security Center icon to open Security Center and get information about how to fix the problem.

Exam Tip: Windows Vista can’t detect all types and versions of antivirus software and it may be necessary to configure Vista not to monitor for installed antivirus software if you've already installed and configured correctly.

A firewall can help prevent hackers or malicious software such as worms from gaining access to your computer through a network or the Internet. A firewall can also help stop your computer from sending malicious software to other computers. Windows checks if your computer is protected by a software firewall. If the firewall is off, Security Center will display a notification and put a Security Center shield icon in the notification area.

Windows can routinely check for updates for your computer and install them automatically. You can use Security Center to make sure Automatic updating is turned on. If updating is turned off, Security Center will display a notification and put a Security Center shield icon in the notification area.

It's important to run anti-spyware software whenever you're using your computer. Spyware and other potentially unwanted software can try to install itself on your computer any time you connect to the Internet. Potentially unwanted or malicious software can also be programmed to run at unexpected times, not just when it is downloaded or installed. Windows Defender protects against most spyware with its default configuration and automatic updates.

Windows Vista Parental Controls is a new feature that adds control over standard user accounts, such as children who might be using a consumer computer. It provides for control and monitoring of software programs, such as games with ratings, Internet Web sites, and can even control and monitor hours of computer usage. Age ratings for games group content into levels appropriate for different ages, from young children through mature teens and an adults-only category.

Internet Explorer 7 includes new security and privacy features that allow you to safely browse the Web:

* Phishing Filter can help protect you from phishing attacks, online fraud and spoofed Web sites.
* Protected mode can help protect your computer from Web sites that try to install malicious software or to save files on your computer without your consent.
* Higher security levels can help protect you from hackers and Web attacks.
* The Security Status bar displays the identity of secure Web sites to help you make informed decisions when using online banking or merchants.
* Internet Explorer's add-on disabled mode lets you start Internet Explorer without toolbars, ActiveX controls or other add-ons that might slow down your computer or prevent you from getting online.

Windows Vista includes User Account Control for added security and control; it wasn't originally included with previous versions of Windows. UAC gives standard users the ability to run most programs but not change most system settings. When elevated permissions are required, users are automatically prompted to provide administrator credentials: username and password. UAC can also prevent malicious software or malware and spyware from installing or making changes to your computer without permission.

Exam Tip: Know which level of permission is required for standard users or administrators to manage other user accounts and for a user to change their own password.

Windows Vista includes many data security options available in previous versions of Windows and a few new ones. Encrypting File System is used to encrypt files on a computer’s hard disk. Vista also includes a new file encryption for data on the hard disk called BitLocker. It can be used to secure the entire hard disk contents, commonly used with portable computers.

Configure, Troubleshoot, and Repair Networking
It's a good idea to find out what kind of network adapters your computer has -- wired or wireless. You might decide to go with a certain technology because you already have most of the hardware, or you might decide to upgrade your hardware. Most people find that a combination works best for their environment. If both types are present and configured in Windows Vista, one or more can be disabled using their respective icon in the Network and Sharing Center found in Control Panel, or by using the Windows Device Manager. The symbol next to a device in Device Manager with the arrow pointing down signifies the device has been disabled.

Exam Tip: A computer with the IP address of 169.254.x.x may need to be assigned an address by the user for the network, or it won't receive an address from the network’s router.

When configuring Windows Vista and other Windows versions to communicate for file and printer sharing on a network, each computer must have the Client for Microsoft Networks and File and Printer Sharing for Microsoft Networks enabled. This can be found in the properties of the network card, or simply from the Network and Sharing Center under the heading Sharing and Discovery.

Wireless networks use radio waves to send information between computers. There are three types; 802.11g offers a greater signal range than 802.11b and 802.11a networks. Wireless can be affected by interference from things such as walls, large metal objects and pipes. Also, many cordless phones and microwave ovens can interfere with wireless networks when they're in use.

Exam Tip: Manual configuration of a wireless network connection may be required if the wireless access point is not broadcasting a SSID.

You can share files and folders in several different ways. The most common way in Windows is to share them directly from your computer. Windows Vista provides two methods for sharing files in this way: share files from any folder on your computer or from a Public folder. Which method you use depends on where you want to store the shared folders, who you want to share them with and how much control you want to have over the files. Either method allows you to share files or folders with someone using your computer or another computer on the same network.

If your computer is in a workgroup, you have the option of toggling password protection. If password protection is turned on, the person you are sharing with must have a user account and password on your computer in order to access the shared files and folders. You can turn password protection on or off in the Network and Sharing Center. If you turn on file sharing for the Public folder, anyone with a user account and password on your computer, as well as everyone on your network, will be able to see all the files in your Public folder and subfolders. You cannot restrict people to just seeing some files in the Public folder. However, you can set permissions that either restricts people from accessing the Public folder or that restricts them from changing files or creating new ones.

Only available with Windows Vista Home Premium or Ultimate: With Windows Media Center you can play audio and data CDs, as well as video and data DVDs. To play DVDs, you must have a DVD drive and a compatible DVD decoder installed on your computer. A compatible DVD decoder is already installed on computers that include Windows Media Center. You can watch pictures in a slide show and play videos using Windows Media Center. Windows Media Center also allows you to specify a search criteria to find digital media files such as movies, videos, music, pictures, or recorded TV shows. These files are stored in libraries on your Windows Media Center PC.

You can connect a Media Center Extender device using a wired or wireless connection to connect the Extender device to your home network. When connecting to a wireless network, the Extender tries to connect silently without any action on your part. However, if the wireless network has security protocols enabled, such as a Wired Equivalent Privacy key or a Wi-Fi Protected Access password, you must provide this security information manually to the Extender. Once the network has been established, during the final configuration of Windows Media Center and Media Center Extender, you must enter the 8-digit set-up key that is displayed on the TV that's connected to the MCE.

Install, Configure, and Troubleshoot Devices
When connecting a device to a USB port on a USB hub, monitor or other device that's plugged into your computer, ensure that the USB port has enough power to support your device. Smaller devices, such as USB flash drives and mice, and devices with their own power cords, such as printers, typically work properly when connected to an unpowered USB hub. Some devices that use more power, such as USB-powered scanners and Web cameras, require a hub that has its own power cord to function properly. If a device doesn't work properly when connected to a hub, try connecting it directly to one of the computer's USB ports.

The new Microsoft Windows Mobile Device Center available in Windows Vista enables you to set up new partnerships, synchronize content and manage music, pictures and video with Windows Mobile-powered devices such as Windows Mobile 6 cell phones.

Exam Tip: Windows Mobile Device Center supports Windows Mobile 2003 and newer devices.

If the Import Pictures and Videos does not work for your camera, or if your camera uses an unusual cable, then Windows can’t get pictures from your camera automatically. You need to install software provided by the camera manufacturer. Check the manufacturer Web site for the latest driver software.

To import high-quality video using Import Video, you can connect your digital video camera to your computer in one of two ways. The first method is to use an IEEE 1394 connection: connect one end of the IEEE 1394 cable to the DV port on the camera and the other end into the IEEE 1394 port on your computer. This connection method is more popular (and often faster) than the second connection type, which uses USB 2.0.

If your computer has a built-in fax modem, Windows will automatically detect it during the set-up process. If you're not sure whether your computer has a built-in fax modem, check the hardware information that came with your computer. To set up your computer to send faxes only, click "I'll choose later; I want to create a fax now" in the Fax Setup Wizard. Keep in mind that by choosing this option, you will be able to send faxes, but you won't be able to receive them. If you want to change settings for sending and receiving faxes with a fax modem so that you can receive faxes, you need to provide an administrator password or permission. Users with administrator privileges can change the setting at any time. Before you try receiving a fax, however, make sure that your computer is connected to a fax modem.

If you can't change printer properties, you might not have permission to manage the printer. Permissions are required because changing the printer properties can affect everyone who uses the printer. When a printer is installed, members of the administrators group on the computer have permission to manage the printer by default. If you have an administrator account, you can probably change the printer properties.

Permissions can be assigned to each person who uses the printer or to a group of users who have the same type of user account. Windows offers these types of printer permissions:

* Print. By default, each user can print and cancel, pause, or restart documents or files that they send to a printer.
* Manage documents. If you have this permission, you can manage all jobs for a printer that are waiting in the print queue, including documents or files that are being printed by other users.
* Manage printers. This permission allows you to rename, delete, share, and choose preferences for the printer. It also allows you to choose printer permissions for other users and to manage all jobs for the printer. Members of the administrator group for a computer have permission to manage printers by default.

Must-Know Tips Before Taking an Exam

If this is your very first IT exam or at least your first Microsoft exam, there are some things you should know:

* The price for Microsoft exams in the US is $125.
* You are allowed to take any exam as many times as needed to pass.
* You must pay the $125 for each and every attempt at the exam. (For first-time exam takers, Microsoft usually provides incentive offers; you'll find these on the Microsoft MCP Web site.)
* You will receive an onscreen pass or fail indicator at the completion of the exam.
* You will also receive a printed score report upon exiting the exam booth.
* You will receive a certificate, wallet card, congratulations letter and Microsoft Certification number after you have requested the certification package from Microsoft's Web site. (Don't forget to give a valid e-mail address when registering for your exam.)
* You can take any IT exam at any Thomson Prometric testing center.

One more tip while you're taking the exam: You will be able to move forward and backward through the exam question set. Very often, a later question can help you answer an earlier one for which you may not have been absolutely certain of your answer. You should, however, always choose an answer for each and every question before moving forward since you may run out of time, and any unanswered questions are scored as incorrect.

You can mark questions you are unsure of and return using the back button or by using the review screen at the end prior to scoring.

Troubleshoot and Repair Windows Vista
System Restore uses restore points to return your system files and settings to an earlier point in time, without affecting personal files. System Restore affects Windows system files, programs and registry settings. It also can make changes to scripts, batch files and other types of executable files on your computer. It does not affect personal files, such as e-mail, documents or photos, so it cannot help you restore a deleted file. If you have backups of your files, you can restore the files from a backup.

Startup Repair is a Windows recovery tool that can fix certain problems, such as missing or damaged system files which might prevent Windows from starting correctly. When you run Startup Repair, it scans your computer for the problem and then tries to fix it so your computer can start correctly. Startup Repair is located on the System Recovery Options menu, which is on the Windows installation disc. Startup Repair might prompt you to make choices as it tries to fix the problem, and if necessary, it might restart your computer as it makes repairs.

Using Software Explorer in Windows Defender, you can view detailed information about software that is currently running on your computer that can affect your privacy or the security of your computer. You can see which programs run automatically when you start Windows and information about how these programs interact with important Windows programs and services.

Software Explorer helps you monitor the following items:

* Startup programs, which are programs that run automatically with or without your knowledge when you start Windows.
* Currently running programs, which are programs that are currently running on the screen or in the background.
* Network-connected programs, which are programs or processes that can connect to the Internet or to your home or office network.

That wraps it up for this exam review. Remember that nothing beats hands-on experience when preparing for an exam. Divide your time preparing for this exam by practicing, reviewing and reading everything you can find. And don't forget to check out those links to the guides on the www.testkingdom.com site. Good luck!

September 12, 2008

Microsoft and Novell Roll Out Virtualized Linux Solution



Microsoft and Novell, as part of their general interoperability partnership,
have verified running Novell's SuSE Linux Enterprise Server as a guest operating
system on Windows Server 2008 Hyper-V. The companies announced yesterday that
their channel partners will support the combined technologies.



Participating channel partners include "Computer Integrated Services Company of
New York LLC (CIS), Continental Resources Inc., Dell, Insight, Total Tec Systems
Inc., and 21Vianet," according to a Microsoft-Novell jointly released
announcement.



Dell plans to test and validate the virtualization offering at an
Interoperability Lab in Cambridge, Mass. that is jointly operated by Microsoft
and Novell. The lab runs Novell's open source Linux and
Microsoft Windows
solutions
, mimicking heterogeneous environments found in the enterprise. The
lab specifically tests in four specific areas: document format compatibility,
identity federation, systems management and virtualization.



Microsoft and Novell recently added to the lab's tasks. Accessibility will be
tested. The companies are also testing Moonlight, an open source UNIX version of
Microsoft's Silverlight Web application product. The last new item to be tested
is "a new SuSE Linux Enterprise Server management pack for Microsoft System
Center product," according to the announcement.



Virtualization technology -- in this case enabled by Microsoft's Hyper-V
solution -- is generally supposed to be platform agnostic, enabling operating
systems and applications to run on different platforms. Microsoft and Novell's
collaboration ratchets up the assurance, especially for companies adding open
source Linux.



The virtualization offering represents "the first complete, fully supported and
optimized virtualization solution to span Windows and Linux environments,"
according to the Microsoft-Novell announcement.



The two companies first announced their collaboration in November of 2006. Under
the deal, Microsoft issues certificates assuring Novell's integration support.
Microsoft expects to pour an additional $100 million into the program by
November.



Microsoft's collaboration with Novell is also associated with intellectual
property assurances. Those assurances are highly controversial in the open
source Linux world. Microsoft essentially promises not to sue companies for
patent violations when they buy Novell's Linux through
Microsoft's
certificate program
.

September 5, 2008

Automatic Logons, Directors, and Client Redirections

The Resource Kit states that external users cannot be re-directed to their correct pool without the use of a Director. This is partially untrue. Directors are always optional in any circumstance even if you have multiple pools with external access. After talking with Tom Laciano over at LCSKid as well as a PSS escalation engineer, I think I have a pretty good understanding of the Director Role and how Pools redirect and proxy users and figured I would share with you as I have seen several posts where people have been confused about when it’s needed.

Any pool will provide redirect functionality out of the box for both internal and external users. Now to understand how you should allow internal users to connect to pools, you must first understand how to allow Communicator 2007 clients to logon automatically (manual mode is possible but I will talk about Automatic). You can read about how to configure Automatic Logon here. It essentially consists of creating one of two records:

* _sipinternaltls._tcp. - for internal TLS connections
* _sipinternal._tcp. - for internal TCP connections (performed only if TCP is allowed)

Both of these SRV records would point to an A record which matches a Common Name (CN) or a Subject Alternative Name (SAN) on the certificate of your Front End Server.

You may want to load balance these DNS requests across multiple pools, but unfortunately, this won’t work. But why not? Can’t we create 2 SRV records with the same weight so they get load balanced across multiple pools? Well, no. The communicator client was not coded to take 2 SRV records with the same weight and allow for the use of Round Robin. Because of this, you are only allowed to have one SRV point to a dedicated pool. If this pool ever goes down, you can change where the SRV record is pointed. The client will begin to utilize the new DNS changes and therefore use the new Pool once the Minimum TTL has passed for that DNS record and the client will re-query DNS and find the new Pool to log on to.

You may recall a screen below when configuring your pool:

If you take a look at the deployment guide, it states the following:

If this server or pool will also be used to authenticate and redirect requests for automatic sign-in, then select the Use this server or pool to authenticate and redirect automatic client logon requests check box. When you configure automatic client logon, you must designate one (and only one) Enterprise pool or Standard Edition Server to authenticate and redirect client sign-in requests.

As you can see, only one Pool should be designated to authenticate and redirect client-sign in requests. This is a bit misleading. It doesn’t really mean that if you are deploying multiple pools you must only place a checkmark in that box for a single pool. All it really means is that you should only have one SRV record pointed to a Pool at any given time. In other words, in your entire environment, you should have only one SRV record for automatic logon total.

The reality of that checkmark is that it doesn’t make any modifications to OCS and regardless if you place a checkmark in the option discussed above, your Pools will be able to redirect users. All it does is enable some additional screens during Setup to allow you to make additional and optional configuration modifications to your Pool; none of which are detrimental to your OCS install. This is what I verified with the PSS escalation engineer I dealt with recently for a different issue.

Personally, for every Pool you configure, I would go ahead and place a checkmark in that box. You will then be able to see all the options during Setup that you otherwise would not see.

Now because of all the above functionality with all Pools having the native functionality to redirect users, why would you want to use a Director? A Director is simply a Pool that has no users. It’s not even required to disable the other roles on the server but is rather an optional configuration step.

One benefit of having a Director is by having your SRV record point to this one Director or Pool of Directors. If you have a large environment, by not having a Director, you are having one of your Pools be hammered with client requests which can significantly reduce the performance of your Pool which are housing users. So by having your SRV record point to a Director, you are reducing the performance hit on your other Pool by allowing your Director to absorb client logon requests which will then be redirected to your pool.

Another item to be aware of, is that for external users, when traffic comes from an Access Edge Server, the header information includes information about the connecting client. Because of this, when external traffic gets sent from an Access Edge to the next-hop Pool or Director, that Pool or Director will authenticate the user and proxy SIP traffic to the correct Pool rather than re-directing the client. This is why I stated that the Resource Kit states that external users do not get re-directed (which is true), but you do not need a Director. Having a Director in a large environment will allow this proxying to be done on a Director which will reduce the peformance hit on your next-hop Server or Pool by allowing your Director to absorb the performance hit from proxying this SIP traffic.

Another benefit to having a Director is if the server gets DOS attacked, only the Director gets taken offline and not one of the Pools which are housing users.

I would recommend housing your Director on a server that is located close to where the majority of your users are located. So if the 75% of your users are located in North America and 25% are located in Europe, and you have one pool for North America and one Pool for Europe, I would create a Director in North America. The Director Role can be deployed on a Standard Edition Server or an Enterprise Edition Server; although Enterprise Edition will most likely be overkill.

find
out  more on MCSE
Training
, MCSE
Certification
, MCSE
2003 Training
, MCSE 2003
Certification


MCITP Training
MCITP Certification

September 2, 2008

Downlaod Free MCITP Training

This exam is designed to validate Windows Server 2003
Microsoft Certified Systems Administrators (MCSEs) AD, Network
Infrastructure, and Application Platform Technical Specialists skills.
The object of this exam is to validate only the skills that are are
different from the existing MCSE skills. This exam will fulfill the
Windows Server 2008 Technology Specialist requirements of Exams 70-640,
70-642, and 70-643.


The Microsoft Certified
Technology Specialist (MCTS) on Windows Server 2008 credential is
intended for information technology (IT) professionals who work in the
complex computing environment of medium to large companies. The MCTS
candidate should have at least one year of experience implementing and
administering a network operating system in an environment that has the
following characteristics: 250 to 5,000 or more users; three or more
physical locations; and three or more domain controllers.



MCTS candidates will manage network services and resources such as
messaging, a database, file and print, a proxy server, a firewall, the
Internet, an intranet, remote access, and client computer management.


In
addition MCTS candidates must understant connectivity requirements such
as connecting branch offices and individual users in remote locations
to the corporate network and connecting corporate networks to the
Internet.


* THE independent source of exam day tips, techniques, and warnings not available from Microsoft

* Comprehensive study guide guarantees 100% coverage of all Microsoft’s exam objectives

* Interactive FastTrack e-learning modules help simplify difficult exam topics

* Two full-function ExamDay practice exams guarantee double coverage of all exam objectives

* Free download of audio FastTracks for use with iPods or other MP3 players

* 1000 page “DRILL DOWN” reference for comprehensive topic review







Book Cover:





 


Download Free link

MCIT Exams Training




 


find
out  more on MCSE
Training
, MCSE
Certification
, MCSE
2003 Training
, MCSE 2003
Certification - MCITP Training
MCITP Certification
Bookmark and Share