Code Pack の話尾崎 義尚こみゅぷらす
自己紹介こんにちは、尾崎 義尚です。http://spysee.jp/%E5%B0%BE%E5%B4%8E%E7%BE%A9%E5%B0%9A
Code Pack とはThe Windows® API Code Pack for Microsoft® .NET Framework provides a source code library that can be used to access new Windows 7 features (and some related Windows Vista features) from managed code. These features are not available to developers today in the .NET Framework.
Code Pack とはWindows API コード Pack for Microsoft .NET Frameworkは、マネージ コードからの Windows 7 の新機能 (および一部関連の Windows Vista の機能) にアクセスするために使用できるソース コード ライブラリを提供します。これらの機能は、.NET Framework で今日の開発者に使用できません。Bing Translatorhttp://www.microsofttranslator.com/Default.aspx
Code Pack とはマイクロソフト.NET FrameworkのためのWindows API Code Packは管理されたコードから新しいWindows7機能(或るものはウィンドウズビスタの特徴について話した)にアクセスするのに使用できるソースコードライブラリを提供します。今日の.NET Frameworkにおける開発者には、これらの特徴は利用可能ではありません。Excite 翻訳http://excite.co.jp/world/english/
Code Pack とはWindows® API Code Pack for Microsoft® .NET Framework (v0.90)Windows 7 の Feature を .NET から使うことができるソース コード ライブラリサポートなしWindows® API Code Pack for Microsoft® .NET Frameworkhttp://code.msdn.microsoft.com/WindowsAPICodePack
Code Gallery と CodePlexCode Gallery開発者情報の共有開発者リソースの共有サンプルコード、コード スニペットなどプロジェクト管理はできない純粋なストレージ サイトCodePlexオープンソース プロジェクト ホスティング サイトコード プロジェクトを管理可能
依存系.NET Framework 3.5 (以降)Windows 7 RC (v0.9では)DirectX の機能には、Windows SDK for Windows 7 RC 、DirectX SDK が必要
>tree WindowsAPICodePackサンプルソースコード ライブラリフォルダー パスの一覧ボリューム シリアル番号は 00650064 A2B8:4507 ですC:\USERS\YOSHIHISA\DESKTOP\WINDOWSAPICODEPACK├─Samples│  ├─AppRestartRecoveryDemo│  │  ├─CS│  │  └─VB│  ├─DirectX│  │  ├─Direct2D│  │  │  ├─ChartDemo│  │  │  └─Paint2D│  │  ├─Direct3D10│  │  │  ├─MeshBrowser│  │  │  ├─TextureSwap│  │  │  │  └─TextureSwap│  │  │  ├─Tutorials│  │  │  │  ├─D3D10Tutorial01_WinFormsControl│  │  │  │  ├─D3D10Tutorial01_WinFormsWindow│  │  │  │  ├─D3D10Tutorial01_WPF│  │  │  │  ├─D3D10Tutorial02_WinFormsControl│  │  │  │  ├─D3D10Tutorial04_WinFormsControl│  │  │  │  ├─D3D10Tutorial05_WinFormsControl│  │  │  │  ├─D3D10Tutorial06_WinFormsControl│  │  │  │  ├─D3D10Tutorial07_WinFormsControl│  │  │  │  ├─D3D10Tutorial09_WinFormsControl│  │  │  │  │  ├─Media│  │  │  │  │  │  └─Tiger│  │  │  │  └─D3D10Tutorial09_WPF│  │  │  │      ├─Media│  │  │  │      │  └─Tiger│  │  │  └─WindowsFlag│  │  │      └─Properties│  │  ├─Direct3D11│  │  │  └─Tutorials│  │  │      ├─Tutorial02_WinFormsControl│  │  │      ├─Tutorial02_WinFormsWindow│  │  │      └─Tutorial02_WPF│  │  ├─DXGI│  │  │  └─EnumAdapters│  │  └─UtilitiesLibrary│  │      ├─Controls│  │      ├─D3DX10Helpers│  │      └─Utilities│  │          ├─Camera│  │          ├─Math│  │          ├─Mesh│  │          │  ├─MeshLoaders│  │          │  └─SimpleGeometry│  │          ├─Shaders│  │          └─Texture│  ├─ExplorerBrowser│  │  ├─CS│  │  │  ├─WinForms│  │  │  └─WPF│  │  │      └─WPFExplorerBrowserDemo│  │  └─VB│  │      ├─WinForms│  │      └─WPF│  │          └─WPFExplorerBrowserDemo│  ├─ExtendedLinguisticServices│  │  ├─CS│  │  └─VB│  ├─NetworkDemo│  │  ├─CS│  │  └─VB│  ├─PowerMgmtDemo│  │  ├─CS│  │  │  └─PowerMgmtDemo│  │  └─VB│  │      └─PowerMgmtDemo│  ├─Sensors│  │  ├─CS│  │  │  ├─AccelerationMeasurement│  │  │  └─AmbientLightMeasurement│  │  └─VB│  │      ├─AccelerationMeasurement│  │      └─AmbientLightMeasurement│  ├─Shell│  │  ├─KnownFoldersBrowser│  │  │  ├─CS│  │  │  │  └─KnownFoldersBrowser│  │  │  └─VB│  │  │      └─KnownFoldersBrowser│  │  ├─PicturePropertiesEditor│  │  │  ├─CS│  │  │  └─VB│  │  ├─PropertyEditDemo│  │  │  ├─CS│  │  │  └─VB│  │  ├─ShellHierarchyTreeDemo│  │  │  ├─CS│  │  │  └─VB│  │  ├─ShellObjectCFDBrowser│  │  │  ├─CS│  │  │  │  └─ShellObjectCFDBrowser│  │  │  └─VB│  │  │      └─ShellObjectCFDBrowser│  │  ├─ShellThumbnailBrowserDemo│  │  │  ├─CS│  │  │  │  └─ThumbnailBrowserDemo│  │  │  └─VB│  │  │      └─ThumbnailBrowserDemo│  │  ├─StarBackupUsingLibraries│  │  │  ├─CS│  │  │  │  ├─Icons│  │  │  │  └─Wizard│  │  │  └─VB│  │  │      ├─Icons│  │  │      ├─My Project│  │  │      └─Wizard│  │  ├─StockIconsDemo│  │  │  ├─CS│  │  │  │  └─StockIconsDemo│  │  │  └─VB│  │  │      └─StockIconsDemo│  │  ├─TabbedThumbnailDemo│  │  │  ├─CS│  │  │  │  └─Winforms│  │  │  └─VB│  │  │      └─Winforms│  │  ├─TaskbarDemo│  │  │  ├─CS│  │  │  │  ├─RegistrationHelper│  │  │  │  └─TaskbarDemo│  │  │  └─VB│  │  │      ├─RegistrationHelper│  │  │      └─TaskbarDemo│  │  └─ThumbnailToolbarDemo│  │      ├─CS│  │      │  ├─Winforms│  │      │  └─WPF│  │      └─VB│  │          ├─Winforms│  │          └─WPF│  └─TaskDialogDemo│      ├─CS│      │  └─TaskDialogDemo│      └─VB│          └─TaskDialogDemo└─WindowsAPICodePack    ├─Core    │  ├─AppRestartRecovery    │  ├─Dialogs    │  │  ├─Common    │  │  └─TaskDialogs    │  ├─Interop    │  │  ├─AppRestartRecovery    │  │  ├─Dialogs    │  │  ├─NetworkList    │  │  ├─PowerManagement    │  │  └─TaskDialogs    │  ├─NetworkList    │  ├─PowerManagement    │  ├─Properties    │  ├─PropertySystem    │  └─SafeHandles    ├─DirectX    │  └─DirectX    │      ├─Direct2D    │      ├─Direct3D10    │      ├─Direct3D11    │      ├─Direct3DCommon    │      ├─DirectWrite    │      ├─DXGI    │      └─WIC    ├─ExtendedLinguisticServices    │  └─Properties    ├─Sensors    │  ├─Interop    │  ├─Metadata    │  ├─ObjectModel    │  ├─Properties    │  └─Sensors    │      ├─Light    │      ├─Motion    │      ├─Orientation    │      ├─Position    │      └─Proximity    └─Shell        ├─Common        ├─CommonFileDialogs        ├─Controls        ├─Design        ├─ExplorerBrowser        ├─Interop        │  ├─Common        │  ├─Dialogs        │  ├─ExplorerBrowser        │  ├─KnownFolders        │  ├─PropertySystem        │  ├─StockIcons        │  └─Taskbar        ├─KnownFolders        ├─Properties        ├─PropertySystem        ├─StockIcons        └─Taskbar再起動・リカバリー再起動・リカバリー再起動・リカバリー再起動・リカバリー再起動・リカバリー再起動・リカバリー再起動・リカバリー再起動・リカバリー再起動・リカバリー再起動・リカバリー
CodePackとはWindows 7 タスクバージャンプリストアイコン オーバーレイ進捗 (プログレス) バータブ化されたサムネイルサムネイル ツールバーWindows 7 Shell ライブラリWindows 7 Explorer Browser Controlシェル プロパティ システムコモン ファイル ダイアログタスク ダイアログDirect XDirect3D 11.0, 10.1/10.0DXGI 1.0/1.1Direct2D 1.0DirectWrite (一部サポート)Windows Imaging Component (WIC) APIs (一部サポート)センサー拡張言語サービス電源管理アプリケーションの再起動と復旧ネットワーク リスト マネージャーコマンド リンクとシステムで定義されたシェルアイコン
>tree WindowsAPICodePackフォルダー パスの一覧ボリューム シリアル番号は 00650064 A2B8:4507 ですC:.WindowsAPICodePack├─Samples└─WindowsAPICodePack
>tree WindowsAPICodePack\ WindowsAPICodePack└─WindowsAPICodePack    ├─Core    │  ├─AppRestartRecovery    │  ├─Dialogs    │  ├─NetworkList    │  ├─PowerManagement    │  ├─PropertySystem    │  └─SafeHandles    ├─DirectX    ├─ExtendedLinguisticServices    ├─Sensors    └─Shell        ├─Common        ├─CommonFileDialogs        ├─Controls    ├─ExplorerBrowser        ├─KnownFolders        ├─PropertySystem        ├─StockIcons        └─Taskbar再起動・リカバリーダイアログネットワーク電源管理プロパティーハンドル管理Direct X拡張言語サービスセンサーシェル共通コモン ファイル ダイアログコントロールエクスプローラー ブラウザー既知のフォルダーセンサー拡張言語サービス
>tree WindowsAPICodePack\Samplesフォルダー パスの一覧ボリューム シリアル番号は 00650064 A2B8:4507 ですC:\USERS\YOSHIHISA\DESKTOP\WINDOWSAPICODEPACK├─Samples│  ├─AppRestartRecoveryDemo│  ├─DirectX│  │  ├─Direct2D│  │  │  ├─ChartDemo│  │  │  └─Paint2D│  │  ├─Direct3D10│  │  │  ├─MeshBrowser│  │  │  ├─TextureSwap│  │  │  ├─Tutorials│  │  │  └─WindowsFlag│  │  ├─Direct3D11│  │  ├─DXGI│  │  │  └─EnumAdapters│  ├─ExplorerBrowser│  ├─ExtendedLinguisticServices│  ├─NetworkDemo│  ├─PowerMgmtDemo│  ├─Sensors│  ├─Shell│  │  ├─KnownFoldersBrowser│  │  ├─PicturePropertiesEditor│  │  ├─PropertyEditDemo│  │  ├─ShellHierarchyTreeDemo│  │  ├─ShellObjectCFDBrowser│  │  ├─ShellThumbnailBrowserDemo│  │  ├─StarBackupUsingLibraries│  │  ├─StockIconsDemo│  │  ├─TabbedThumbnailDemo│  │  ├─TaskbarDemo│  │  └─ThumbnailToolbarDemo│  └─TaskDialogDemo
AppRestartRecoveryアプリの再起動・リカバリー
Application Recovery and Restart以下のような場合にアプリケーションを再起動することができるハンドルされていない例外反応なし停止インストーラーによるアップデートコンピューターの再起動再起動に備えてデータを保存再起動後にデータを読み込んで状態を復元
AppRestartRecoveryDemo (1/25)
Direct X
Direct X on Windows 7新しい APIWindows Imaging ComponentDirectWriteDirectX Video AcceleratiorDirect 2DDesktop Window ManagerGDI+Direct3D 9Direct3D 10Direct3D 11UserGDIDirectX Graphic InfrastructureWin 32Hardware
Direct 2DWindows VistaWindows 7GDIGDIメモリDesktop Window ManagerDirect 2DGPUGPU同じ画像を 2 重で保持GPU に直接描画Hardware高速化メモリ使用量減
DirectX Graphic Infrastructure (DXGI)
DirectX Graphic Infrastructure (2/25)
Direct 3d 10
 ドライブ C のボリューム ラベルがありません。 ボリューム シリアル番号は A2B8-4507 ですC:\...\DirectX\Direct3D10 のディレクトリ2009/06/25  13:04    <DIR>          .2009/06/25  13:04    <DIR>          ..2009/06/24  07:29    <DIR>          MeshBrowser2009/06/25  13:03    <DIR>          TextureSwap2009/06/14  10:29    <DIR>          Tutorials2009/06/14  10:29    <DIR>          WindowsFlag               1 個のファイル                   0 バイト6 個のディレクトリ  101,712,412,672 バイトの空き領域Mesh Browser (3/25)X ファイル ビューアー
 ドライブ C のボリューム ラベルがありません。 ボリューム シリアル番号は A2B8-4507 ですC:\...\DirectX\Direct3D10 のディレクトリ2009/06/25  13:04    <DIR>          .2009/06/25  13:04    <DIR>          ..2009/06/24  07:29    <DIR>          MeshBrowser2009/06/25  13:03    <DIR>          TextureSwap2009/06/14  10:29    <DIR>          Tutorials2009/06/14  10:29    <DIR>          WindowsFlag               1 個のファイル                   0 バイト6 個のディレクトリ  101,712,412,672 バイトの空き領域TexturizerDemo (4/25)テクスチャの貼り付けデモ
Tutorials (5/25) ドライブ C のボリューム ラベルがありません。 ボリューム シリアル番号は A2B8-4507 ですC:\...\DirectX\Direct3D10 のディレクトリ2009/06/25  13:04    <DIR>          .2009/06/25  13:04    <DIR>          ..2009/06/24  07:29    <DIR>          MeshBrowser2009/06/25  13:03    <DIR>          TextureSwap2009/06/14  10:29    <DIR>          Tutorials2009/06/14  10:29    <DIR>          WindowsFlag               1 個のファイル                   0 バイト6 個のディレクトリ  101,712,412,672 バイトの空き領域
WindowsFlag (6/25) ドライブ C のボリューム ラベルがありません。 ボリューム シリアル番号は A2B8-4507 ですC:\...\DirectX\Direct3D10 のディレクトリ2009/06/25  13:04    <DIR>          .2009/06/25  13:04    <DIR>          ..2009/06/24  07:29    <DIR>          MeshBrowser2009/06/25  13:03    <DIR>          TextureSwap2009/06/14  10:29    <DIR>          Tutorials2009/06/14  10:29    <DIR>          WindowsFlag               1 個のファイル                   0 バイト6 個のディレクトリ  101,712,412,672 バイトの空き領域
Direct 3d 11
Tutorials (7/25)動かない・・・
Explorer Browser
Explorer Browser (8/25)ナビゲーション表示オプションファイル情報
Extended Linguistic Services拡張言語サービス
拡張言語サービス(Extended Linguistic Services)国際化対応の仕組みUnicode テキストから言語を自動検出表記変換簡体字中国語から繁体字中国語への変換など
拡張言語サービス サンプル (9/25)
Networkネットワーク
Network List Demo (10/25)
ネットワーク (Network クラス)
ネットワーク接続
Power Management電源管理
Power Management (11/25)
電源管理 (PowerManagerクラス)
電源管理 (PowerManagerクラス)GetCurrentBatteryState() メソッド
Sensorsセンサー
センサー
Sensor Samples (12・13/25)Acceleration MeasurementAmbient Light Level (環境光センサー)Shellシェル
Shell Samplesドライブ C のボリューム ラベルがありません。 ボリューム シリアル番号は A2B8-4507 ですC:\...\Samples\Shell のディレクトリ2009/06/14  10:30    <DIR>          KnownFoldersBrowser2009/06/14  10:30    <DIR>          PicturePropertiesEditor2009/06/14  10:30    <DIR>          PropertyEditDemo2009/06/14  10:30    <DIR>          ShellHierarchyTreeDemo2009/06/14  10:30    <DIR>          ShellObjectCFDBrowser2009/06/14  10:30    <DIR>          ShellThumbnailBrowserDemo2009/06/14  10:30    <DIR>          StarBackupUsingLibraries2009/06/14  10:31    <DIR>          StockIconsDemo2009/06/14  10:31    <DIR>          TabbedThumbnailDemo2009/06/14  10:31    <DIR>          TaskbarDemo2009/06/14  10:31    <DIR>          ThumbnailToolbarDemo
Known Folders Browser (14/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
Picture Properties Editor (15/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
PropertyEditDemo (16/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
ShellHierarchyTreeDemo (17/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
ShellObjectCFDBrowser (18/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
ShellThumbnailBrowserDemo (19/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
StarBackupUsingLibraries (20/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
StockIconsDemo (21/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
TabbedThumbnailDemo (22/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemoTabbedThumbnailPreview preview = new TabbedThumbnailPreview(this.Handle, newTab.Handle);Taskbar.TabbedThumbnail.AddThumbnailPreview(preview);
注目!TaskbarDemo (23/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
タスクバー機能ジャンプリストアイコン オーバーレイプログレスバー
ThumbnailToolbarDemo (24/25)KnownFoldersBrowserPicturePropertiesEditorPropertyEditDemoShellHierarchyTreeDemoShellObjectCFDBrowserShellThumbnailBrowserDemoStarBackupUsingLibrariesStockIconsDemoTabbedThumbnailDemoTaskbarDemoThumbnailToolbarDemo
Task Dialogタスク ダイアログ
TaskDialogDemo (25/25)
タスク ダイアログ
CodePack未対応の 7 フィーチャーリボンマルチタッチインクDirectWriteなどなど
まとめCodePackには、いろいろな技術要素が詰まっているマネージドな世界から最新技術にリーチすることができるまだまだ未完成 (v0.90) な部分もある実際に使う場合は、自己責任でそのためのソースコード提供
Code Pack の話

Code Pack の話