Knittel : Win 7 & Vista Gd Scrp Au CL

3.25 (8 ratings by Goodreads)
By (author) 

Free delivery worldwide

Available. Dispatched from the UK in 2 business days
When will my order arrive?



Windows 7 and Vista contain state-of-the-art tools for streamlining or automating virtually any system management task. If you're a power user, administrator, or developer, these tools can help you eliminate repetitive work and manage your systems far more reliably and effectively.

Renowned Windows expert Brian Knittel brings together the practical knowledge you need to use all these tools, including VBScript and Windows Scripting Host (WSH), traditional batch files, the advanced PowerShell command console, and more. Using plenty of examples, Knittel explains how each tool works, and how to solve real-world problems with them.

You'll master techniques ranging from accessing files to manipulating the Registry, sending automated emails to configuring new users. Knittel also provides concise, handy references to Windows 7/Vista's command line, GUI scripting, and object-based management tools.

The only single-source guide to all leading methods of Windows scripting and automation, this book will help you get far more done-in far less time!

Understand Windows Scripting Host (WSH) and the modern Windows scripting environment
Script objects with VBScript, JScript, ActivePerl, and ActivePython
Read and write files, including XML and HTML files
Manipulate programs and shortcuts
Manage network, printer, and fax connections
Make the most of PowerShell under Windows 7 and Vista
Monitor and administer Windows systems with Windows Management Interface (WMI)
Use ADSI to control Active Directory and Microsoft Exchange, and manage users more efficiently
Avoid mistakes that can compromise script security
Use Windows' debugging tools to test and troubleshoot scripts
Develop batch files that take full advantage of the command line
Send faxes and email messages from scripts with Windows Fax and Collaboration Data Objects (CDO)
Deploy your scripts throughout your organization

Brian Knittel has been a software developer for more than 30 years. He has coauthored five
titles in Que's Special Edition Using series, covering Microsoft Windows Vista, XP, and 2000.
He is also author of Windows XP Under the Hood, and coauthor of Upgrading and Repairing Windows (with Scott Mueller).
show more

Product details

  • Paperback | 840 pages
  • 177.8 x 233.68 x 48.26mm | 1,247.37g
  • Que Corporation,U.S.
  • Indianapolis, IN, United States
  • English
  • 0789737280
  • 9780789737281
  • 823,728

Back cover copy

The addition of the mouse and the Graphical User Interface made the computer accessible to many more people than would have been possible otherwise. Still, "pointing and clicking" can be tedious when performing routine or repetitive tasks. Just as people learn to use menu shortcuts (the Alt key) to save time, savvy users and administrators learn to write batch files and scripts to avoid having to type the same commands over and over. Scripts save time, increase accuracy, and serve as documentation to boot. Windows 7 and Windows Vista come with scripting, batch file, and command line tools that can make a power user or administrator's life easier - if she or he knows what they are and how to use them. However, a general lack of information and awareness prevent their widespread use. Most current Windows users have no idea how powerful and effective these tools can be. The new scripting languages are a mystery to most Windows users. And, in Windows 7, most command line tools aren't even discussed in the Windows Help system. Microsoft has released a completely new scripting and command line environment called the Windows PowerShell, but few users are aware of its existence, let alone its power and potential.
show more

Table of contents

Introduction 1

I Scripting with Windows Script Host

1 Windows Script Host 9

What Is a Windows Script? 9

The "Script" Part 9

The "Windows" Part 10

The "Host" Part 11

How Is This Different from Writing Batch Files? 13

Scripting Languages 13

VBScript 14

JScript 14

Perl 15

Python 15

Open Object REXX 15

Ruby 15

Choosing a Language 16

A Simple Script 16

Types of Script Files 19

JSE and VBE: Encoded Scripts 20

Windows Script Files (WSF) 21

Windows Script Components (WSC) 23

WSH Settings 23

Creating Your First Script File 24

Making and Securing a Script Folder 24

Creating a Script 26

Script Editing Tools 27

How Windows Runs Scripts 28

Wscript and Cscript 28

Ways to Run a Script 29

Passing Information to Scripts 31

Saving the Results from Scripts 32

Wscript and Cscript Command Options 33

Running Your Own Scripts 36

Adding Scripts to the Path 37

Running Scripts with a Shortcut Icon 38

Making a Script Shortcut 39

Running Scripts from Batch Files 39

Running Scripts Automatically 40

Security Concerns 40

Trust Policy and Script Signing 42

Debugging Scripts 42

Where to Get More Information 47

2 VBScript Tutorial 49

Introduction to VBScript 49

Variables 50

Constants 51

Named Constants 52

Operators and Expressions 53

Automatic Conversion 57

Flow Control 57

The If...Then Statement 58

The Select Case Statement 61

The Do While Loop 63

Terminating a Loop with Exit Do 65

Counting with the For...Next Statement 66

Processing Collections and Arrays with For...Each 67

VBScript Functions 68

Calling Functions and Subroutines 69

Documentation and Syntax 70

String-Manipulation Functions 71

Date and Time Functions 74

Interacting with the User 79

The MsgBox( ) Function 79

The InputBox( ) Function 82

Printing Simple Text Messages with Wscript.Echo 84

Advanced VBScript Topics 85

Error Handling 86

Procedures: Functions and Subroutines 87

Arrays 89

Variable Scope 91

Where to Go from Here 92

3 Scripting and Objects 93

Introduction to Objects 93

Classes and Instances 94

Containers and Collections 95

Object Naming 97

Using Objects with VBScript 98

Automation and Document Files 99

The Difference Between Properties and Methods 100

Nested Objects 101

Releasing Objects 102

Working with Collections 102

Using Objects with JScript 104

Case Sensitivity 104

Working with Collections 104

Using Objects with ActivePerl 106

Running Perl Scripts in WSH 106

The Perl Object Interface 107

Working with Collections 108

Using Objects with ActivePython 109

Working with Collections 110

Using the WScript Object 111

Retrieving Command-Line Arguments 113

Locating and Using Unusual Objects 115

4 File and Registry Access 123

Getting Real Work Done 123

Manipulating Files and Folders 124

Scripting.FileSystemObject 124

Working with File and Pathnames 130

The Scripting.Drive Object 135

The Scripting.Folder Object 139

The Scripting.File Object 144

Reading and Writing Files 149

The TextStream Object 150

Reading Text from Files 152

Writing Text to Files 154

Working with Stdin and Stdout 159

Reading Binary Files 163

Reading and Writing XML 167

Some XML Basics 168

Reading an XML File 176

Creating an XML or HTML File 179

Manipulating Programs and Shortcuts 181

The WScript.Shell Object 182

Running Programs 186

Creating and Modifying Shortcuts 193

Working with the Environment 196

Extracting Environment Information 198

Managing Environment Settings 199

Working with the Registry 201

Examining Registry Keys and Values 202

Saving Information in the Registry 203

5 Network and Printer Objects 207

Managing Network and Printer Connections 207

Retrieving Network User Information 212

Managing Drive Mappings 214

Listing Drive Mappings with EnumNetworkDrives 214

Adding Drive Mappings 218

Deleting Drive Mappings 219

Setting Up Mappings in a Script 220

Managing Network Printer Connections 221

Displaying Printer Information 222

Connecting to Network Printers 223

Redirecting DOS Session Printers 225

Deleting Printer Connections 226

Setting the Default Printer 228

Printing from Scripts 229

6 Messaging and Faxing Objects 231

Sending Email from Scripts with CDO 231

The CDO Object Model 232

The CDO.Message Object 235

Working with Fields 242

Fields for the CDO.Message Object 244

The CDO BodyParts Collection 246

The CDO BodyPart Object 247

The ADO Stream Object 250

The CDO.Configuration Object 250

Sending a Message with CDO 256

Constructing the Message 257

Adding Attachments 261

Including Images with an HTML Message 262

Specifying the Recipients and Subject 263

Specifying the Delivery Server 263

Sending the Message 265

Putting It All Together 265

Faxing from Scripts 271

Sending a Fax with a Script 274

Getting More Information About Faxing 277

7 Windows Management Instrumentation 279

Introduction to Windows Management Instrumentation 279

WMI Functions 280

Namespaces 281

Managing Windows Remotely 283

Making WMI Connections 287

WMI Object Hierarchy 288

Connecting with the WbemScripting.SWbemLocator Object 291

Connecting with a Moniker 292

Connecting to the Local Computer 294

Security and Authentication 294

Specifying Security Options 299

WMI Collections and Queries 301

SWbemServices 302

WQL Queries 303

SWbemObject 306

SWbemMethodSet and SWbemPropertySet 307

Scriptomatic 310

WMI Examples 312

Collecting System Information 312

Managing Printers 313

Monitoring Windows Service Packs and Hotfixes 313

Managing Services and Tasks 315

For More Information 317

8 Active Directory Scripting Interface 319

Managing the User Directory 319

Uses of the Active Directory Scripting Interface 320

Limitations of ADSI with Windows Script Host 321

ADSI Concepts 322

Multiple Inheritance 324

Creating ADSI Objects 325

Directory Security 328

Determining the Difference Between Containers and Leaves 330

ADSI Objects for the WinNT: Provider 332

IADs 333

IADsCollection and IADsContainer 336

Working with ADSI Collections 339

IADsComputer and IADsComputerOperations 340

IADsDomain 342

IADsFileService and IADsFileServiceOperations 345

IADsFileShare 347

IADsGroup 349

IADsMembers 350

IADsNamespaces 351

IADsPrintJob and IADsPrintJobOperations 351

IADsPrintQueue and IADsPrintQueueOperations 354

IADsService and IADsServiceOperations 357

IADsSession 361

IADsUser 362

IIS and Exchange 364

Managing Active Directory 364

X.500 and LDAP Terminology 364

Active Directory Objects 368

RootDSE 368

IADsO and IADsOU 369

Developing ADSI Scripts 370

EzAD Scriptomatic 372

For More Information 373

9 Deploying Scripts for Computer and Network Management 375

Using Scripts in the Real World 375

Designing Scripts for Other Users 376

Using WSF Files 377

WSF File Format Reference 379

Providing Online Help with WSF Files 384

Processing Command-Line Arguments 386

Enclosing More Than One Script 390

Putting It All Together 390

Deploying Scripts on a Network 394

Creating Simple Installation Programs with IExpress 395

Creating IExpress Install Scripts or Batch Files 398

Dealing with User Account Control 400

Providing an Uninstall Option 402

Writing Scripts to Manage Other Computers 403

Remote Scripting 405

Replicating Scripts to Multiple Computers 406

Scripting Security Issues 408

Script Signing 409

The Script Encoder 415

Setting Up Logon Scripts 416

User Profile Logon Scripts 416

Scripts for Logon, Logoff, and Other Events on Windows 7 and Vista 418

Group Policy Logon, Logoff, Startup, and Shutdown Scripts 418

Scheduling Scripts to Run Automatically 421

Writing Unattended Scripts 421

Sending Messages to the Event Log 423

Scheduling Scripts with the Task Scheduler 428

II The Command Line Environment

10 The CMD Command-Line 433

The Command Prompt 433

CMD Versus COMMAND 434

Running CMD 435

Opening a Command Prompt Window with Administrator

Privileges 436

CMD Options 437

Disabling Command Extensions 439

Command-Line Processing 439

Stopping Runaway Programs 440

Console Program Input and Output 441

Using the Console Window 442

I/O Redirection and Pipes 443

Copy and Paste in Command Prompt Windows 447

Command Editing and the History List 448

Name Completion 450

Enabling Directory Name Completion 451

Multiple Commands on One Line 452

Grouping Commands with Parentheses 453

Arguments, Commas, and Quotes 454

Escaping Special Characters 454

Configuring the CMD Program 455

AutoRun 455

Environment Variable Substitution 456

The Search Path 456

Predefined and Virtual Environment Variables 459

Setting Default Environment Variables 461

Built-in Commands 462

Extended Commands 475

Listing Files with the Dir Command 476

Setting Variables with the Set Command 480

Conditional Processing with the if Command 482

Scanning for Files with the for Command 483

Getting More Information 488

11 Batch Files for Fun and Profit 491

Why Batch Files? 491

Creating and Using Batch Files 492

Batch File Programming 494

Displaying Information in Batch Files 495

Argument Substitution 496

Argument Editing 498

Conditional Processing with If 499

The Basic If Command 499

Checking for Files and Folders 500

Checking the Success of a Program 500

Performing Several Commands After If 501

Extended Testing 503

Processing Multiple Arguments 503

Working with Environment Variables 506

Environment Variable Editing 507

Processing Multiple Items with the for Command 508

Using Multiple Commands in a for Loop 510

Delayed Expansion 511

Using Batch File Subroutines 513

Prompting for Input 514

Useful Batch File Techniques 515

Processing Command-Line Options 515

Managing Network Mappings 518

Checking for Correct Arguments 519

Keeping Log Files 519

12 The MS-DOS Environment Under Windows 521

MS-DOS Programs on Windows 521

The Virtual DOS Machine 522


Configuring the MS-DOS Environment 525

Window and Memory Options 526



MS-DOS Environment Variables 536

MS-DOS and Networking 536

Printing from MS-DOS 537

Print Redirection 538

Print Screen 538

Configuring Serial Communications with MS-DOS 539

Using Special-Purpose Devices for MS-DOS 539

Managing MS-DOS Programs 540

When Things Go Awry 540

13 Command-Line Utilities 543

Windows Command-Line Programs 543

The Essential Command Line 544

GUI Shortcuts 545

General-Purpose Shell Programs 547

findstr 547

more 552

tree 553

xcopy 554

File-Management Tools 557

attrib 557

cacls 559

Management Power Tools 563

driverquery 564

runas 565

tasklist 565

taskkill 568

sc 569

Networking Utilities 571

ipconfig 571

net 574

netstat 584

nslookup 586

ping 589

tracert 591

Getting More Utilities 592

III Introduction to Windows PowerShell

14 Windows PowerShell 593

Introduction to Windows PowerShell 593

An Object-Oriented Command Shell 593

Based on the .NET Framework 596

An Extensible Environment 597

Obtaining Windows PowerShell 598

The PowerShell Environment 600

The PowerShell Command Prompt 601

Command-Line Editing 602

Copying and Pasting 603

Pausing Output and Stopping a Runaway Program 604

Command-Line Syntax 604

Cmdlets and Objects and Scripts, Oh My! 607

Getting Help 610

Prompting to Complete Commands 612

Aliases 612

How to Get a Listing of Aliases 612

How to Define a New Alias 613

Navigating Directories and Other Locations 613

PowerShell Security 615

PowerShell Scripts and User Account Control 615

Script Execution Policy 616

PowerShell Profiles 617

15 PowerShell Programming 621

The Windows PowerShell Programming Language 621

Windows PowerShell Syntax 622

Comments 622

Variables and Types 623

Literal Values 625

Object Methods and Properties 626

Object Constructors 627

String Interpolation 628

Special Characters 629

Here-Strings 629

Releasing Variables 630

Predefined Variables 630

Arrays 632

Constants 637

Expressions 638

Comparisons with Arrays 640

String Operators 643

The & (Execute) Operator 646

Operator Precedence 646

Assignment Operators 647

Statement Values 648

Casts 649

Passing by Reference 650

Hash Tables 650

Flow of Control 653

if 653

while 654

do...while and do...until 654

for 655

foreach 656

switch 657

break 660

continue 661

Program Blocks 661

Exception Handling 662

trap 662

try/catch/finally 663

throw 664

Defining Functions 664

Function Parameters 665

Function Scope 668

The Dot-Source Operator 668

Variable Scope 669

Pipeline Functions and Filters 671

Splatting 672

Using the .NET API 673

Calling Static Member Functions 673

Working with Strings 674

Working with Dates and Times 676

Converting Values 680

Mathematical Functions 680

16 Using PowerShell 683

Real-World PowerShell 683

Command-Line Techniques 685

Generating Objects 685

Filtering 686

Taking Actions 689

Formatting Cmdlet Output 690

The -f Operator 690

Working with Files and Folders 691

Seeing Whether a File Exists 697

Reading Text from Files 697

Writing Text to Files 698

Identifying Files by Size 698

Creating Useful Scripts 699

Comment Your Work! 700

Command-Line Processing 700

Writing Modules 701

Exception Handling as an Exit Strategy 702

Using Hash Tables 703

The PowerShell Integrated Scripting Environment 704

Starting the PowerShell ISE 705

Configuring the ISE 706

Creating and Editing Scripts 707

Running Scripts in the ISE 708

Setting Breakpoints and Single-Stepping 709

Interactively Examining and Changing Variables 710

Conditional Breakpoints 711

Remote and Background PowerShell 712

Where to Go from Here 712

IV Appendices

A VBScript Reference 713

B CMD and Batch File Language Reference 725

C Command Line Program Reference 735

D Index of Patterns and Sample Scripts 747

E Automation Object Reference 1 (Online)

F WSF and WSC File Format Reference 1 (Online)

G Creating Your Own Scriptable Objects 1 (Online)
show more

About Brian Knittel

Brian Knittel has been a software developer for more than 30 years. After doing graduate work in electrical engineering applied to nuclear medicine and magnetic resonance imaging technologies, he began a career as an independent consultant.An eclectic mix of clients has led to long-term projects in medical documentation; workflow management; real-time industrial system control; and, most importantly, over 25 years of real-world experience with MS-DOS,Windows, and computer networking in the business world. Brian has coauthored Que's Windows 7 In Depth; Upgrading and Repairing Microsoft Windows; and bestselling books in the Special Edition Using series covering Windows Vista,Windows XP Professional and Home Edition, and Windows 2000 Professional.

Brian lives in Oakland, California. He spends his free time restoring antique computers (for example, and trying to perfect his wood-fired pizza recipes.
show more

Rating details

8 ratings
3.25 out of 5 stars
5 0% (0)
4 50% (4)
3 25% (2)
2 25% (2)
1 0% (0)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X