Windows 8

1. Windows 8 2. Module 1 - Installing and Deploying Windows 8. 3. Windows 8 editions. 4. Advantage of 64 bit Processor. 5. Minimum hardware requirement for Windows 8 6. Option for installing Windows 8 7. Installation of Windows 8 8. Upgrading and Migrating to Windows 8 9. What is Upgrading 10. What is Migration 11. Migrating User Data and Settings 12. Migrating using USMT ( User State Migration Tool ) 13. MBR - Master Boot Record 14. GUID - GPT Disk. 15. Disk Management tools. 16. Simple Volume 17. Spanned and Striped Volumes 18. Maintaining Disks, Partitions, and Volumes 19. Disk Quota 20. Device Driver in Windows 8 21. System Restore 22. LAST KNOWN GOOD CONFIGURATION 23. Configure and Trouble shoot Network Connections 24. What is an IPv4 Address 25. Default Gateway 26. Public and Private IPv4 Address 27. IPv6 Network Connectivity 28. IPv4 Address can be assigned by following types 29. Implementing Name Resolution 30. Trouble Shooting Network Connectivity 31. Implementing Wireless Security 32. Wireless network Technologies 33. What is Wireless Broadband? 34. IEEE 802.11 35. Wireless Network Configuration 36. Security Types 37. Implementing Network Security. 38. Configuring Windows Firewall 39. Ports and Application 40. Important Application, Protocol and Port Number 41. Configure Inbound and Outbound Rules 42. Securing Network traffic 43. Configuring Windows Defender 44. Managing File Access 45. NTFS Standard permission for FOLDER 46. Preventing Permission Inheritance 47. Different ways to Share Folder 48. RULE for setting NTFS + SHARE PERMISSION 49. Managing Printers 50. SkyDrive 51. Securing Windows 8 Desktop 52. User Account Types and Rights 53. Windows Authentication Methods 54. Important Security Features in Windows 8 55. Managing EFS Certificates 56. BitLocker 57. Configuring BitLocker To Go 58. UAC - User Account Control 59. Configuring Application. 60. Application Compatibility Issue 61. Resolve Common Application Compatibility Issues 62. Office 365 63. Windows Store 64. LOB (Line Of Business) and Sideloading 65. Configuring Internet Explorer Settings 66. AppLocker 67. Optimizing and Maintaining Windows 8 Client Computers 68. Performance Monitor 69. Commonly used Performance Counters 70. Resource Monitor 71. Managing Reliability of Windows 8 72. Managing Windows 8 Updates 73. Configuring Mobile Computing and Remote Access 74. Tools for Configuring Mobile Computers and Device Setting 75. Configure VPN Access 76. Data encryption 77. VPN Tunneling Protocols 78. Configure Remote Desktop and Remote Assistance 79. Remote Assistance 80. DirectAccess 81. Hyper-V 82. VHD 83. Managing Snapshot 84. Troubleshooting and Recovery Options for Windows 8 85. Enable and configure Windows 7 File Recovery 86. Advance Troubleshoot now option 87. Windows 8 System Restore 88. Using Windows PowerShell
Pr.Pg Next Pg

Using Windows PowerShell tutorials

  • In this module we will learn about

    • Introduction to Windows PowerShell 3.0.

    • Windows PowerShell Remoting.

    • Using Windows PowerShell Cmdlets.

    • Overview of Windows PowerShell ISE.

    • Creating and running Windows PowerShell Scripts.

Introduction to Windows PowerShell 3.0.

  • Windows PowerShell is Microsoft’s task automation framework, consisting of command line shell and associated scripting language built on top of NET framework.

  • In PowerShell task are generally performed by Cmdlets (pronounced command-lets).

  • Windows 8 includes an improved version of Windows scripting environment in Windows PowerShell 3.0.

  • Normally traditional programming languages are designed for programmer and software developer, while Windows PowerShell is designed for System Administrator and IT Hardware Professional.


Features of Windows PowerShell

  • It is a task based scripting language, it support existing scripts and command line tools.

  • PowerShell share data between Cmdlets, which enable output from one Cmdlets to be used as the input for another Cmdlets.

  • PowerShell can manipulates objects and enable Windows PowerShell to accept and return .NET objects, which can be directly manipulated or sent to other tools or databases.

  • PowerShell can allow independent software vendors and enterprise developer to build custom tools.

  • Remote management, PowerShell Commands can be run on one or multiple computers by establishing an interactive session from a single computer. Additionally, you can establish a session that receives remote commands from multiple computers.

  • Background jobs: you can run commands in the background while continuing to work in your session and store the results locally or remotely.

  • Debugger: The Windows PowerShell debugger helps you debug functions and scripts. You can set and remove breakpoints, step through code, check the values of variables, and display a call-stack trace.

  • Modules: Use Windows PowerShell modules to organize your Windows PowerShell scripts and functions into independent, self-contained units and package them for distribution to other users. Modules can include audio files, images, Help files, and icons. To avoid name conflicts, modules run in a separate session.

  • Transactions: Transactions enable you to manage a set of commands as a logical unit. A transaction can be committed, or it can be completely undone so that the affected data is not changed by the transaction.

  • Events: The new event infrastructure helps you create events, and subscribe to system and application events. You can then listen, forward, and act on events synchronously and asynchronously.

  • Windows PowerShell can be used to manage Windows technologies like Client Hyper-V, Windows Backup, ADDS (Active Directory Domain Services), Windows BitLocker Drive Encryption, DHCP (Dynamic Host Configuration Protocol), Group Policy and Remote Desktop Services.



Cmdlets in Windows PowerShell

  • Windows PowerShell has rules for naming and implementing functions.

  • Windows PowerShell Cmdlets, use a naming convention of verb or action, followed by a hyphen and a noun. For example, to retrieve a list of virtual machines, you would use the Get-VM Cmdlets. to change settings of a virtual machine, you would use the Set-VM Cmdlets.

The common Cmdlets verbs are:

  • Get: Retrieves data

  • Set: Establishes or modifies data

  • Format: Modifies the way data is displayed

  • Out: Directs output to a specified destination


Types of Parameters

  • You can use one or more parameters with a Cmdlets, to modify its behavior or specify settings.

  • Parameters are written after the Cmdlets.  Each parameter used is separated by a space, and begins with a hyphen.

  • Not all Cmdlets use the same parameters. 

  • There are several types of parameters, including the following:

  • Named. Named parameters are most common. They are parameters that can be specified and require a value or modifier. For example, by using the Move-Item Cmdlets, you would specify the -Destination parameter along with the exact destination to move the item.

  • Switch. Switch parameters modify the behavior of the Cmdlets, but do not require any additional modifiers or values. For example, you can specify the -Verbose parameter without specifying a value of $True.

  • Positional. Positional parameters are parameters that can be omitted, and can still accept values based on where the information is specified in the command. For example, you could run Get-EventLog -EventLog System to retrieve information from the System event log.


Windows PowerShell ISE

  • Stands for Windows PowerShell Integrated Scripting Environment.

  • PowerShell ISE is a graphical tool used to simplify working with PowerShell script.

  • ISE has been designed for bot Advance users and novice.

  • It gives command line help as we type commands in script editor, just like visual studio environment.

  • ISE can work with simultaneously 32 independent sessions (PowerShell tabs). This can help administrator to manage multiple servers.

  • ISE also gives Intellisence PowerShell suggestions, syntax coloring that minimize errors when you are typing, multiline editing of scripts and functions, a graphical view that lets the PowerShell user view pipeline data output in tabular format with sortable and resizable columns and much more.

  • Demo 67 - Windows PowerShell ISE

  • To start Windows PowerShell ISE, on Start Screen type PowerShell ISE, and select PowerShell ISE tile or.

  • Press Windows Key + R for Run command and type PowerShell_ise.exe and press Enter key.

  • As you could see on Toolbar menu it gives, New, Open, Save, Cut, Copy, Paste regular icons.

  • In PowerShell window type

  • $host

  • This will show you result as follows

  • Name : Windows PowerShell ISE Host

  • Version : 3.0

  • And so on.

  • Click on Clear Console Pane icon to clear console.

  • Few more examples.

  • Type

  • Get-Process

  • This command will show you process name that are running with details and load on CPU processor.

  • Type following PowerShell command to see number of commands available in PowerShell.

  • $pscmd=Get-command *

  • %pscmd.count

  • Type

  • Get-Service

  • This command will display list of all services with its Status that is Stopped or running along with name and display name.

  • Type following command to get all running services

  • Get-Service | Where-object {$_.Status -eq “running”}

  • Similarly Type following command to get all stopped services

  • Get-Service | Where-object {$_.Status -eq “stopped”}

  • You can also click on Show command Windows on toolbar.

  • In Name type Get-e and from bottom window help select Get-EventLog

  • In Logname type Application and click Run.

  • It will show you all EventLog for Application.

  • Again click on Show command Windows on toolbar.

  • In Name type Get-e and from bottom window help select Get-EventLog

  • In Logname type Application.

  • Now in Entry type click Down Arrow button and choose Information and Run

  • Now it will give all eventlog for information.

  • You can also and work with Instance ID 103 or Newest 10 and so on.

  • You can copy command and then paste it and learn many things.

  • PowerShell ISE can do many things.

  • Advanced PowerShell scripts may require repeating commands a certain number of times, until a specific condition is met, or only if a specific condition is met. These test conditions are defined using comparison statements.

  • Boolean Comparisons

  • Test or comparison statements are used as test conditions for loops and conditional constructs. These typically compare either two or more objects, or two or more property values. These statements are designed to result in a True or False value. Windows PowerShell performs comparisons using comparison operators. Some of the more common are operators include:

• -eq : Equal to

• -ne : Not equal to

• -le : Less than or equal to

• -ge : Greater than or equal to

• -gt : Greater than

• -lt : Less than

  • There are several PowerShell constructs that use Boolean comparisons to control the execution of code within a script. These constructs are if, switch, for, while, and for each.

  • The if Statement

  • You can use the if statement to execute a block of code, if the specified criteria are met. The basic functionality of an, if statement is shown here:


if (Boolean comparison)


Code to complete if test expression is true



  • Another option available to accommodate additional possibilities is using else and elseif statements. In a case where you wish to execute special code if a condition exists or execute other code if it does not exist, you can use the else statement. If there are additional conditions you wish to test, you could use the elseif statement. See the example below:


$Today = Get-Date

if ($Today.DayOfWeek -eq “Monday”)


Write-Host “Today is Monday”


elseif ($Today.DayOfWeek -eq “Thursday”)


Write-Host “Today is Thursday”




Write-Host “Today is not Monday or Thursday”



  • The switch Statement

  • The switch statement is closely related to how ifelse statements work. The statement enables a single condition statement to have multiple options for execution. The switch statement has the following syntax:


switch (Value Testing)


Value 1 { Code run if value 1 condition exists}

Value 2 { Code run if value 2 condition exists}

Value 3 { Code run if value 3 condition exists}

default { Code run if no other condition exists}



  • Using the previous example, you can achieve the same functionality with less work, as shown in the following example:


switch ($Today.DayOfWeek)


“Monday” { Write-Host “Today is Monday” }

“Thursday” { Write-Host “Today is Thursday” }

default { Write-Host “Today is not Monday or Thursday” }



  • In cases where a larger number of ifelse statements are needed, the switch statement may be an easier option to use and debug.

  • The for Loop

  • You can use the for loop to execute a block of code a specific number of times. This can be when multiple items need to be requested, or created. The for statement syntax is:


for (setup loop variables ; Boolean comparison ; action after each loop)


Code to complete while Boolean comparison is true



  • The for loop begins with settings to configure variables, the Boolean comparison, and an action to complete after each loop. 

  • The while Loop

  • The while loop can be used to execute a block of code while a specific condition exists. It is very similar to the for loop, except that it does not have built-in mechanisms to setup variables and actions to run after each loop. This enables the while statement to continue executing until a condition is met, rather than execute a set number of times. The while statement syntax is:


while (Boolean comparison)


Code to complete while Boolean expression is true



  • Also available is the do/while loop, which works like the while loop. However, the Boolean expression is evaluated at the end of the loop, instead of the beginning. This means that the code block in a do/while loop will always be executed at least once. The value of $i does not need to be set prior to the do/while loop, because it is evaluated at the end of the loop. The following example shows a do/while loop:


do {

Code to complete while Boolean expression is true

} while Boolean comparison)


  • The foreach Statement

  • The foreach statement iterates through an array (collection), item by item, assigning a specifically named variable to the current item of the collection. It then runs the code block for that element, as the following example shows.


foreach (item in collection)


Code to complete for each item in the collection.



  • Using the for each statement can make batch modifications easier. Consider, for example, setting a description for all users that are members of a specific group, as the following example shows.


# Get a list of the members of the Domain Admins group

$DAdmins =  Get-ADGroupMember "Domain Admins"

# Go through each member and set the Description

foreach ($user in $DAdmins)


Set-ADUser $user -Description “In the Domain Admins Group”




  • Windows PowerShell enables you to retrieve, modify, and filter data from a variety of sources. In some cases, you may want to store data for comparison or use. For example, you may wish to retrieve a list of the members of a particular security group and then modify the description field of each of the users. Variables are used to store and retrieve data in memory during a Windows PowerShell session. A variable always begins with a dollar ($) sign and then can be named with descriptive text or numbers, such as $Variable1, $x, and $MemberList. Windows PowerShell variables are typed, meaning that they are created to store a specific type of data whether it is text, numbers, objects, time, arrays, or other defined object.

  • You can declare a variable in one of two ways, the first of which is using the Set-Variable cmdlet. For example, to declare a variable named $ADDS and assign it the object returned from Get-ADDomain by using the Set-Variable Cmdlets, use the following command:

Set-Variable -Name ADDS -Value (Get-ADDomain)

  • You will notice you do not specify the $ symbol when using the Set-Variable Cmdlets to declare variables. The second way to create a variable is by declaring it and assigning a value to it. To do this, start the command with the name of the variable, followed by an equal sign, and then the command, commands, or value to assign. For example to declare a variable named $ADDS and assign it the object returned from Get-ADDomain, use the following command:

$ADDS = Get-ADDomain


  • The $ADDS variable now holds a copy of the object output by the Get-ADDomain Cmdlets. The output object takes on the type defined in the relevant class, and the variable maintains that structure. You can now read and manipulate the variable as similar to how you would a .NET object. To obtain information about the properties or to run methods, you can use dotted notation on the variable. For example, to determine the domain functional level reported by the DomainMode property of Get-ADDomain, you can use the following command:


> $ADDS.DomainMode


Pr.Pg border                                              Next Pg