Visual C# 2005 Express Edition(無償) を使ってみる
|
はじめに
浅草ギ研では、主にシリアル通信で命令を出して駆動するセンサーやコントローラを販売しておりますが、物理的にPCとそれらの製品を接続しただけではロボットは作れません。PC側には、当然、アプリケーションプログラムが必要になってきます。
いままでは、マイクロソフトのWindowsアプリケーションプログラム開発環境である「.NET FreamWork」の「C#2003」を使用していましたが、新しいバージョンが発表されましたので今後はこの新しいバージョンで、浅草ギ研製品を動かすアプリケーションソフトを作ってみます。
今度のバージョンは、C#又は、C++又は、J#だけで開発するならマイクロソフトより無償で入手することができます。
※このページで紹介する内容はあくまでも一例です。個別の作成のご相談ご質問はお答えできませんのでご了承下さい。このページと同じ内容についてのご質問についてはロボット掲示板にてお願いいたします。
なお、このページでは各名称を以下のように略します。
VisualStudio2003 -> VS2003
VisualStudio2005 -> VS2005
VisualC#2003->VC#2003
VisualC#2005->VC#2005 、又は単にVC#、C#
マイクロソフト->MS
旧バージョン(xx2003)と新バージョン(xx2005)の違い
<VisualStudioの違い>
・.NET FreamWork環境では複数の言語を統合したVisualStudio(以下VSと略す)という商品があり、これは有償で売られています。複数の言語に対応していることもあり、企業などで複数のメンバーが共同でプログラムを作るような感じになっています。これの新旧の違いは以下のとおり(概略です)
|
VS2003 |
VS2005 |
開発できる言語 |
VisualBasic,C++,C# |
VisualBasic,C++,C#,J# |
価格 |
約10万円弱 |
約3万円 |
VisualStudioは、個人が1つの言語だけでプログラム開発するにはオーバースペックですので、ホビーロボット製作に使う場合は各言語だけのパッケージを入手した方がよいでしょう。
<Visual C#の違い>
・各言語だけを入手する場合はVisualStudioを買うよりも当然安い価格で入手できますが、今回のバージョンアップでの大きな点は、C#,C++,J#だけならマイクロソフトのホームページより無償で入手できるという点です。(VisualBasicも無償のような感じ)
|
VC#2003 |
VC#2005 |
言語仕様の違い |
− |
言語仕様が追加になった |
価格 |
約2万円 |
無償(MSよりダウンロード) |
・仕様の追加ですが、C#はオブジェクト指向言語であり、この最大のポイントはプログラムの再利用性にあります。但し、個人でロボット開発程度にプログラムを作る程度でしたら、オブジェクト指向を用いなくても、プログラムの生産性はあまり変わらないと思いますので、C#の仕様が追加になってもその機能を使わなくてもすむ場合が多いかと思います。
※あくまでも浅草ギ研の所感です。新しい仕様を勉強して使えば、当然いろいろとよいこともあります。
まとめ、
■VisualStudio2005を3万円出して買わなくてはならない場合
・WindowsCEの開発をする場合(VC#2005ExpressEdithionはCE対象外)
・一人でVisualBASICを使ったりC++を使ったりと、用途によって言語を変えたい場合
■VisualBasic2005を5千円出して買わなくてはならない場合
・どうしてもVBでプログラミングしたくて、紙のドキュメントが欲しい場合
(紙のドキュメントが不要であれば、MSから無償でダウンロードできる様子。よく確認してません。ココを見てください。)
ちなみに、私の個人的な意見では、以前のVB2003からVBが大きく変わったので、VBを使い続ける理由があまり無いような気がします。VB6から移行する場合はVB2003や2005でも、C#でも、労力はあまり変わらないように見えますし、職業プログラマでもそのように言う人が多いです。
上記以外は Visual xxx 2005 Express Edition をMSのホームページより無償でダウンロードするのがよろしいかと思います。
xxxはお好きな言語でよいですが、以下、C#の例をとります。C#は.NET用に開発された言語なので、コーディングが少なくてよいらしいです。ということでこれからPCアプリを始める方にはC#をお勧めしています。
Visual C# 2005 Express Edition をマイクロソフトのホームページからダウンロードする
※古いバージョンのVC#2003やVC#2005評価版などをすでにインストールしている方は、ソフトウェアの削除を行ってから、以下の作業を行ってください。「スタート」−>「コントロールパネル」−>「プログラムの追加と削除」からソフトウェアの削除が行えます。
※時間がかかるので、時間に余裕があるときに行いましょう。(半日程度かかる)
2006年3月現在で、VC#を無償でダウンロードするには下記ページへアクセスします。
VC#2005ExpressEditionのダウンロードページ
(その他の言語の方はこちらのページ(ExpressEditionのページ)の下の方のリンクからダウンロードできるようです。)
以下、私のパソコンにVC#2005をインストールしたときの手順を紹介します。PCのOSはWindowsXPホームエディションSP2です。
<MSのVC#のページ>※2006年3月現在の表示です。違っている場合は浅草ギ研までメールを頂ければ幸いです。
ここで、「Webからインストール」を押すとインストールが始まります。なお、開発中にはドキュメントを何回も参照することになりますので、インストールが終わったら、その下の「MSDN
EXpress Library」もインストールした方がよいです。さらに下の「Visual Web Developer 2005 Express」はWeb系のアプリ開発で使いますが、浅草ギ研の製品を動かす上ではあまり関係ないのでどちらでもよいです。
Visual C# 2005 Express Edition をインストールする
上の「Webからインストール」を押すと、インストールプログラムのダウンロードを促す、下のWindowが表示されます。
「実行」でもよいですが、私の場合はexeファイル(実行ファイル)をダウンロードする場合はとりあえずデスクトップなどに保存してから起動させています。ここではとりあえず「保存」を押します。
保存場所を指定して「保存」を押します。ここではデスクトップを指定してます。

ダウンロードが終了したら「実行」を押してインストールソフトを実行します。

Windowsの設定によっては、下のように警告が出る場合がありますので、「実行する」を押します。(マイクロソフトのIEが、マイクロソフトのソフトウェアを「問題を起こす可能性がある」というのもおかしな話ですが、とりあえずどんなソフトでも警告するようです。)

セットアップが始まるので「次へ」を押します。

使用許諾契約書の画面になるので下右の「同意する」をチェックしてから「次へ」を押します。このWebでの契約ですが、これも法的に正式な契約になるので、できればきちんと読むか、印刷しておいたほうがよいです。同意するをチェックしないと次へは押せません。

インストールオプションの画面になりますが、C#のExpressEditionだと下のようにSQLサーバしか追加できないようです。SQLサーバはデータベースソフトとの連携をとるものですので、ロボット開発にはあまり使いません。SQLを使う予定のある方はチェックを入れます(下の例ではチェックを入れてません。)。
「次へ」を押します。

インストール先を設定する画面になります。インストール先はどこでもよいですが、特に理由が無い場合はデフォルト(下記のように初期設定)で設定すればよいかと思います。
先のダウンロードでは、インストールソフトだけをダウンロードしましたが、今回は.NETやC#本体をダウンロードしますので少々時間がかかります。VS2003やVC#2003の時は、.NET
Fream Work のバージョンがVer1.1だったのですが、これを見るとVer2.0になっているのがわかります。
よければ「インストール」を押します。

セットアップが終了すると、下の画面になりますので、「今すぐ登録」を押して登録しましょう。後でもできますが後でやるのも面倒ですので。
RH59-10
Visual C# 2005 Express Edition の製品登録を行う
上の「今すぐ登録」を押すと、マイクロソフトのホームページが表示され、サインインするように表示されます。私はこの時点でMicroSoft
Passportに登録していないので、まずこれに登録が必要のようです。

ということでその左の「登録」を押して登録します。
次の画面で、指示に従ってメールアドレスなどを入力し、「続行」を押します。
次の画面で、契約書の確認と署名になるので、指示に従って入力し、「同意する」を押します。
次の画面で、アンケートの画面になるので答えた上で、「次へ」を押します。
※ページにも書いてありますが、ExpressEditionの場合は、MSからのお知らせをメールで受ける、のチェックボックスをオンにしないとまずいようです。ソフトは無償だけどお知らせは通るようにしてね、という感じでしょうか。
次の画面で、電子メールアドレスの所有者の確認になりますので、「次へ」を押します。
すると、登録したメールアドレスにMSからメールがきますので、指示に従ってアカウントの確認手続きを行います。
メールので送られたアドレスにアクセスすると、確認された旨の表示になります。
MicroSoft Passportへの登録が終わりましたのでC#の登録にもどります。ExpressEditionインストールの最後の画面が開いたままの場合は「今すぐ登録」を押します。閉じてしまった場合はC#のヘルプの中にある登録を行います。以下、C#のヘルプから登録を行う場合の例です。
VC#を立ち上げるために、「スタート」−>「すべてのプログラム」からVC#2005を選びます。

VC#2005が立ち上がったら、「ヘルプ」の「製品の登録」を選択します。

製品の登録の画面になりますので、「今すぐ登録」を押します。このとき、いままで開いていたブラウザが閉じているか確認してください。

再度、サインインになりますので登録した情報を入れ、「サインイン」を押します。なお、下の例ではメールアドレスをパスワードを保存にしてますが、これは好みで選択してください。私は次からいちいち入力するのが面倒なので保存を選択しました。
すると、VC#の登録画面になります。これはMicrosoftPassportの登録画面とほぼ同じです。Passport登録時に記入した内容はすでに入っていますので、足りない部分があったら記入して「次へ」を押します。

登録が終了され、記入したメールアドレスにVC#2005の登録キー取得の方法が送られてきますので、その指示に従って登録キーを確認します。
このメールですが、私の場合、今日現在(2006年3月)のものでMSからのメールの内容にHTMLコードなどが埋め込まれていたため、ウィルスメールと判断されて削除されてしまい、ハマりました(メールが来ない、と)。で、何回もC#のヘルプの製品の登録を行ったところ、Passportにきちんと登録されていれば、C#の製品の登録を3回行ったところで、「登録回数の限界を超えました」というWindowになった後、下記のような画面になり、結局登録キーが取得できました。
(すんなりいった場合にはこの画面がすんなり出ると思われる、の画面。)
キーが取得できたので、C#に戻り、「ヘルプ」−>「製品の登録」を選択し、キーを入力した上で「登録を完了する」ボタンを押します。

登録が完了すると下の画面になり、VC#2005が30日間以上でも使えるようになります。

MSDN EXpress Library をインストールする
次に、MSDNライブラリをインストールします。これはヘルプなどの追加ドキュメントが入っており、あった方がよいものなので面倒がらずにできるだけ入れておいた方がよいでしょう。後々プログラミングでハマったときに助かります。
尚、ファイルサイズがかなり大きい(300MB超)ので、この作業は時間があるときにおこなってもよいでしょう。
MSの Visual
C# 2005 Express Edition のページに戻り、MSDN Express Library をクリックします。

VC#のインストーラの時と同様に、デスクトップなどに保存して、実行することにします。「保存」を押します。
デスクトップを指定して「保存」を押します。

ADSL環境でもこんなに時間がかかります...光だともっと短いかと。

ダウンロードが終了したら、実行します。場合によっては下のようにセキュリティの警告が出ますので「実行する」を押します。
ファイルが展開され、インストールが始まります。「次へ」を押します。

使用許諾契約の画面になりmすので、内容を確認して「同意する」をチェックし、「インストール」を押すとインストールが始まります。

終了すると下の画面になりますので「完了」を押します。

Visual C# 2005 Express Edition を最新の状態にする。
上まででVC#をインストールできたわけですが、この時点でVC#が最新でもOSのアップグレードを行っていないことにより問題が発生するかもしれません。よってできればWindowsの状態を最新の状態にした方がよいと思われます。
但し、最近のXPではあまり発生しないと思いますが、Windwsをアップデートしたために別なアプリケーションソフトが動かなくなったりする場合があるようでしたので、動かなくなってはこまるソフトや、微妙なソフトを入れている方は、各自の判断で作業を行ってください。
環境を最新の状態にするには、WindowsUpdateを行います。インターネットエクスプローラを立ち上げて「ツール」−>「WindowsUpdate」を選択し、指示に従ってアップデートを行いましょう。
Visual C# 2005 Express Edition を使ってみる
では早速、新しくなったVC#を使ってみましょう。
尚、以下はあくまでも例ですので、未経験の方は書籍を購入したり、ヘルプを見たりして勉強してください。浅草ギ研では.NET
Fream Work環境、特にVC#での浅草ギ研製品との接続例を紹介しますが、VC#自体の解説は行いませんので各自勉強してください。VisualBasic2005でもC++2005でも大体同じです。
VC#2005(以下C#)を起動すると下のような画面になります。統合環境によくある、「プロジェクト」という単位で開発を進めます。

始めに立ち上げたときは、まだプロジェクトが無いので、最近つかったプロジェクトになにも表示されていません。

「ファイル」−>「新しいプロジェクト」を選択します。

とりあえず、コンソールアプリケーションを作ってみます。「コンソールアプリケーション」はDOS窓で動くソフトで、「Windowsアプリケーション」は普通のWindows上で動かすようなアプリケーションを作る場合に選択します。
「コンソールアプリケーション」を選択し、「プロジェクト名」に適当な名前をつけて「OK」を押します。

すると、下のような画面になります。この画面が実際のプログラミングを行う画面になります。絶対に書かなくてはならない構文は自動で挿入されています。

プログラミングでよくある「Hello」を表示させるプログラムを作ってみました。C言語のprintf関数に相当するのがConsole.Writeメソッドです。引数の構文(括弧の中)はCと同じです。

プログラムができたらビルドします。VC#2003ではCtrl+Shift+Bだったのですが、今度はF6を押すだけでいいみたいですね。

ビルドが成功したら、「デバック」−>「デバックなしで開始」を選択して動かしてみます。ちなみに、コンソールアプリの場合は、その上の「デバック開始」を選択すると今回のようなオチが無いプログラムの場合は一瞬のうちに終了してDOS窓が閉じてしまいます。

「デバックなしで開始」を実行したところです。Hello!!が表示されました。

次は、ロボットとPCの連携で必要な「シリアル通信」についてVC#2005ではどうなるか確認してみます。うわさによると、VC#2003とは違い、シリアル通信についてのライブラリが標準装備になったということですが。。。
2006年3月27日
|
|
|