VS.NET Beta2の起動時に見られるペインの配置で分かるように、VS.NETは従来のVB 6.0やVisual InterDevのユーザーインターフェイスをベースにしている。そのためこれまでのVC++ユーザーにとってはとまどう場面も多いかもしれない。ただしプロファイルを変更することで簡単に以前のショートカットキーの設定やペインの配置にすることができる。
Class Wizardの変更
MFCアプリケーションを作成する場合は、まずウィザード(MFC AppWizard)を用いて雛形を作成し、必要に応じてClass Wizardを使ってWindowsメッセージハンドラの作成やコントロールに対応するメンバ変数の作成などを行なっていた。これに対してVS.NET Beta2では、従来のMFC AppWizardに変わって、MFC アプリケーション ウィザードが起動する。
「MFC アプリケーション ウィザード」MFCアプリケーションウィザードでは、複数のページで構成されていたウィ-ドが1つにまとめられている。 |
そしてこれまでのClass Wizardに相当する機能は、プロパティペインや「MFC クラス ウィザード」ウィザードに分かれている。
「MFC クラスウィザード」VC++プロジェクトでのクラスの追加は、MFC クラスウィザードで行なう。 |
使い勝手は微妙なところだが、これによってC#やVB.NETの操作との共通化が図られている。
・ライブラリなどの変更点
2038年問題(通常では日付情報を、1970年からの秒数を32bitの整数値で表現している。そのため、2038年で32bit値がオーバーフローする)に対処するため、日付関係のライブラりに64bit値を用いる関数が追加されている。また、MFC 7.0でも同様に、CTime、CTimeSpanクラスなどで64bitに対応するメンバ関数が追加されている。MFCではさらに、HTMLの編集が可能なCHtmlEditControl、CHtmlEditView、CHtmlEditDocクラスなどが追加されている。またWindows 2000の印刷ダイアログボックスに対応したCPrintDialogExも用意されている(いまさらという気がしないでもないが)。通常のファイルオープンのコモンダイアログもWindws 2000のデフォルトのタイプに変更されている。Webサーバ関係の機能として、ISAPIをサポートする、CHttpArg、CHttpArgListといったクラスも追加されている。
さらにダイアログボックスにはCDHtmlDialogクラスが利用でき、DHTMLベースのダイアログボックスを作成することも可能になっている。
・ATL 7.0
従来のATLは軽量のCOMオブジェクトの作成に必要なクラスが提供されていたが、コレクションクラスやウィンドウ関連の処理にMFCを使う場合も多く、結果的にコンパクトなオブジェクトを作成しにくくなっていた。そのためMFCのコレクションクラスの一部をATLでも実装している。文字列を扱うCStringはMFCのCStringと同様に扱うことができるようなった。さらに、配列を扱うCAtlArray、リストを扱うCAtlListなども追加されている。また、ATL Server作成機能に含まれるクラスも追加されている。新規作成プロジェクトには「ATL サーバー Webサービス」が追加されている。これはWebサービス用のATL Serverを作成するもので、ValidationサポートとStencil処理機能が省略されている。
「ATLサーバー Webサービス」Webサービス用のATL Serverを作成するもので、ValidationサポートとStencil処理機能が省略されている。 |