Download presentation
Presentation is loading. Please wait.
1
Windows PowerShell 最新コマンドライン スクリプティング
Microsoft On Windows PowerShell 最新コマンドライン スクリプティング マイクロソフト株式会社
2
セッションの内容 Windows PowerShell とは Windows PowerShell 詳細 ツールのご紹介
17/3/4 17時39分 セッションの内容 Windows PowerShell とは 運用管理のツールとして ロードマップ Windows PowerShell 詳細 ツールのご紹介 ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
3
Windows PowerShell コマンドラインシェル + スクリプティング言語
3/4/2017 5:39 PM Windows PowerShell コマンドラインシェル + スクリプティング言語 生産性と管理性の向上 システム管理の自動化を推進 簡単かつこれまでの資産を活用 MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
4
PowerShell の概要 新しい対話型シェルとスクリプティング言語 次世代のシステム管理アーキテクチャの基礎
3/4/2017 5:39 PM PowerShell の概要 新しい対話型シェルとスクリプティング言語 .NET Framework 上で動作 100以上の組み込みコマンドレット .NET を活用した新しいスクリプティング言語 「オブジェクト・パイプライン」 現在使っているツールも利用可能 現在使っている自動化技術 (COM) も利用可能 次世代のシステム管理アーキテクチャの基礎 今後サーバー製品で利用 MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
5
PowerShell の特徴 (1) 一貫したコマンドレット体系 標準的な名前付けパターン オプション指定 共通のパラメータ
3/4/2017 5:39 PM PowerShell の特徴 (1) 一貫したコマンドレット体系 標準的な名前付けパターン [動詞]-[名詞] (ex: get-help, get-command, get-member) オプション指定 Cmdlet –param v1 –param2 v1,v2 –flag 共通のパラメータ -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable, -Verbose -Whatif, -Confirm (副作用がある場合) オブジェクトを返す MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
6
PowerShell の特徴 (2) データへのアクセスを共通化 実運用レベルのスクリプティング ドライブに割り当て
3/4/2017 5:39 PM PowerShell の特徴 (2) データへのアクセスを共通化 ドライブに割り当て ドライブレターだけでなく、文字列を使用可 実運用レベルのスクリプティング パラメータの型、名前の指定、初期化 スクリプトへのデジタル署名 MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
7
Exchange Server 2007 の 管理アーキテクチャ
3/4/2017 5:39 PM Exchange Server 2007 の 管理アーキテクチャ GUI CLI セットアップ WinForm WinForm ADO.NET 管理インターフェイス PowerShell データプロバイダ PowerShell エンジン Exchange コマンドレット 設定情報へのアクセス Process boundary MAPI Store Active Directory Meta base レジストリ © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
8
例: Exchange Server 2007
9
利用中のツールの活用 すでに利用しているツールも続けて使いたい ツールが出力するデータを活用 PowerShell で安全なテキスト解析
3/4/2017 5:39 PM 利用中のツールの活用 すでに利用しているツールも続けて使いたい PowerShell 内で利用可能 コマンド (com, exe) COM オブジェクト ツールが出力するデータを活用 PowerShell でデータを再利用できるように加工 PowerShell で安全なテキスト解析 PowerShell でラップすることで拡張可能 .NET Framework を直接呼び出せる MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
10
必要システム・入手方法 OS アーキテクチャ 必要なソフトウェア 入手方法 Windows XP SP2
3/4/2017 5:39 PM 必要システム・入手方法 OS Windows XP SP2 Windows Server 2003 SP1 以降 Windows Vista Windows Server code-name "Longhorn" アーキテクチャ 32 bit 版、64 bit 版 必要なソフトウェア .NET Framework 2.0 Windows Vista, "Longhorn" Server には同梱 入手方法 ダウンロードセンター "PowerShell" で検索 ダウンロードページ (英語) management/powershell/download.mspx MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
11
動作モデル 4 種類の profile ファイルを起動時に実行 スクリプトの起動方法 別プロセスでコマンド実行可能 全ユーザー、各ユーザー
17/3/4 17時39分 動作モデル 4 種類の profile ファイルを起動時に実行 全ユーザー、各ユーザー PowerShell、特定のシェル スクリプトの起動方法 新規プロセス powershell foo.ps1 既存プロセスの新規スコープ Foo.ps1 既存プロセスのカレントスコープ . Foo.ps1 別プロセスでコマンド実行可能 Get-process Powershell {Get-process} ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
12
探検のためのツール Get-Help Get-Command Get-Member コマンドレットや言語のドキュメントを表示
17/3/4 17時39分 探検のためのツール Get-Help コマンドレットや言語のドキュメントを表示 Get-Command コマンドレット、スクリプト、Alias、関数、 フィルター、ネイティブコマンドの 情報を表示 Get-Member オブジェクトに関する情報を表示 ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
13
テキスト処理 ファイルや、テキストを返す既存のコマンドの 出力を操作 .NET String クラス 多くの .NET の型と変換を利用可能
17/3/4 17時39分 テキスト処理 ファイルや、テキストを返す既存のコマンドの 出力を操作 .NET String クラス Join, Split, SubString, Trim, Length, … 多くの .NET の型と変換を利用可能 [datetime], [URI], ENUMS, etc 豊富な string オペレーター +,*, -f, -replace, -match, -like, -eq, -ne, gt, -ge, -lt, -le 暗黙、明示的なキャスト、強制 豊富なユーティリティ Match-String, foreach, group, select, sort, where ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
14
出力と書式 リスト形式、表形式、ワイド、カスタムビューの フォーマッターが用意されている
17/3/4 17時39分 出力と書式 リスト形式、表形式、ワイド、カスタムビューの フォーマッターが用意されている Get-Command Format-* フォーマッターのオプションで、プロパティ、 プロパティセット、プロパティの表現を指定可能 gps |format-table name,id,handlecount gps |format-table Configuration -auto gps |format-table Label="File"; Expression= {$_.mainmodule.filename} } gps |format-list name,*size64 XML ファイルでフォーマット拡張を定義 Update-FormatData My.Format.ps1xml ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
15
ドライブ Get-ChildItem dir ls Get-Cwd cd pwd Get-Content type cat
17/3/4 17時39分 ドライブ さまざまなデータストアに、共通のアクセス方法を提供 データストアは「ドライブ」として見える Filesystem, Registry, Alias, Certs, Env, Functions, Variables, etc dir HKLM:\SOFTWARE\Microsoft 「ドライブ」はさまざまな情報を含む名前空間 Item, ChildItem, Content, Property, ACL, etc. 新しいナビゲーションや対話モデル、または alias により アクセスできる Get-ChildItem dir ls Get-Cwd cd pwd Get-Content type cat New-item –type directory mkdir Set-Location ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
16
ドライブのアクセス方法 名前を指定して新しいドライブをマウント ワイルドカード 豊富な共通のアクセス方法 特定のドライブで有効な拡張
17/3/4 17時39分 ドライブのアクセス方法 名前を指定して新しいドライブをマウント New-Drive -Name sys32 -Provider FileSystem root c:\windows\system32 -Description "PSH SOURCES" cd sys32:\drivers ワイルドカード Dir *\*\*.doc Dir [a-f]*[tc] 豊富な共通のアクセス方法 Dir \logs –Include *.txt –Exclude A* -Recurse -Force 特定のドライブで有効な拡張 Dir Cert: -Recurse –CodeSigning すべてのドライブでタブ補完 Dir HKLM:\So<TAB>\Mi<TAB> => HLKM:\Software\Microsoft ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
17
コマンドレット 標準的なスクリプティング方法 標準的な命名パターン 共通の文法 共通のパラメータ 戻り値は文字列ではなくオブジェクト
17/3/4 17時39分 コマンドレット 標準的なスクリプティング方法 標準的な命名パターン 動詞-名詞(目的語) 共通の文法 Cmdlet –param v1 –param2 v1,v2 –flag 共通のパラメータ -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable, -Verbose -Whatif, -Confirm (副作用がある場合) 戻り値は文字列ではなくオブジェクト ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
18
.NET スクリプティング あらゆる .NET の型が利用可能 .NET オブジェクトの生成
17/3/4 17時39分 .NET スクリプティング あらゆる .NET の型が利用可能 .NET オブジェクトの生成 $d=New-Object System.DateTime 2007,4,20 [DateTime] "2007/4/20" プロパティ、メソッドの確認 [DateTime] "2007/4/20" |Get-Member [datetime].Getmembers() |where {$_.isStatic} |ft name プロパティ、メソッドへのアクセス インスタンス $d.DayOfWeek $d.AddMonths(6) スタティック [DateTime]::Now [DateTime]::IsLeapYear(2005) メソッドは型が最も近いものが選ばれる キャストでオーバーライド [DateTime]::IsLeapYear([INT]$x) ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
19
オブジェクトユーティリティ Foreach (foreach-object) Group (group-object)
17/3/4 17時39分 オブジェクトユーティリティ Foreach (foreach-object) Get-process |foreach {$i = 0} {$i += $_.handles} { "Total Handles: $i"} Group (group-object) gps |group Company Measure (measure-object) gps |Measure Handles –Sum –Ave –Min –Max Select (select-object) gps |Select name,id –expand modules gps |Sort handles |Select –first 10 Where (where-object) gps |where {$_.handles –ge 500} ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
20
Windows の管理インターフェイス WMI: Windows Management Infrastructure
3/4/2017 5:39 PM Windows の管理インターフェイス WMI: Windows Management Infrastructure Windows の多くのシステム情報にアクセス可能 設定の変更も可能 WS-Management システム管理のための Web Service HTTP, HTTPS 経由でリモートアクセス リモートの WMI にアクセス MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
21
WMI Get-WmiObject WMI 名前空間とのインターフェイス
17/3/4 17時39分 WMI Get-WmiObject WMI 名前空間とのインターフェイス Get-WmiObject –list [-Namespace xx] Get-WmiObject –Class xx –Namespace xx –Property xxx – Filter xxx –ComputerName xxx –Credential xxx ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
22
COM VBScript から利用可能なものと同じ 管理オブジェクトにアクセス New-Object で COM オブジェクトにバインド
17/3/4 17時39分 COM VBScript から利用可能なものと同じ 管理オブジェクトにアクセス New-Object で COM オブジェクトにバインド $fso= New-Object -Com Scripting.FileSystemObject プロパティ、メソッドの確認 $fso |get-member プロパティ、メソッドへのアクセス $fso.GetDrive("C:") $fso.VolumeName = "System Drive" パイプでつないで使える $word = new-object –ComObject Word.Application $word.RecentFiles |sort name |format-table name, index,path -auto ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
23
XML XML はネイティブのデータ型 データへのアクセス方法が用意されている XML のプロパティへのアクセスは PSBase 経由で
17/3/4 17時39分 XML XML はネイティブのデータ型 $x=[xml]"<a><b><c>TEST</c></b></a>" データへのアクセス方法が用意されている $x.a.b.c XML のプロパティへのアクセスは PSBase 経由で $x.a.PSBase.innerXml XML メソッドへのアクセス $x.a.SelectNodes("//c") ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
24
管理スクリプトの作成 まずシェルで対話的に実験 ユーティリティで結果を結合 動作確認したコマンド類でスクリプト作成
3/4/2017 5:39 PM 管理スクリプトの作成 まずシェルで対話的に実験 ユーティリティで結果を結合 動作確認したコマンド類でスクリプト作成 パラメータなどを導入して汎用化 実運用レベルのスクリプトに改良 社内やコミュニティで共有 MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
25
例: Get-netstat.ps1 $lines = netstat.exe -ano -p TCP $ps = get-process
foreach ( $line in $lines ) { $obj = new-object System.Management.Automation.PSObject $obj.psobject.typenames[0] = "Netstat" switch -regex ($line) { ("^ TCP") { $values = $line.trim().split(" ", [StringSplitOptions]::RemoveEmptyEntries) $obj | add-member noteproperty "proto" $values[0] $laddr, $lport = $values[1].split(':') $obj | add-member noteproperty "laddr" $laddr $obj | add-member noteproperty "lport" ([int]$lport) $faddr, $fport = $values[2].split(':') $obj | add-member noteproperty "faddr" $faddr $obj | add-member noteproperty "fport" ([int]$fport) $obj | add-member noteproperty "state" $values[3] $obj | add-member noteproperty "pid" ([int]$values[4]) $pname = ($ps | where {$_.id -eq $values[4]}).name $obj | add-member noteproperty "pname" $pname $obj } ("^ UDP") { # TCPを参考に実装してみてください
26
エラー処理・デバッグ 例外の取り扱い トレース、デバッグ trap throw $error (ErrorRecord)
set-psdebug [-Trace 0..2] [-Step] [-Off]
27
セキュリティ セキュリティのレベルでモード設定可能 制限つき (オペレーターモード) 署名 リモートの署名 無制限 対話形式のみ
17/3/4 17時39分 セキュリティ セキュリティのレベルでモード設定可能 制限つき (オペレーターモード) 対話形式のみ スクリプトは実行できない 署名 スクリプトは、信頼された発行元による 署名が必要 リモートの署名 "インターネットゾーン" のスクリプトは 信頼された発行元による署名が必要 無制限 すべてのスクリプトを実行可能 リモートのスクリプトについては常に警告 ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
28
シェルの拡張 シェルへの組み込み スナップイン プロバイダ 独自のコマンドレットを静的にリンクし 新しいシェル実行形式を作成
汎用のシェルに、動的に読み込んで拡張 プロバイダ ファイルシステムと同様にアクセスできる 独自のプロバイダを作成可能
29
PowerShell と開発者 Design for Operation 開発者が用意するもの PowerShell により
17/3/4 17時39分 PowerShell と開発者 開発者が用意するもの 管理用オブジェクトに対する .NET のインターフェイス シンプルなコマンドレット・プロバイダーで、 高いユーザビリティを提供 PowerShell により コマンドレット → コマンドラインツール プロバイダー → ドライブのように容易にアクセス PowerShell が提供するもの 対話型シェル 強力な言語サポート コマンドライン ・ COM ・ .NET スクリプティング 共通のパーサー、引数のバリデータ ユーティリティー ・ フォーマッター GUI への拡張 MMC 3.0 のスナップインを Managed Code で作成 コマンドレットを呼び出す Design for Operation ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
30
パートナー PowerGadgets /n software inc Quest Software, FullArmor …
3/4/2017 5:39 PM パートナー PowerGadgets チャート、ゲージ、地図 サイドバー ガジェット /n software inc NetCmdlets ネットワーク関連のコマンドレット SNMP, SSH, LDAP, FTP, Syslog, Jabber, DNS, MIME, UUEncode, Zip … Quest Software, FullArmor … MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
31
参考情報 Windows PowerShell でのスクリプティング TechNet バーチャルラボ 準備中 製品ページ (英語)
3/4/2017 5:39 PM 参考情報 Windows PowerShell でのスクリプティング technet/scriptcenter/hubs/msh.mspx TechNet バーチャルラボ 準備中 technet/traincert/virtuallab/default.mspx 製品ページ (英語) MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
32
まとめ Windows PowerShell は強力な コマンドラインシェル環境です。
17/3/4 17時39分 まとめ Windows PowerShell は強力な コマンドラインシェル環境です。 .NET Framework を最大限に活用し、 最小の学習で最大の機能を利用できます。 これからのサーバー製品の基本ツールになります。 ぜひ試して、本運用にご活用ください! ©2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
33
3/4/2017 5:39 PM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. MICROSOFT CONFIDENTIAL © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2024 slidesplayer.net Inc.
All rights reserved.