WSE 3.0 CTP (for Visual Studio 2005 Beta 2) available for download より
Web Services Enhancements 3.0 の CTP です。VS2005 beta2 用だそうです。
と言っても WSE って (2.0 も含めて) どんなものなのかよく知らないんですけどね。つか、WS-* 自体ほとんど知らないんですけどね(^^;
# ちなみに Indigo もぜんぜん知らない(^^;
WSE 3.0 CTP (for Visual Studio 2005 Beta 2) available for download より
Web Services Enhancements 3.0 の CTP です。VS2005 beta2 用だそうです。
と言っても WSE って (2.0 も含めて) どんなものなのかよく知らないんですけどね。つか、WS-* 自体ほとんど知らないんですけどね(^^;
# ちなみに Indigo もぜんぜん知らない(^^;
今、行なわれている TechEd 2005 Orlando ですが、やっぱり本場の TechEd はすごいんですねぇ。
エバンジェリストグループ Blog: 「Tech ED 2005 に参加しています」
プレカンファレンスも入れると 6日間もあるのか。。。
うーん、夜 10時まで BOF ですか。。。
って、Agenda を見ると Jam Session なんてものが夜中の 1時まであるぞ(^^ もちろん、Jam Session は技術的なセッションじゃなくて、ほんとにジャムセッションみたいですが(^^;
むぅ、Special Events によると、パーティはユニバーサル・スタジオ・オーランドを PM7:30~PM11:00 まで貸し切りですか。。。VIP 待遇を受けるんですか。。。アトラクションも乗り放題ですか。。。食事も無料ですか。。。
いったい何人くらい参加してるんだろう?
と思ったら http://japan.cnet.com/news/ent/story/0,2000047623,20084215,00.htm こちらに約1万1000人とかって書いてあった。(スティーブ・バルマーのキーノートスピーチの聴講者の数みたいだから TechEd 全体だともっと多いのかも)
おぉ
Podcast Videos at TechEd 2005 - includes Don Box Pod Attack
こんなの発見。なんか Microsoft の撮影スタッフが Don Box のセッションに乱入したりしてるみたいです(^^;
# すでに今さらなニュースですが、自分の覚え書きとして。
Visual Studio 2005 と SQL Server 2005 (共に英語版) のリリースが 11月 7日の週ということになったとのこと。
http://msdn.microsoft.com/launch2005/
日本語版は、いつくらいかなぁ。
うーん、
Sender: Jason
Great article.
Your article is great.
Thanks.
っていう同じ文面のコメントが今朝から大量に書き込まれてるんですよねぇ。もうすでに 100通以上(^^; たいしたこと書いてないんで、そんなに誉めないで下さいよ。つか、日本語読めるんですか?(^^
って、もちろん、コメントスパムなんですけどね。文面にはリンクはないですが、コメントの記入者の URL が バイアグラ・なんとか・ドット・ビズ なんて感じの URL になってます。ちょうど、このコメントがいくつか書き込まれたところで気付いたので、とっとと対策は済ませました(なので、このコメントがいくつ書き込まれても表示はされません)。
Microsoft .NET Framework 1.1 and 2.0 (Beta) Compatibility より
.NET Framework の 1.1 と 2.0 beta の互換性に関するドキュメントが公開されたそうです> Microsoft .NET Framework 1.1 and 2.0 (Beta) Compatibility
GAC Internals Are Implementation Detail より
KB に 「DOC: Global Assembly Cache (GAC) APIs Are Not Documented in the .NET Framework Software Development Kit (SDK) Documentation」 という GAC API のドキュメントがあるそうです。もちろん IAssemblyCache だとかなんだとかっていう、ほんとの API です。
# しかし、「GAC API は .NET Framework SDK ドキュメントに掲載されてない」 ってのも
# なんとも言えないタイトルだな
vXCopy - Multi-Threded Files Copy Tool - Version 1.0 Released より
vXCopy というマルチスレッドでファイルコピーができるツールを Microsoft の方が公開しているようです。
って、まだツール自体はインストールもしてないのでどんなものなのかもまったくわからないんですけどね(^^; ただ、ClickOnce を使って公開しているって書いてあったので 「おぉ」 と思っただけです。
http://beta.asp.net/ が始まったそうです。上記の blog によると、これは ASP.NET 2.0 Beta と Visual Web Developer 2005 Express Edition のための新しいコミュニティポータルで、完全に ASP.NET 2.0 にフォーカスした http://www.asp.net/ の延長線上のサイトだそうです。また、ASP.NET 2.0 を基礎にしたデザイン、ルック&フィール、バックエンドのインフラストラクチャってことなので、どうやらこのサイト自体が ASP.NET 2.0 で作られてるみたいですね。
.Text でコメントを書くときに URL らしき文字列は自動的にリンクになります。
しかし、
http://msdn2.microsoft.com/library/s1wwdcbf(en-us,vs.80).aspx
というように URL の途中に括弧が入っていると、途中でちょん切られたリンクになってしまいます。URL の途中に括弧が入ってるなんてめったに出会わないと思うんですが、上記のように .NET Framework 2.0 のドキュメントが括弧を使ってるんですよねぇ(^^;
この問題は AI-Light blog の うなまな Blog 「シリアル通信が楽になるかな。。。」 のコメントのやり取りを見て気付きました(^^
これを修正するには、ソースを直してビルドしなおす必要があります。
文字列中から URL を探してリンクにする処理は Code\Dottext.Framework\Util\Globals.cs の EnableUrls メソッドで行なわれていますが、ここで使われている正規表現が原因です。
もともとの EnableUrls メソッドは以下のようになっているかと思います。
public static string EnableUrls(string text)
{
string pattern = @"(http|ftp|https):\/\/[\w]+(.[\w]+)([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])";
MatchCollection matchs;
matchs = Regex.Matches(text,pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);
foreach (Match m in matchs)
{
text = text.Replace(m.ToString(), "<a target=\"_new\" href=\"" + m.ToString() + "\">" + m.ToString() + "</a>");
}
return text;
}
これを
public static string EnableUrls(string text)
{
string pattern = @"((http|ftp|https):\/\/[\w]+(.[\w]+)([\w\-\.,@?^=%&:/~\+#()]*[\w\-\@?^=%&/~\+#]))";
string replacement = "<a rel=\"nofollow\" target=\"_blank\" href=\"$1\">$1</a>";
text = Regex.Replace(text, pattern, replacement, RegexOptions.IgnoreCase);
return text;
}
このように修正します。
修正内容は
です。
上記の修正をした DLL を http://www.divakk.co.jp/aoyagi/dotText_bin.ZIP において置きました(今回の修正だけではなく、今までの修正すべてが反映されています)。
2005/05/25 10:25 追記
肝心のソースのところが化けてたので修正しました。(化けていたというか、ソース中の <a> とかがうまく変換できてなかったのでちゃんと表示されていませんでした)
なにやら "D" というカンファレンスでビル・ゲイツによって MSN Virtual Earth というものがアナウンスされたそうです。
まぁ、基本的には Google Maps の衛星写真モード と同じものみたい(^^; ただ、45度斜め上から見れるようでそれがすごいってことみたい。(けど、Google Maps もそうだけど、詳細な画像はアメリカ国内くらいしかないんだろうなぁ)
Visual Studio 2005 Express をレジストレーションすると http://lab.msdn.microsoft.com/express/register/default.aspx にある online book にアクセスできるようになるみたいですね。http://lab.msdn.microsoft.com/express/vcsharp/default.aspx とかにも 「Register Visual C# 2005 Express Edition Beta 2 within 30 days and you will receive access to free online books and other valuable information.」 とあります。30日以内というのが必要条件なのかどうかはわかりませんが、レジストするとフリーの online book と有益な情報へのアクセスを受け取れるそうです。C# だけではなく VWD、VB、C++ などにも同じような文言が書いてあります。
けど、レジストの特典について書かれているのは英語版のほうだけで日本語版のほうにはそういった記述はないみたいです。日本語版でもレジストすると online book にアクセスできるようになるのかどうかはよくわかりません。まぁ、アクセスできたとしてもこれらの online book は英語の書籍なんですけどね。どうせだったら日本語の書籍が読めるようになったりするとうれしいんだけどなぁ。
ちなみに私は MSDN Subscriber Download から VSTS 日本語版をダウンロードしてセットアップしました。これって、Express と違ってレジストレーションはなかったように思います (少なくともレジストみたいなことをした記憶はない)。なので、レジストすると具体的にどうなるのかとかはよくわかりません。
# このためだけに Express を入れるのも面倒だしなぁ
The new Microsoft Update is pretty cool より
Microsoft Update なるもののベータが始まったそうです。FAQ によると、Microsoft Update っていうのは 「Windows だけではなく、インストールされている他の Microsoft 製品 (Microsoft Office、Exchange Server、SQL Server など) のアップデートを助けてくれる新しい Web サイト」 ということみたいです。
An operating system written in C# より
Microsoft Research が C# で書かれた新しいオペレーティングシステムを開発中とのこと。その名は Singularity というらしい。
と言っても、Microsoft Research は Microsoft の研究開発部門なので、「Longhorn の次の Windows は C# で書かれるらしい」 とかって早合点しないことw
Singularity がどんな OS なのか調べてはいないけど、個人的には 「Managed の Managed による Managed のための OS」 である Ponytail あらため CooS にがんばって欲しいなぁと思ってたり(^^;
PowerToys for the Visual Studio 2005 Class Designer and Distributed System Designers より
VS2005 のクラスデザイナにいろいろな機能を追加するアドインが GotDotNet Workspace にあるそうです。
が、VS2005 beta2 日本語版に入れてみたところエラーが出てしまいます (VS2005 の起動時にアドインでエラーが出たというメッセージが表示されます。なお、このアドインが使えないだけで VS2005 自体はちゃんと動いているみたいです)。なぜだろ?英語版じゃないとダメなのかなぁ。もし、動いた人がいたらどんな感じか教えてください。
一色さんの IT+ 「Visual Studio "Hawaii"」 で知った
eWeek: 'Hawaii': A Visual Studio Paradise for Developers? より
ちゃんと読んだわけでも、ちゃんと読めるわけでもないんですが(^^; ざっと読んでみました。
"Whidbey" (これは Visual Studio 2005 のコードネーム)、"Orcas" (これは Longhorn と同時期に出ると言われている Visual Studio のコードネーム) の後に続く Visual Studio はコードネーム "Hawaii" だそうです。しかし、「according to sources familiar with Microsoft's plans」 なんてありますが、これは 「Microsoft の計画に近い筋によると」 ってこと?いったいどんな筋なんだろう?
で、"Hawaii" は 「完全に再設計されたツールセット」 なんてありますね。Whidbey、Orcas と今まではアメリカ大陸北西の太平洋側の島の名前をコードネームに使ってたけど、新しいバージョンはデベロッパにとってこれら 2つのバージョンとはずいぶん違うものになるから "Hawaii" にした、みたいなことが書いてある。
Orcas の計画は今春か夏から全力で始まる、みたいなことが書いてあるな。うーん、Longhorn はいちおう 2006年ということになってたと思うけど、Orcas って 2006年に出るんだろうか?歴史的に見ると Visual Studio は複数の開発が同時期に行なわれていた、みたいなことも書いてあるから、すでに Orcas の開発も進んでいるってことなんだろうけど。。。Visual Studio.NET の 2002 と 2003 みたいにマイナーバージョンアップになっちゃったりしてw。 2002 → 2003 は .NET Framework 1.0 → 1.1 と .NET Framework 自体もマイナーバージョンアップだったからそれでもよかったけど、Whidbey → Orcas は .NET Framework 2.0 → WinFX ということでかなり大きなバージョンアップになると思ってたんだけどなぁ。もっとも 「ほんとに WinFX なんてものが出るの?」 という気がしないでもないんですが。Avalon/Indigo の CTP が提供されたり、逆に WinHEC で公開された Longhorn の最新ビルドには WinFX が含まれていないなんていう話を聞いたりと、こうなるともう 「WinFX っていうコードネームはこのままフェードアウト?」 という気がしちゃうし、さらに言っちゃうと 「WinFX の正式名って、ひょっとして .NET Framework 2.1?w」 という気がしちゃうわけです(この辺は完全に個人的な想像でなんの根拠もありません)。
けど、記事の 2ページ目の最初のほうにありますが、Orcas は Avalon、Indigo、XAML、コードネーム Sparkle (Avalon での開発をサポートしてくれて XAML を記述してくれる?この辺、よくわかってません)、というような Longhorn といっしょにやってくるいろいろなものをサポートする必要があります (というか、サポートしてくれなかったら悲しい)。そういう意味では結構なメジャーバージョンアップになるんでしょうね。
と、個人的には Hawaii よりも Orcas だな。つか、その前に Visual Studio 2005 だなw
(記事のほうでも Hawaii よりも Orcas のほうが多く扱われているような感じ。まぁ、Hawaii なんて、まだコードネームが出てきただけって段階でしょうからねぇ)
A new XAML wiki: XAMLshare.com より
http://www.xamlshare.com/ というのが立ち上がったそうです (FlexWiki を使った Wiki サイトです)。
「XMLshare は、デザイナやデベロッパ、他のみんなが Microsoft "Avalon" ベースのユーザインターフェースのための XAML のサンプル、コントロール、スタイルを検索したり共有したりするための中心的な場所」 だそうです。
まだ、始まったばかりでほとんど情報はないみたいですが、http://www.xamlshare.com/default.aspx/Objects/PlayingCard.html こちらに XAML で書いたトランプのカードがあります (なげぇ)。で、http://www.xamlshare.com/default.aspx/Objects/PlayingCardHand.html こちらにそのカードを扇型に並べた XAML コードがあります。
Team Foundation Hardware Requirements より
何人規模のときにどの程度のハードウエア (CPU、ハードディスク、メモリ) が必要になるかがまとめられています。
# もちろん、まだまだ beta の段階なので確定した値ではないんでしょうが。
Terrarium 1.2 Server Available より
2005年 5月 10日付けで Terrarium 1.2 が更新されています。
# というか、まだメンテされてたんですね。「なつかしー」 とかって思っちゃいました(^^;
SQL Server 2005: Migrate cursor developed stored procedures より
上記の blog でとっても単純なテーブルに対して
select sum(cast(a.ID * b.ID as decimal))
from tableA a, tableA b
という SQL を実行すると 1秒もかからない。
同じ内容を Transact-SQL のカーソルを使ってぐるぐるループするようにした場合は 1分くらいかかる。
この Transact-SQL と同じ意味になるようにした SQLCLR (カーソルのかわりに DataReader でぐるぐるループする) の場合は 7秒くらいですむ。
だそうです。
あたり前と言えばあたり前ですが、普通の SQL ですむものはやっぱりそれが一番速いわけです。しかし、カーソルを使わなくちゃいけないような場合は SQLCLR を使う価値もあるかもしれないということになるようです。(けど、そもそもカーソルなんてなるべく使わないようにするってのが一番だと思いますが(^^; )
まぁ、カーソルうんぬんは置いておいて、これは Transact-SQL でループだとかといったロジックを組むよりは SQLCLR で組むほうが速くなる(場合がある)ということなんでしょう。ただ、どの程度の複雑さの場合にどちらが有利になるのかは一概には言えないでしょうから、場合によっては両方とも試してみる必要があるってことになっちゃいそう。
さっきの 「.Text のコメントの自動リンク処理の修正」 の中で .Text は URL を抽出するのに正規表現を使っていると書きましたが、この正規表現ってけっこういいかげんっぽいです。なので、今後もうまくリンクにできない URL に遭遇する可能性大です。ほんとうなら、RFC なんかに則ったちゃんとした正規表現にしておきたいところです。そうすれば、どんな URL がきても大丈夫なはずです。(まぁ、RFC から外れた形式の URL なんかが書かれてるとダメになっちゃいますが、これは対処療法的に対応するしか仕方ないですしね)
で、こういう正規表現って誰かが書いてるだろうと思ってググってみました。
http URL の正規表現
Perl 向けに書かれたドキュメントのようですがすばらしいです。URL の正規表現も RFC を元にしたとてもきっちりとした正規表現になっているようです。
# ちょっと下にある 「メールアドレスの正規表現」 で紹介されている
# 正規表現ってものすごいな。
Object Test Bench - III: Exploring Framework APIs... より
正直、なにをやってるのかよくわかんないんですが。。。(^^;
なんか、動的に IL を作って、その IL に対応するようなソースコードっぽいものをあらかじめ用意しておいて、動的に作った IL がそいつをシンボルとして参照するようにしておいて、オブジェクトテストベンチでこのコードの Main を実行してやれば、ちゃんとその 「ソースコードっぽいもの」 のブレークポイントで止まったり、変数の内容をウオッチしたりできるってこと?
いや、実際に試してみるとそうなんだけど。。。
なんかすげぇ(^^;
Setting Breakpoints on All References より
たとえば、こんなコードがあったとします。
public class TestClass
{
private int num;
public TestClass()
{
this.num = 0;
}
public int Func()
{
return this.num;
}
}
VS2005 で上記の blog にあるマクロを適当に登録しておいて、num のところにキャレットを置いた状態でこのマクロを実行します。すると、num を参照しているところすべてに自動的にブレークポイントがセットされます。
今まで気に止めてなかったんですが、クイックコンソールなんてものが増えてますね。なんなんだろうと思って見てみたら、Console の入出力をリダイレクトしてくれてるウインドウとのこと。
試してみると、
という感じ。ということは、Windows アプリケーションのときにちょっとしたデバッグ用のメッセージを Console.WriteLine() とかで出力できて便利ってことかな?けど、それくらいのことなら Debug.WriteLine() でもできるし。。。
クイックコンソールってどんなときに便利なの?教えてプリーズ。
ちなみに、メニュー 「ツール」-「オプション」-「デバッグ」-「全般」 の 「すべてのコンソール出力をクイックコンソールウインドウにリダイレクトする」 でクイックコンソールを表示するかどうかをオン・オフできます。
Visual Studio の (主にエディタの) ちょっとしたチップスなんかがいっぱい紹介されています。
すべてを読んだわけではありませんが、以下、目に付いたものを紹介。
Did you know… How to share code snippets with other team members
VS2005 のコードスニペットをチーム内で共有するには、メニュー 「ツール」-「コードスニペットマネージャ」 で 「追加」 ボタンを押して適当な共有フォルダを指定しておけばいい。
Did you know… Visual Studio 2005 support for Code Snippets
VS2005 のコードスニペットのスキーマと書き方の説明へのリンク。
Use Ctrl-K Ctrl-C to comment selection and Ctrl-K Ctrl-U to uncomment selection
Ctrl+K Ctrl+C で選択範囲をコメントアウト。Ctrl+K Ctrl+U で選択範囲のコメントを解除。VS.NET2003、VS2005。
Did you know… How to open something in the binary editor (using Open With)
ファイルを開く (Ctrl+O など) とき、「開く」 ボタンのドロップダウンリストで 「バイナリエディタ」 を選ぶ、もしくは、「ファイルを開くアプリケーションを選択」 で 「バイナリエディタ」 を選ぶとバイナリエディタで読み込まれる。VS.NET2003、VS2005。
Did you know… The power of incremental searching
Ctrl+I でインクリメンタルサーチ。反対向きは Ctrl+Shift+I 。VS.NET2003、VS2005。
Cool new little Editor feature in the Dec CTP – Edit.PasteParameterTip
this.Foo(
などと入力するとインテリセンスで引数の情報がツールチップに表示されますよね。この状態で Ctrl+Alt+Shift+P とするとツールチップの状態がペーストされる。また、Ctrl+Alt+Shift+C とするとクリップボードにコピーされる。VS2005 のみ。
Visual Studio 2005 Beta2 日本語版をセットアップしてみました。
セットアップしてみた OS は、今まで CTP や Beta1 を消しては入れてきた Windows XP SP2 です。実は Virtual PC とかではなく、普段使ってるマシンだったりします(さすがに業務に使ってるマシンではないですが)。けど、いくら Beta2 では Go-Live ライセンスが提供されるとは言っても、しょせんは Beta なので、そのあたりは理解した上で自己責任で入れるべきかと思います。
まずは Beta 2 より前の Visual Studio 2005 プレビュー版の削除 を参考にすでに入っている CTP を削除。SQL Server 2005 関連とかでここに載っていないものもありましたが、それらももちろん削除。
さらに念のため Documents and Settings や Program Files の下なんかをエクスプローラで見ていき、VS2005 に関係しそうなもの (ちなみに、VS2005 はバージョンナンバー的には 8 になってることが多い)、SQL Server 2005 に関係しそうなもの (こちらはバージョンナンバー的には 9 ) を手動で削除。間違ったファイルを消すと既存のアプリが動かなくなる可能性があるので、よくわからない人にはお勧めしませんが。
続いてせっかくなので VS2005 クリーンアップツール で取り上げたツールを動かしてみました。exe を起動すると使用許諾などが表示され、続いてクリーンアップする製品を選択...これはグレー表示になっていて選択できませんでした。たぶん、先にコントロールパネルのプログラムの追加と削除で削除してしまったからでしょう。けど、選択できなくても特に問題なく 「Cleanup Now」 ボタンで実行できました。「View Log」 してみると、結構たくさん 1.2 やら 2.0 やらといったものが報告されています。と言っても、細かいことはよくわかりませんし、それらが Beta2 のセットアップに影響するようなものなのかどうかもよくわかりませんけど。まぁ、コントロールパネルのプログラムの追加と削除で全部削除したつもりでも MSI 関連、GAC、レジストリなどに結構ゴミが残っているというのは確かなようです。
次に、せっかくなので MSDN Subscriber Downloads からダウンロードできる SQL Server 2005 CTP - April 2005 - Developer Edition (Japanese) を入れてみました。特に問題もなくすんなりセットアップは終わりました。
最後に、これまたせっかくなので Visual Studio 2005 Team Suite Beta 2 (Japanese) をセットアップ (価格的に考えて業務でも個人でも Team Suite が使えるとは思いませんけどw)。上で SQL Server 2005 を入れてあるので、SQL Server 2005 Express だけはずして、他はほとんどデフォルトのまま。こちらも特に問題なくセットアップは終わりました。
と、最初に書いたように 「クリーンには程遠い」 ようなマシンですが、セットアップ自体は問題なく終わりました。まだ SQL Server 2005 も VS2005 もいちおう起動することを確認した程度ですが、実行も特に問題はないみたいです。
それに、同じマシンに Visual Studio.NET 2002、2003 も入ってますが、もちろんこれらも問題ないみたいです。