トップページ⇒tech
1001コメント284KB

Visual Studio 2005スレ Part10

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/02/09(木) 01:46:56
Visual Studio 2005 Express Edition(無償)
http://www.microsoft.com/japan/msdn/vstudio/express/
貧乏人は急いでGETだぜ!

Visual Studio 2005 Developer Center
http://www.microsoft.com/japan/msdn/vstudio/2005/
http://lab.msdn.microsoft.com/vs2005/

Visual Studio 2005 製品ライン概要
http://www.microsoft.com/japan/msdn/vstudio/productinfo/productline/
http://www.microsoft.com/japan/msdn/howtobuy/vs2005/

Product Feedback Center
http://lab.msdn.microsoft.com/productfeedback/

過去スレ
Part9 http://pc8.2ch.net/test/read.cgi/tech/1138703942/
Part8 http://pc8.2ch.net/test/read.cgi/tech/1137354521/
Part7 http://pc8.2ch.net/test/read.cgi/tech/1135529419/
Part6 http://pc8.2ch.net/test/read.cgi/tech/1134819322/
Part5 http://pc8.2ch.net/test/read.cgi/tech/1133029283/
Part4 http://pc8.2ch.net/test/read.cgi/tech/1131494714/
Part3 http://pc8.2ch.net/test/read.cgi/tech/1125460842/
Part2 http://pc8.2ch.net/test/read.cgi/tech/1113305966/
Part1 http://pc8.2ch.net/test/read.cgi/tech/1080916113/
0153デフォルトの名無しさん2006/02/11(土) 21:26:29
>>152
MSDN両方入れとけ
0154デフォルトの名無しさん2006/02/11(土) 21:55:16
前スレで.NET 2.0になってListViewがちらつくとか言ってたものです。
.NET 2.0から採用されたDoubleBufferプロパティをtrueにすれば、ちらつかなくなりました。
めんどうなことにDoubleBufferプロパティはprotectedなので、
このプロパティをtrueにするには、クラスを継承するしかありません。
なんでpublicにしなかったのかしらん。
01551542006/02/11(土) 22:00:14
てか、.NET2.0になってListViewめちゃくちゃ重くなってる気がするんだけど・・・
0156192006/02/11(土) 22:07:10
>>112
MSDN:.NET開発−コラム−Dr.GUI.NET

0157デフォルトの名無しさん2006/02/11(土) 22:13:29
>>155
前スレで書かれてたと思うけど、
2005のListViewは何故か再描画しまくるからチラついたり重かったり使い物にならない
仮想ListViewを使うしかないな
01581542006/02/11(土) 22:17:35
仮想ListView使ったらソート時に例外吐いたよ・・・
0159デフォルトの名無しさん2006/02/11(土) 22:30:42
Sorting指定すると重くなるな。自力でソートしたらどうなんかね。
0160デフォルトの名無しさん2006/02/11(土) 22:51:28
>>153
それって、Expressの場合ですか?
それともVS2005もっていてもVS6のMSDN入れとかなきゃいけないんですか?

あと、VS6のIDEと連動するMSDNライブラリはいつの奴で終わりですか?
01611482006/02/11(土) 23:54:10
再インストールとかしてみましたが、未だにダイナミックヘルプは表示できておりません。
Windowsが未だ2000ってのは関係ないですよね

>>151
それってMSDNもExpressEditionですか?
表示方法は>>148でいうとどれでしょうか?
0162デフォルトの名無しさん2006/02/12(日) 00:00:44
union はどこいったですか
0163デフォルトの名無しさん2006/02/12(日) 00:14:58
ビットフィールドはどこいったですか
0164デフォルトの名無しさん2006/02/12(日) 00:18:30
チーズはどこに消えたはどこいったですか
01651542006/02/12(日) 01:33:06
いろいろ謎な.NET2.0
public static string HogeRegex(string str) {
Regex regex = new Regex("\\s+$", RegexOptions.Compiled);
return regex.Replace(str, "");
}
こんなRegexを内部で使う関数があったんだけど、
(正規表現の中身自体は別になんでもいいので気にしない)
毎回決まった正規表現を使うなら、
Regexオブジェクトをstaticにしておく方が良いから、
staticに変えたんだよね。
そしたら劇的に速くなった。4倍くらい。
でも.NET1.1だと、そこまで速くならなかった。
0166デフォルトの名無しさん2006/02/12(日) 01:45:55
速度を上げるために正規表現をコンパイルしておくってのはよく聞く話だと思うが?
この場合は、staticの一回目だけ正規表現がコンパイルされるから速くなる。
0167デフォルトの名無しさん2006/02/12(日) 01:52:14
起動がもっされにならない?
0168デフォルトの名無しさん2006/02/12(日) 01:53:29
>>160

> VS6のIDEと連動するMSDNライブラリはいつの奴で終わりですか?

確か2001/10
ちょっと前のMSDNになら「Integrations with Microsoft Visual Studio 6.0 Only」って名前で同じやつが入ってた
0169デフォルトの名無しさん2006/02/12(日) 01:59:51
前スレにあったが、Standard Edition.でx64のコードが吐ける模様。
コンソールhello, world程度でしか確認していないが、
Debug、Release両方実行OK。デバッグ実行可能。

何か罠が仕掛けられているような気がするのだが。
0170デフォルトの名無しさん2006/02/12(日) 02:02:24
>>169
ペナルティが無いなら64bit開発者にPro版を勧めてるMSは問題アリアリじゃないのか?
0171デフォルトの名無しさん2006/02/12(日) 02:03:50
>>169
x64てItalium?
0172デフォルトの名無しさん2006/02/12(日) 02:05:24
>>167
んじゃシングルトンにして初回使用時にコンパイルするようにする。
01731542006/02/12(日) 02:06:42
>>166
いや、それはわかってる。
俺が言いたいのはstatic化しないコードを比べると、なぜか 
.NET2.0 <<<< .NET1.1
となること。
0174デフォルトの名無しさん2006/02/12(日) 02:08:27
>>173
実装が変わって効率が上がったと。
0175デフォルトの名無しさん2006/02/12(日) 02:08:37
>>172
class Hoge{
static Regex hoge = new Regex("aaa", RegexOption.Compiled);
}
とかやる場合でも実際に Regex のインスタンスが使われるのは
Hoge クラスが初めて使われるときだよ
0176デフォルトの名無しさん2006/02/12(日) 02:25:57
ところでCompiledにした場合とそうじゃない場合って
度の程度パフォーマンスが違うもん?
かなり複雑?な正規表現だと差が出そうだが、
単純なものならあんま変わらん気がする。
※ていうかCompiledの場合のコンパイルがかなり遅いから躊躇してしまう。
01771542006/02/12(日) 02:37:10
>>174
いや、逆。.NET2.0のが遅いのよ。
.NET1.1で作ったのを2.0に移行中で、
Regexの件はすべて修正したが、まだ若干遅い。
原因探るの結構大変。

>>176
staticにしちゃったら、Compliedつけないくても良い思う。
0178デフォルトの名無しさん2006/02/12(日) 03:00:21
>staticにしちゃったら、Compliedつけないくても良い思う。
うぬ?それはどういうこと?
0179デフォルトの名無しさん2006/02/12(日) 03:03:26
>>178
むしろ逆だよねえ
0180デフォルトの名無しさん2006/02/12(日) 03:07:34
Compiled をつけて作成した Regex インスタンスは
たとえ Regex インスタンスがGCによって回収されたとしても
AppDomain がアンロードするまでリソースを解放しないんじゃなかったっけ
0181デフォルトの名無しさん2006/02/12(日) 03:08:46
うーん確かめたわけではないので確証はないが、
Regexって一度作成された正規表現はキャッシュされてるぽいのよね。
で、多分それはCompiledオプションが指定されているかどうかによらない。
なのでCompiledをつけたほうがよいかどうかはそもそもstaticかどうかとは
関係なさそうに思う。

まあ、仮にキャッシュされてなかったとしたら、
それこそ>>179の言うように逆だよねえ。
0182デフォルトの名無しさん2006/02/12(日) 03:14:28
少なくとも、Compiled指定されたRegexのコンパイル結果が
キャッシュ(というか再利用)されてないとは考えにくいので、
staticだろうがそうでなかろうが、
最初の実行時の負荷と利用頻度とのトレードオフだろう。
で、普通に使う程度の正規表現でそれほどのパフォーマンス差がないんなら
あんまり使おうと思わないんだよね…
0183デフォルトの名無しさん2006/02/12(日) 03:44:49
VC8のリソースエディタでメニューを作る場合
空のメニューに対して「ポップアップ表示」を選択→そのメニューをクリック→VCクラッシュ
発動する人います?
うちではキャプション入れる前に「ポップアップ表示」選択してると落ちるみたい
0184デフォルトの名無しさん2006/02/12(日) 04:14:31
VS2003からVS2005Proに乗り換えたが、いわれてるほどには重くもないな
起動がちょっと遅いような気もするが問題ないレベル

むしろ某の糞IDEみたいに変なところでもたついたりしないで
安定して動くしふつうにVS2005は良作じゃね?
0185デフォルトの名無しさん2006/02/12(日) 04:49:35
MSDNきたよ〜
0186デフォルトの名無しさん2006/02/12(日) 05:37:22
>>183
1 空のメニューリソースを作成
2 空項目を右クリックして、「ポップアップ表示」を選択
3 その空項目をクリック
で発動。
空の状態でポップアップ表示を使うと落ちるわけか。

バグ報告よろ。
0187デフォルトの名無しさん2006/02/12(日) 05:41:43
開発環境のバグフィックスってちゃんと出るモノなのかな。
VS.NET 2003 の時は、結局バグフィックス一度も出なかった。
それ以前は VS 使ってなかったから知らないけど。
0188デフォルトの名無しさん2006/02/12(日) 05:44:56
>>187
6.0は、ServicePackが6まで出てる。
2002は1つ、
2003は使った事無いけど2002のマイナーチェンジ?
0189デフォルトの名無しさん2006/02/12(日) 05:47:24
>>187
3月下旬頃に出す予定らしい
http://msdn.microsoft.com/vstudio/support/servicing/sp1_vs03/default.aspx
0190デフォルトの名無しさん2006/02/12(日) 06:15:31
>>188-189 情報 THX
.NET Framework 2.0 に依存したくないアプリケーションを
作るときのために VS.NET 2003 も入れたままにしてあるから、
Service Pack 1 が出るのはありがたいな。
0191デフォルトの名無しさん2006/02/12(日) 06:33:18
VC++2005EEで「関数の追加」をクラスビューで出す方法は無いのでしょうか?
0192デフォルトの名無しさん2006/02/12(日) 08:15:15
>>183
うちでも100%再現。
バグ報告お願い。
http://lab.msdn.microsoft.com/productfeedback/
0193デフォルトの名無しさん2006/02/12(日) 08:48:44
>>183
おお、うちでも再現した。
01941542006/02/12(日) 09:16:51
>>179 >>182
うーん、今試したけど、staticにせずにCompiled付けたときと
staticにしたときでは、staticにした方が断然速いけどなぁ。
0195デフォルトの名無しさん2006/02/12(日) 10:06:36
>>169
ますますStdで良くなった〜。PGOだけじゃ+4万払えん。

まあ正式サポートじゃないんだろうな。次回プレスから
外されるかもしれんし。
0196デフォルトの名無しさん2006/02/12(日) 10:16:49
>>170
動くけどサポートしません、ぐらいで落ち着きそうかな。

>>171
Itaniumのマシンなんて持ってないってばさ(w
あ、そのうち会社でいじれることになるかもしれんが。
0197デフォルトの名無しさん2006/02/12(日) 10:40:42
>>195
aca最高
0198デフォルトの名無しさん2006/02/12(日) 10:49:28
学生じゃないからねえ
0199デフォルトの名無しさん2006/02/12(日) 10:58:11
アマゾヌなら(ry
0200デフォルトの名無しさん2006/02/12(日) 11:03:40
@"ちこりーた\nもえもえ"

で出力するとそのまま
ちこりーた\nもえもえ
と出力されてしまいます。

C#では改行記号が変わったのでしょうか?
0201デフォルトの名無しさん2006/02/12(日) 11:04:03
>>192
MVPがeXconn経由で報告したほうが早いし直通
0202デフォルトの名無しさん2006/02/12(日) 11:05:00
>>200
MSDN見てこいぼけ。
0203デフォルトの名無しさん2006/02/12(日) 11:05:25
>>200
大昔から変わってない仕様だけど
0204デフォルトの名無しさん2006/02/12(日) 12:30:32
>189
VS2003SP1は2006年2Q(4-6月)、VS2005SP1は2006年3Q(7-9月)となってますね。
時期が守られるかどうかはわかりませんが。
0205デフォルトの名無しさん2006/02/12(日) 12:32:10
>>195
SPでこっそり削除されないためにも、ここは
既成の事実にしといたほうが多分いいんだろうな。
0206デフォルトの名無しさん2006/02/12(日) 14:21:03
はじめから未サポートと書いてる以上、こっそりだろうが問答無用だろうが
削除されても文句は言えないだろうな
0207デフォルトの名無しさん2006/02/12(日) 14:34:23
こっそり削除と同時にStd→Proへのステップアップグレードが発売されると予測するテスト
0208デフォルトの名無しさん2006/02/12(日) 14:47:46
そもそもstdで仕事する気ですかぁ?
0209デフォルトの名無しさん2006/02/12(日) 14:50:37
>>208
要は金になれば良いので必要以上に開発環境にはこだわりません。
0210デフォルトの名無しさん2006/02/12(日) 14:59:36
立派な道具があれば立派な仕事ができるわけじゃないからなあ。
0211デフォルトの名無しさん2006/02/12(日) 15:05:28
expressでも商用利用可能だし
0212デフォルトの名無しさん2006/02/12(日) 15:05:35
漏れ1.0の頃はSDKだけで開発してたよ。
TeraPadみたいな外部ツール使えるエディタと
あとは.batファイル駆使して
結構大規模なアプリも作れたよ(・∀・)
0213デフォルトの名無しさん2006/02/12(日) 15:06:29
>>212
Eclipseも使えるよね。たしか。
0214デフォルトの名無しさん2006/02/12(日) 15:14:10
Antなんかと組み合わせれば.batよりも楽だしな♪
0215デフォルトの名無しさん2006/02/12(日) 15:18:53
.NetFramework1.Xのexeの一回目起動がもっさりしてる現象、
2.0だとどうなってる?
やっぱりもっさり度割り増し?
0216デフォルトの名無しさん2006/02/12(日) 15:24:04
もっさりしてるよ
そんなこと気にするなら書くのやめろ
その重たいロードにも耐えてくれるようなアプリケーションかけないなら
.NETはデスクトップアプリでは使う必要がない
0217デフォルトの名無しさん2006/02/12(日) 15:24:08
フォームを表示するだけのプロジェクトつくって
1.1と2.0を比べると意外と速度が違う
0218デフォルトの名無しさん2006/02/12(日) 15:26:50
>>217
そうですか
0219デフォルトの名無しさん2006/02/12(日) 15:27:46
>>209-211
最低でもTeam Edition以上でないと仕事にならんよ。単体テスト、プロファイラ
なしでどうやって品質を維持するの?
0220デフォルトの名無しさん2006/02/12(日) 15:29:29
>>219
作れ
というかM$のは信用ならん
0221デフォルトの名無しさん2006/02/12(日) 15:34:36
>>219
単体試験が必要になるほど長く汚いメソッドを書かない。
0222デフォルトの名無しさん2006/02/12(日) 15:35:50
大規模なTeamや外注使わないとできない仕事とは限らんし
0223デフォルトの名無しさん2006/02/12(日) 15:37:24
>>219
参考までにあなたのプロジェクトのライン数と不具合発生率を教えてください。
0224デフォルトの名無しさん2006/02/12(日) 15:47:47
Team Editionがないと
単体テストが
できないのか?ん?
0225デフォルトの名無しさん2006/02/12(日) 15:49:12
>>219 プロファイラはほしいのでちょとうらやましす。
.NETまだあまり調べてないんだけどほかにもいいのあるのかな?
0226デフォルトの名無しさん2006/02/12(日) 15:51:04
数日前のこと…
219「Team Edition買ってください」
上司「なんでTeam Edition要るねん。もっと安い奴にしとけや」
219「単体テスト、プロファイラ なしでどうやって品質維持するんですか」
上司「StdとかProで十分仕事できるやつなんぼでもおるやろが」
219「いいえそれは何かの間違いです」
上司「ふうん。ほなったら2chとかでリサーチしてみるわ」
219「ええどうぞやってください。仕事で、StdとかProとかと言ったらみんなに藁われますよ」
0227デフォルトの名無しさん2006/02/12(日) 15:54:20
VS2003まではどうやって品質を維持してたのかね
NUnitとか今まで通りに使えばいいんでないの?

新しいものを試してみたいのは分かるけど、業務ならまず実績あるものを使えるようにするのが先決では。
その上で新しいものと比較評価すべきかと思うわけですが。
0228デフォルトの名無しさん2006/02/12(日) 15:55:16
上司「この案件だとコレで十分だ」
つ[ExpressEdition]
0229デフォルトの名無しさん2006/02/12(日) 15:56:35
えーマジPro!! Proが許されるのは趣味グラマまでだよね!
02302152006/02/12(日) 15:56:36
>>216
なんでそんなにキレられてるのかわからんのだが。
exeのloadが早かったら理想的なのになぁ、と思ってるだけだよ。

>重たいロードにも耐えてくれるようなアプリケーションかけないなら
意味がわからん。
共通ランタイムのロードに時間かかってるんだから、こっちで工夫できることじゃないだろ。
スプラッシュウィンドウ表示させるような子供だましな回避策は除く。
0231デフォルトの名無しさん2006/02/12(日) 16:01:07
>>230
スタートアップに入れておく。
02322152006/02/12(日) 16:03:20
>>231
1.Xの時に試したが、すぐに元の状態に戻る。
数分経過するとロードされたランタイムが解放されてるよう。
0233上司2006/02/12(日) 16:03:41
なんだ、Expressでもいいのか。
0234デフォルトの名無しさん2006/02/12(日) 16:05:57
>>232
タスクスケジューラに入れておく。
0235デフォルトの名無しさん2006/02/12(日) 16:08:11
Expressはどこで売ってるのlですか?
0236デフォルトの名無しさん2006/02/12(日) 16:08:35
Proってプロファイラー付いていたと思ったけど。
違う?
02372152006/02/12(日) 16:09:12
>>234
ありえねぇwww
0238デフォルトの名無しさん2006/02/12(日) 16:11:28
そろそろngen厨がくるころか
0239デフォルトの名無しさん2006/02/12(日) 16:12:07
>>237
Microsoft FindFast
常駐秀丸
0240デフォルトの名無しさん2006/02/12(日) 16:13:22
んげn使えばいいy
0241デフォルトの名無しさん2006/02/12(日) 16:17:59
>>226
CppUnitとVTuneで何か問題でも?
0242デフォルトの名無しさん2006/02/12(日) 16:19:33
>>236 ついてない。
0243デフォルトの名無しさん2006/02/12(日) 16:26:17
こんなのあった。使えるか知らん。
ttp://www.compuware.co.jp/products/devpartner/dpsprofiler.html
0244デフォルトの名無しさん2006/02/12(日) 16:26:27
本当だ、付いていない。まじかよ。ひどいな。
http://www.microsoft.com/japan/msdn/howtobuy/vs2005/subscriptions/compare/
0245デフォルトの名無しさん2006/02/12(日) 16:27:54
単体テストはNUnit(ry
プロファイラもサードパーティー製が(ry
ttp://d.hatena.ne.jp/Kazzz/20060105/p2
ttp://d.hatena.ne.jp/Kazzz/20060104/p3

で、TeamEdition って本当に必要なの?
02462192006/02/12(日) 16:28:53
ごめんなさい。工夫次第でいかようにも対応できることを忘れてました。
めんどくさいことは金で解決するようになって久しい・・・。初心忘るるべからずですね。
ム板のみなさん、これからもしっかり工夫してがんばって下さいね。
0247デフォルトの名無しさん2006/02/12(日) 16:33:10
Team Editionを導入すると今の仕事のサイクルに変更(工夫って言うらしいが)が必要
今まはNUniやらNMockやらで流れるようにしてあるんだから今まで通りにするのに工夫なんて不要

新しいものを受け入れる方が手間暇かかると思うんだがどうよ
0248デフォルトの名無しさん2006/02/12(日) 16:35:28
>>247
今ので問題ないんだったらいいんじゃね?
0249デフォルトの名無しさん2006/02/12(日) 16:36:02
単体テストってNUnitだと不都合ある?
0250デフォルトの名無しさん2006/02/12(日) 16:48:29
一応、Microsoft Enterprise Library January 2006のUnitTestsは
VSTSとNUnit両方対応してた。

テストクラスのヘッダでプリプロセッサ使って、それぞれ対応する
プロジェクトファイル作るって感じか。
テストクラスはこんな感じ。

#if !NUNIT
using Microsoft.VisualStudio.TestTools.UnitTesting;
#else
using NUnit.Framework;
using TestClass = NUnit.Framework.TestFixtureAttribute;
using TestInitialize = NUnit.Framework.SetUpAttribute;
using TestCleanup = NUnit.Framework.TearDownAttribute;
using TestMethod = NUnit.Framework.TestAttribute;
#endif

[TestClass]
public class InstrumentationStrategyFixture
{
    [TestMethod]
    public void InstancesWithNamesWillBeAttachedToTheirInstrumentationListeners()
    {
    ......
    Assert.IsTrue(createdObject.IsWired);
    }
}

んで、それぞれ専用のプロジェクトファイルを作ってる。
Common.Tests.VSTS.csproj
Common.Tests.NUnit.csproj
0251デフォルトの名無しさん2006/02/12(日) 16:53:36
私は某外資系に勤めててITだけでも2千人以上の社員がいるけど、2005はPROが標準ツールだよ。
Team SuitなんてDB、サーバ全部、M$製品で無いと性能を発揮できないだろ。
0252デフォルトの名無しさん2006/02/12(日) 16:54:32
>>225
コードカバレッジがよくできてる。
■ このスレッドは過去ログ倉庫に格納されています