people_entries_107 = {
  "title":"自作PCで自宅サーバやってる奴だれだ",
  "description":"自宅にサーバを置いて、さらにはそのサーバまで自作PCなアナタ、出番です",
  "link":"http://www.blogpeople.net/people/entry_107.html",
  "count":50,
  "id":107,
  "category-name":"コンピュータとインターネット/インターネット一般",
  "category-link":"http://www.blogpeople.net/people/subcategory_304.html",
  "category-id":304,
  "banner":"http://www.blogpeople.net/display/people/people00107.jpg",
  "entries":[
    {
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"R-TYPE",
         "excerpt":"しばらく前の話になるが、知人からPS3を買った。PS3はゲーム機としては勿論、メディアステーション的な使い方が出来そうだったので金に余裕ができたら買おうと思っていたのだが、知人の言い値がちょっと魅力的だったので即購入した。とはいうものの、俺はPCゲームのほうが好きだ。だから購入した後はあまりPS3には触っていなかった。ある日、なんとなくPlaystation Storeを物色していると、PCエンジンアーカイブスとかいう奴が目に留まった。中を覗いてみると、イースとかグラデウスとか懐かしいタイトルが並んでいる｡その中に俺がかなりはまったR-TYPEがあるじゃないか。はまったといっても4面までしかクリアしたことがないのだが、ゲーセンでもかなり注ぎ込んだしPCエンジンはこれがやりたくて買ったくらいのタイトルだ。これは買うしかあるまい。価格は800円なのだが、steamとかではもっともっと手の込んだタイトルがもっと安い価格で販売されているわけで、はっきり言って「高いナー」と思う。DLCなんだし、この古さからいったら500円がせいぜいだろ。こんな値付けだからダメなんだよなー、とか思いながらもさっさと決済を済ませてダウンロード開始｡ダウンロードは一瞬で終わった。こんなサイズのゲーム、普通だったら300円コースじゃないのか？ゲームをスタートすると、その画質に少々驚いた｡あの当時は綺麗な部類だと思ったが、今改めて見ると古さは隠せない。しかし、そんな思いもゲームをスタートしたら一気にぶっとんでしまった。やっぱり面白いのである。ゲームの進め方というか攻略方法も体が覚えていて思わず苦笑いだ｡ついうっかり死ぬのも昔と全く変わっていない俺｡全然進歩してないじゃん。ということで、最近はR-TYPEにはまっている俺なのであった｡",
         "link":"http://www.oyajiman.net/oyaji/item-3428.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/12/20 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"2011年10月のブラウザシェア",
         "excerpt":"10月はいつもの月とは大きくログの傾向が変わった。一日あたりのユニークサイト数がいつもより減少したが、なぜかヒット数やページビューは大きく伸びたのだ。変化し始めたのはApacheの脆弱性が騒ぎになったあたりからなのだが、Googleのページ評価基準が変わったとかいう辺りから目に見えて変化した。11月になって以前のような状況に戻りつつあるようにも見えるが、もう少し状況を見ないと何とも言えない。ということで、10月のブラウザシェア、いってみよう[pdf]10月は全体のページビューは増加したので、いつもの傾向どおりIEのシェアが54.4％から51.1％まで落ちた。伸びたのはFXとChrome。特にChromeは8、9月で若干足踏みしたが、相変わらず上昇傾向である。Androidと合わせたGoogle陣営のシェアは17.6％で、20％に到達してFXを抜くのも時間の問題に見える。IE 51.4％（▲3.0％）、FX 20.6％（+2.3％）、chrome 17.6％（+1.7％）、safari 6.0％（▲0.7％）[pdf]ブラウザヴァージョン別では一番伸びたのがFX7だ。しかしこれはFXユーザの中でヴァージョンが変化しただけっぽい。IEでは9.0がちょっとだけシェアを伸ばしたが、他のヴァージョンが軒並み落ちたので9.0の伸びだけでは全体のシェアダウンをカバー出来なかった。FXはもうそろそろヴァージョン別でシェアを見るのがバカらしくなってきたね。上位の個別ブラウザシェアは次のとおり。1位 IE8 26.8％（前月▲3.5％）、2位 IE9 14.8％（前月+1.5％）、3位 FX7 14.7％（前月+13.9％）、4位 chrome 14.4％（前月+1.3％）、5位 safari 6.0％（前月▲0.7％） ",
         "link":"http://www.oyajiman.net/oyaji/item-3386.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/11/06 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"今日は峠小僧？が沢山いた",
         "excerpt":"今日も何故か休みだったし天気も抜群だったので出かける。いつもの峠に行くと、今日は結構な台数が走りに来ていた。休みの日とかはすごい台数が来ていたりするけれど道端にマシンを停めている人のほうが多かったりする。だけど今日はほとんどの人が走っていて「ちょっとヤバイ日にきたなー」という感じ。パッと見た目だけどDucatiが2台、R1、FZ、バンディット？、CBR600RRとか合計で7〜8台は走っていたと思う。特にR1の彼がすごくて、コーナリングを後ろで見ながら（ぶち抜かれた）そのフォームに見とれていた。多分コーナリングスピード自体が5〜10km/h違うって感じ。それでもかなり余裕を持ちながら走っているように見えた。すごいね。そのほかの人たちも危なっかしい感じではなく、それぞれコーナリングを楽しみながら走っている感じ。みんな走るのが好きなんだね。俺ももう少し走っていたかったのだけれど、ガスが無くなったので退散した。最近はバイクに乗る体力が戻ってきたようで、乗っていてもそんなに疲れなくなった。久々に乗るとガックリ来るのが握力と首周り、そして下半身なのだが、握力はほぼ問題なし。首周りもポジションがポジションなので多少は疲れるが、かなり余力を残して帰ってこれるようになった。下半身もそうで、次の日どこかかしら筋肉痛になっていたのが遠い昔のようだ。マシンに乗る体力が戻っただけじゃなく、全体的に体調が良くなった。あのひどかった肩こりも治ってきたし、循環器系もしっかり動いてきている感じ。バイク、特にSSに乗ると下半身をかなり使うので、結果として有酸素運動になっているんじゃないかと思う。マシンを降りると心拍数は100〜120くらいになっているから多分間違いない。毎日乗ったらもっと体調が良くなる気がする。日を空けずにマシンに乗るとものすごく乗りやすいし、ホント、毎日乗りたいね。 ",
         "link":"http://www.oyajiman.net/oyaji/item-3363.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/10/14 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"スティーブ・ジョブスに思う",
         "excerpt":"ここしばらくはいろんなところでスティーブ・ジョブスの話が出てくるんだろう。以下、俺の知っているジョブスの話。多分脳内でおかしな話になっているところもあると思う。ガレージでApple Iを作って売ったらそれなりに売れ、次に作ったApple IIが大当たり。その後そのワンマンぶりがたたってアップルを追い出されNeXTでそれなりにやっていたがあくまでそれなり。追い出したAppleは下降の一途で、アップルはついにこの奇人を呼び戻す。このあたりまで、ジョブスは奇人とか変人と呼ばれていたと記憶している。Appleに戻ったジョブスが出した製品で記憶にあるのがiMac。そのデザインは女の子にも受けるきゃわゆいものだけど、俺には単なるディスプレイ一体型PCにしか見えなかった。その後もAppleから出てくる製品はデザインが秀逸で作りも所有する喜びを満たすものだったと思う。でもこれらも俺には単なる「カッコいいPC」にしか見えなかった。で、ついにあの「iPod」が発売される。USBメモリにちょっとした電源とMP3再生ソフトを入れたようなこの製品はバカ売れした。これはすっげー発想だなと思ったし、なにより使い勝手がバカみたいによかった。ここからAppleの快進撃が始まり、いつの間にか変人奇人と呼ばれていたジョブスはカリスマ経営者になった。俺が「アレ？」と思いはじめたのは多分intelMacが出たあたりからだったと思う。みんなアップルがGooleとかMicrosoftと対抗する企業と思っているけれど、AppleはSonyとかと同じハードウエアメーカーなんだなと改めて思ったのだ。そして、とても魅力的な製品を作りながら、iTuneなどでコンテンツ流通からも利益を作りはじめた。そして次に進出したのが「通信」だ。ジョブスは2007年ころからか癌のせいかどんどん痩せて行った。CEOを辞めるころは「あ、もう長くないな」と感じさせるほどだったと思う。ここ数日、俺はなぜか家の者や会社の部下にジョブスの話をし、そしてついでに「もうすぐ死んじゃうと思うよ」なんて話もしていた。そしたら本当に逝ってしまった。ジョブスはこの「死」から逆算して、自分が死んだ後も永きに渡ってAppleの社員が食べていける基盤を作ろうとしたのではないかと思う。だから一つの製品にとことんこだわり、他の追従を許さない製品に仕上げたかったのだろう。その製品が永きに渡ってAppleに収益をもたらしてくれる仕組みも作った。このあたりは憶測でしかない。しかし、結果だけ見れば社員を幸せにしてくれた経営者だったのだけは間違いないと思う。そしてその功績はしばらく続くんだろう。ため息が出そうなほどすごいなぁと思う。 ",
         "link":"http://www.oyajiman.net/oyaji/item-3356.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/10/07 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"FreeBSD 8.2-RELEASE",
         "excerpt":"再構築終了 久し振りに触ると、忘れちゃってることいっぱい(━＿━) Digest認証でハマった！忘れないようにメモっとこ。 # htdigest -c パスワードファイル &amp;#8216;realm(AuthName)&amp;# [...]",
         "link":"http://www.yumidon.com/?p=2506",
         "blog_name":"Yumidon.com・JF9LGL",
         "date":"2011/09/24 06:58:15"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Cosmos (C# Open Source Managed Operating System)",
         "excerpt":"スラッシュドット・ジャパン デベロッパー - C#言語のみを使って開発されたOS「Cosmos」 の記事で知りました。   &amp;#160;  Codeplexにあるオープンソース プロジェクトです。    C#でOSを作っているという。    ざっと探したところ、2008年1月ぐらいからスタートのようです。    日本語で紹介されている記事をさらっても、最近までほとんど存在しません。     2008-01-31 C#で書かれたOS - あおきのTechメモ     2011-07-09 Cosmosで遊んでみた。 - （Ｕ＾ω＾）わんわんお！ - @linerlockの日記    最新のリリース beta バージョンは、2010年12月29日。    プロジェクトとしては未だ生きているようです。  &amp;#160;  Cosmos以外のC#OSプロジェクト  「あおきのTechメモ」さんによると、Cosmos以外にSingularity、SharpOS があったようだ。     Sigularity             2008年ぐらいで止まっているっぽい。         Singularity - Microsoft Research         Singularity RDK             SharpOS             2009年ぐらいで止まっているっぽい。         SharpOS - Download SharpOS software for free at SourceForge.net            &amp;#160;  いずれも停止しているようなので、Cosmosだけが生き残っている。  時間作って試してみたい。  ⇒ 試してみました（2011/09/11）",
         "link":"http://www.cs-dotnet.com/2011/09/managed-os-cosmos.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/09/11 11:27:35"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Mono 2.10.5 に上げてみた",
         "excerpt":"ひと月ほど前、ゲリラ豪雨と共にやって来た雷による瞬停でにサーバーが逝った。    HDDがアクセスできず、リブートしたらやっぱりダメ。  Debian Etch + Apache2 + mono 2.4でASP.NET 2.0を動かしてたサーバ（Pentium III）なのでとっくに寿命だった。    いつ壊れてもおかしくない為、新PCは用意してあり、今度は高速なPentium 4だ（orz）。     まあ退役したDesktop機の余生なわけです。     WebコンテンツやDBは仮想マシンのステージサーバにあるため、OSその他を入れてコンテンツ アップデートの設定をすれば一気に復旧となるはずだった。     新PCは、OSインストール済みで設定の半分ぐらいで放置されている状況。  ここでチョット欲がでた。    開発環境がVS2010に移行しているのでASP.NET 4.0にした方が今後楽できる。     monoは、去年10月の記事「Mono 2.8 リリース （C# 4.0対応）」にある通り、2.8で.NET Framework 4.0対応している。  &amp;#160;  OSをDebian Squeezeに上げる  既にDebian Etchはセキュリティ アップデートのリリースも終わっているので、このまま使い続ける訳にもいかない。    ここは安定板になっているSqueezeに上げる事にした。  まず、新PCはDebian LennyだったのでSqueezeにアップデート。これはすんなり完了。    ステージサーバは、Deian Etchなので、一旦停止して仮想HDDをコピーでバックアップ。     一気にSqueezeに上げてみたら・・・だめですね。     apt-get dist-upgrade が依存関係でハマって失敗する。  Etch ⇒ Lenny ⇒ Squeeze の順を踏んで上げるべきでした。  バックアップしてあった仮想HDDを上書きコピーして再度順を追ってアップデートで成功でした。  引きづづいてMonoをアップデートする。  ",
         "link":"http://www.cs-dotnet.com/2011/09/mono-2-10-5.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/09/10 21:59:42"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"2011-07-31 VMware Server 2 からの乗り換え",
         "excerpt":"今まで VMware Server 2 を使ってきたのだが、HW一新のため、新たに仮想ホスト+仮想ゲストx? の環境を作る事にした時のメモ新しい機器は、CPUをAtomにしたのだが、このおかげで色々と検討事項が増えてしまったようだ案1) KVM + Virt-manager(SL6)もっともパフォーマンスが良さそうだったので、本命としていたが、Atom には VT系の機能がなく、OSインストール時に仮想関係を全てチェック入れても、仮想マシンを作れなかった案2) VMware Server 2 + ubuntu 8.04「動く」のだが、OSのサポート期間に少々未来がないです...案3) ESXi ServerベースがRHなので、KVMの時と同じ結果に...(?)案4) VirtualBox 4 + ubuntu 10.04ここに落ち着きそうですアップデートを考えると、コマンド一発で管理できるほうが良いですねーレポジトリにvirtualbox用の行を足すことで、一緒に管理できますね------------------------",
         "link":"http://cloudy-moon.blogspot.com/2011/07/2011-07-31-vmware-server-2.html",
         "blog_name":"曇り空と今いるとこ",
         "date":"2011/07/31 22:46:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"SecurityUpdateに久々のMSらしさを見た",
         "excerpt":"ここ数日、Excelの挙動がおかしかった。ローカルのファイルはあっさり開くのだが、ネットワーク上のファイルはサイズがでかいといつまで経っても開かない。この現象は少々不思議な点があって、直接ネットワークからExcelのファイルを開くのはダメなのだが、マクロでネットワーク上のファイルを呼び出して使用する場合とかはあっさりと開く。こういう現象は以前も経験していて、大体はセキュリティソフトの仕業であったりWindows自体のセキュリティアップデート絡みであったりする。今回もおかしくなったのはUpdateを行ってからなので、Windows関連のセキュリティアップデート絡みである可能性が高いと思っていた。ただ、セキュリティアップデート絡みであったとしても、マクロを使えばあっさり開くなんて全然が意味ない。さすがMSだと思った。調べてみるとやはりアップデート関連らしい。にわか管理者からの成長ブログ ネットワーク上のExcelを開くのが重い、遅いネットワークからEXCELファイルを開くのが遅い-大阪府堺市のITサポートExcel 2003にファイルを開けない問題、安全性向上のアドインが原因 - ニュース：ITproOffice File Validation (OFV) アドインがインストールされた Excel 2003 でネットワーク上のファイル共有から XLS ファイルを開く時に時間がかかるなるほど、やっぱりMSか(苦笑)。早速対応してみたが、これがまた困ったチャンだった。まずは問題の「Microsoft Office File Validation Add-In」を削除しようと、プログラムの追加と削除で更新プログラムの表示にチェックマークを入れてみたがそんなのどこにもない。ガビーンである。しょうがないので問題を引き起こしてくれたMS社の対処方法で行くことにした。しかし、この対処方法がなかなか笑えるので転記しておく。方法 1 :ネットワーク上のファイル共有からローカルに XLS ファイルをコピーしてから開く方法 2 :Microsoft Office File Validation Add-in を無効化する EnableOnLoad  レジストリを設定する方法 3 :Excel 2007 または Excel 2010 を使用する 方法1は、なぜネットワーク上にファイルを置くのかというネットワーク自体の存在を否定する方法で素敵だ。方法3に至ってはまさに「論外」。Updateでおかしくしておきながらソフト自体をアップグレードしろってどういうこと？確かに解決策ではあるが・・・で、結局の残された方法はレジストリ設定しかないのだが、これまがまたいい加減な情報で腹がたった。そもそもRegeditで調べても、HKEY_CURRENT_USER&#92;Software&#92;Policies&#92;Microsoft&#92;Office&#92;11.0&#92;なんてレジストリは存在しない。探してみるとHKEY_CURRENT_USER&#92;Software&#92;Policies&#92;Microsoft&#92;Office&#92;11.0&#92;じゃなくてHKEY_CURRENT_USER&#92;Software&#92;Microsoft&#92;Office&#92;11.0&#92;っぽい気がしたのだが、MS社の教えにはきちんと従わなければならないだろうから、このレジストリを作成してみたのだがまったく効果なし。ムカつくー。いい加減な情報書くな！同じような内容がにわか管理者からの成長ブログ ネットワーク上のExcelを開くのが重い、遅いでも書かれていたので、今後はHKEY_CURRENT_USER&#92;Software&#92;Microsoft&#92;Office&#92;11.0&#92;で設定してみると見事に直った。対処方法まで間違えているあたり、アップデート配布から含めて全てOffice2003を使わせないようにするためのMS社の罠じゃないのか？と思った。 ",
         "link":"http://www.oyajiman.net/oyaji/item-3265.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/07/08 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"自宅サーバ停止",
         "excerpt":"節電だもの… Posted from Mobile",
         "link":"http://www.yumidon.com/?p=2483",
         "blog_name":"Yumidon.com・JF9LGL",
         "date":"2011/06/30 09:09:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"ubuntu の SSH は使いにくいのだ",
         "excerpt":"9.10 だけの話ではなく、ubuntu のデフォルトの SSH は、vim-tiny らしいのです。何が問題かと言いますと、ターミナルを起動し、vi コマンドを実行。i キーを押して挿入モードに入ったあと、上下左右のカーソルを押してもカーソルが動かず、A〜Dなどの文字が入力されてしまい、カーソルを移動させることができません。コレは不便!!EeePC 901/XP はSSD の容量が少ないので、可能な限りコンパクトな解決方法を…と探していたところ、やはり vim を入れるのが良いみたい。( vim-full はいろいろと余計?なモノまで入ってしまうのでパス)$ sudo apt-get install vim初期の設定ファイルでは、rootでのログインが有効になっているのでこれを無効にしておく。$ sudo vi /etc/ssh/sshd_config# PermitRootLogin yes ←コメントアウトPermitRootLogin no ←追記$ sudo /etc/init.d/ssh restart   ",
         "link":"http://feedproxy.google.com/~r/Diaryweblog/~3/_-WuGrQ1SfI/20091104000506.php",
         "blog_name":"Diary::Weblog",
         "date":"2011/06/30 06:02:02"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"自宅サーバ停止",
         "excerpt":"節電だもの… Posted from Mobile",
         "link":"http://www.yumidon.com/?p=2477",
         "blog_name":"Yumidon.com・JF9LGL",
         "date":"2011/06/29 23:50:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"ubuntu使うのやめようかなと思った出来事",
         "excerpt":"先日、会社のPCのデスクトップに見慣れないアイコンが出ているのに気がついた。そのアイコンにマウスカーソルを合わせてみると・・・要は手動で更新しろってことだなと思い、アップデートマネージャーを立ち上げて更新しようとしたら、こうなった。なんとまぁ、サポート対象外になっている模様。このシステムは9.04なのだが、こうもあっさりサポート対象外になるとは思っても見なかった。LTSでこれだもんなー。10.04とかに上げちゃうのも手なのだが、以前9.10に上げたらVMwareが動かなくて四苦八苦したので、確認してからでないと少々怖い。それなりの時期が来たらサポート対象外になるのは致し方ないことなのだけれど、それを全面に押し出して「更新しろUpdateしろ」みたいに騒がれるのは苦手だ。こういうところで「UbuntuってFREEなんだけど商用に近いんだよな」と改めて思ってしまう。こんな表示は気にしなければいいし表示させなければいいだけだろという話もあるけれど、表示させない設定にしても毎回出てくる。勘弁して欲しい。自宅のサーバでVine5はVMwareが動くことを確認済なので、超使い慣れたVineに戻ろうかなーとマジ思案中。Ubuntuは色々素敵なんだけど、システムメンテ的な部分にかけられる時間はあまりないし、地デジの案内のようにこういうちょっとしたことからストレスって感じちゃうんだよね。 ",
         "link":"http://www.oyajiman.net/oyaji/item-3231.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/06/05 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Windows Live Writerでページを開けない問題の解決",
         "excerpt":"フォーラムへの質問はクローズしてもらいましたが、まとめておく。  関連記事：  Windows Live Writer 2011からMT5のページ オープンが出来なくなってる -- C#.NETでいく？     WLW2010でページをオープンできるようになったが・・・ -- C#.NETでいく？  経緯  Windows Live Writer 2011からMovable Type 5の既存ページを開けなくなっていた。    開けなくなったタイミングは明確には解らない。     MovableType側は更新していない。WLWも明示的なアップデートはしていない。     Windows Updateは随時行っているので全てインストール済み（現時点で言語パックを除いて）。  記事を開く事は出来ている。    複数台のPCで現象を確認済み。  Windows Live Writerのフォーラムに質問したところ、「Firewallを解除を試して」とのこと。    記事はオープンできているのに・・・と思いつつ試すと開ける！  そのあとはFirewallを有効にしても開けるが、何らかのタイミングでまた再発する。    タイミングはWLWやWindowsの再起動とかではない。  &amp;#160;  回避（解決）方法  Windows FirewallにWindows Live Writerの通信を許可する設定を追加する。  ",
         "link":"http://www.cs-dotnet.com/2011/06/wlw2011-wal-openpage.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/06/04 11:55:18"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Movable Type 5.1 リリース",
         "excerpt":"2011/05/25 付でMovable Type 5.1がリリースされた。  同時に、5.0と4.2のセキュリティ アップデート版がそれぞれ 5.05, 4.29 として公開されている。  ニュースリリース：[重要] Movable Type 5.1 および、5.05、4.29 セキュリティーアップデートの提供を開始 - MovableType.jp  &amp;#160;  セキュリティ アップデートの内容     Movable Type 5.04 および 4.28 を含む以前のバージョンでは、アプリケーション上の入力項目の一部において、適切に入力エスケープ処理されないため、クロスサイトスクリプティング（XSS）および クロスサイトリクエストフォージェリ(CSRF)が発生する可能性があります。Movable Type 4 および Movable Type 5 のすべてのバージョンの、修正版へのアップグレードを強く推奨します。   個人ライセンス向けにも同時にリリースされています。  ",
         "link":"http://www.cs-dotnet.com/2011/05/mt5-1-released.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/05/28 15:36:14"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Windows Live Writer 2011からMT5のページ オープンが出来なくなってる",
         "excerpt":"現在のWLWのバージョンは、Build 15.4.3508.1109だ。    Movable Typeは、version 5.04。    最近の記事を開くで［ページ］を選択すると、一覧は表示される。    ページを選択して［OK］ボタンを押すと例外が発生する。       System.ArgumentException: PostId was not part of the headers fetched      &amp;#160;&amp;#160; 場所 WindowsLive.Writer.PostEditor.RemoteWeblogBlogPostSource.GetPost(String postId)       &amp;#160;&amp;#160; 場所 WindowsLive.Writer.PostEditor.OpenPost.BlogPostListBox.RetrieveSelectedPost()       &amp;#160;&amp;#160; 場所 WindowsLive.Writer.PostEditor.OpenPost.OpenPostForm.AcceptSelectedPost()   最新のページは、3月20日に編集している。  Window Live Essentials 2011をインストールしたのが2010年10月。    （更新プログラムには特に何も表示されない）  MovableType 5.04に更新 -- C#.NETでいく？が2011年1月。  MT側の定義ファイル等を変えた覚えがないので、WLW側が3月20日以降に変わった可能性が高い。  WLWのログを確認してもエラーメッセージ以上の情報は無い。     WindowsLiveWriter,1.2576,None,00026,22-May-2011 18:40:28.955,&quot;Non DisplayableException-derived exception thrown. Subsystems need to handle these exceptions and convert them to WriterExceptions:      System.ArgumentException: PostId was not part of the headers fetched       &amp;#160;&amp;#160; 場所 WindowsLive.Writer.PostEditor.RemoteWeblogBlogPostSource.GetPost(String postId)       &amp;#160;&amp;#160; 場所 WindowsLive.Writer.PostEditor.OpenPost.BlogPostListBox.RetrieveSelectedPost()       &amp;#160;&amp;#160; 場所 WindowsLive.Writer.PostEditor.OpenPost.OpenPostForm.AcceptSelectedPost()&quot;,&quot;&quot;          サーバに置いてあるWLW用のマニフェストファイルも変更していないし。  ",
         "link":"http://www.cs-dotnet.com/2011/05/wlw-mt5-pegeopenerror.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/05/22 19:11:47"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"monoプロジェクトがXamarinとして独立",
         "excerpt":"2011/5/17の記事：『Mono』プロジェクトが新会社 Xamarin として独立 - japan.internet.com     Novell を買収した Attachmate において、『Mono』プロジェクトは終焉を迎えた。そして同プロジェクトの活動は、新たに Xamarin として生まれ変わった。    Mono とは『.NET Framework』互換のオープンソース実装だ。     Attachmate は数週間前、Novell の買収にあたって Mono プロジェクトの開発チームは引き継がない、との決断を下していた。その時点で、開発者やプロジェクトの今後は知る由もなかったが、ようやく明らかになった。   要するに、『MonoプロジェクトをAttachmateが不要と判断したため、mono開発メンバが新会社Xamarinを立ち上げた』という事らしい。  Xamarin - ものがたり にこの解雇が突然だったことが書かれている。  &amp;#160;  Mono創始者のMiguel de Icaza氏、Novellから独立したMono技術ベンチャー立ち上げへ - SourceForge.JP Magazine - オープンソースの話題満載の記事：     Xamarinは、Monoベースの製品に特化した企業となる。これまでde Icaza氏らは米Novell下のMonoチームとして、C#と.NETでiOS向けアプリケーションを作成できる開発環境「MonoTouch」やAndroid向けの「MonoDroid」などを開発してきた。Xamarinはこれを継続するもので、Monoをベースとし、これらとソース互換性のある商用製品を開発する。   Xamarinがmonoと関連製品、特に『iOS』と『Android』分野をターゲットにするのは、monoプロジェクトの成果の継承（派生？）として当然だ。   Xamarinのトップページにそのものが主張されてる：    &amp;#160;  気になるAttachmateとの権利関係についてjapan.internet.comの記事に書かれてる：     Mono はオープンソースのプロジェクトだ。もし Attachmate が商標権を主張し、何らかの基礎となるプロジェクトを自身の手元に置こうと決断しても、Miguel De Icaza 氏の一存でプロジェクトを「派生」させることができる。何が起きるにせよ、Attachmate に勝ち目はなく、オープンソース モデルが勝利を収める。   この通りであれば、monoは名前を変えても存続する事になるのだろう。   たとえ有償であっても、Microsoftが埋められないプラットフォームのサポートがあるのは、C#や.NET Frameworkを開発プラットフォームとして選択する際のポイントとなる。（説得しやすい）  &amp;#160;  今のところ、monoプロジェクトの公式ニュースページ（www.mono-project.com-news）に最新情報は無く、今後バージョンアップされたmonoをこれまでのように気軽に利用できるのかどうかは判らない。  個人的には、できる事ならLinux版のリリースも継続して欲しい。  &amp;#160;  mono関連のまとめページ ⇒ Mono （もう一つの .Net Framework実装）- C#.NETでいく？",
         "link":"http://www.cs-dotnet.com/2011/05/mono-xamarin.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/05/22 10:07:21"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Team Foundation Server 2010 SP1をWindows 7にインストール",
         "excerpt":"Team Foundation Server 2010 SP1 を Windows 7 SP1上に構築して評価してみる。    テスト環境なので、物理層にはSQL Server Express 2008 R2を使用している。    この環境だと、レポート サーバが使えない等の制限がある。  SQL Server 2008 R2 Expressはインストール済み。   ダウンロード：ダウンロード詳細 Microsoft SQL Server 2008 R2 RTM - Express  基本的なインストール手順は、Windows Server 2008 R2上に入れる場合と同じ。    （過去記事は、TFS 2008からの移行の手順になっています。）  &amp;#160;  評価版の入手方法  Visual Studio 2010 や Team Foundation Server 2010 を持っていない場合、評価版をダウンロードしてテストする事が出来る。  Visual Studio 2010 のダウンロード - Microsoft Visual Studio      &amp;#160;  &amp;#160;  TFS 2010をインストール  メディアをセットしてTeam Foundation Server 2010のインストールを開始する。   ［次へ］で進む。  ［次へ］で進む。    ［インストールする機能］が初期状態で×になっていたのでチェックを入れて［インストール］で進む。    ［Team Foundation Server 構成ツールを起動する］のチェックを外して［完了］。  &amp;#160;  SP1のインストール  TFSの構成を始める前にService Pack 1をインストールしておく。  ダウンロードする場合ここから → ダウンロード詳細 Microsoft® Visual Studio Team Foundation Server® 2010 Service Pack 1  TFS2010SP1-KB2182621.exe を実行するとインストーラが起動する。  ［次へ］で進む。  ［次へ］で進む。  ［完了］で進む。  &amp;#160;  Team Foudation Serverの構成  今回はWindows 7上の小規模テスト環境なので、サーバ1台の非AD環境。   SQL Server Expressサービスは起動状態にして構成を開始。  スタートメニューから［Microsoft Team Foundation Server 2010］⇒［Team Foundation Server 管理コンソール］を起動する。    &amp;#160;  管理コンソール    ［アプリケーション層］ノードを選択。   ［インストール済みフィーチャーの構成］をクリック。    ［基本］を選択して、［ウィザードの開始］。    【重要】上段にある［ここをクリックしてください］をクリックして注意点を確認する。     2011/05/22現在では、Team Foundation Server 2010 SP1がリリースされている旨が表示されている。     既にインストール済みなので次に進む。   ［次へ］をクリックして進む。    SQL Server Expressがインストールされていない場合、ここでインストールする事が出来る。   既にインストール済みなので、［次へ］。    SQL Serverのインスタンスは自動的に表示される。［次へ］で進む。    内容を確認して［次へ］。    チェックでエラーが発生し、解消方法が下部に表示される。     コマンド プロンプトで次のコマンドを実行する。     sqlcmd -E -S &quot;サーバーホスト名&#92;SqlExpress&quot; -Q &quot;ALTER LOGIN [サーバーホスト名&#92;ユーザ名] WITH NAME = [サーバーホスト名&#92;ユーザ名]&quot;   ［準備チェックを再実行するには、ここをクリックしてください］をクリックして再チェック。                              今度は成功したので［構成］をクリック。    ［次へ］で進む。    あっけなく正常に構成が完了した。（初代から比べて、ずいぶん簡単になった）    ［閉じる］でいったん閉じる。   アプリケーション層の構成が完了すると、管理コンソールに設定表示される。    スクロールして一通りの設定を確認しておく。    TFSからビルド結果やアラートなどをメールで通知する事が出来るので、これを設定しておく。  ［電子メール通知の設定］の［通知の設定］をクリックしてメール送信の設定を行う。    入力して［OK］を押せば完了。  &amp;#160;  ビルド構成  Team Foundation Serv..",
         "link":"http://www.cs-dotnet.com/2011/05/tfs2010sp1-windows7.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/05/22 08:00:51"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"ブログを開設してから5ヶ月で月間16万PVだと？",
         "excerpt":"ブログを開設してから5ヶ月で月間16万PVを達成するために私が行った3つの戦略と2つの心構えうーん、開設5ヶ月で16万PVかよ。すごいねー。ちなみにここは、WebalizerでカウントしたPVは月間20万以上あるよrobotも含めてだけど。Googleさまに調べてもらうとそのPVの7〜8割がrobot君らしい。まさにrobotのrobotによるrobotのためのサイトって感じ（意味不明）。特にここ1年半くらいは完全に伸び悩みで、こういうことを「頭打ち」と言うんだなとしみじみ思う。かといってアクセスをぐんと増やすような素敵なネタも持ち合わせていないし、バイクを買い換えてからは極度の金欠でPCの改造も出来ない。この改造ネタのカテゴリ[DIYする？]は比較的アクセスを稼いでいたんだけれど、今は完全に昔の名前で出ています状態。かわりにエントリ数が増えたバイクネタ[Bike!Bike!Bike!]はすこしアクセスを稼いでくれているけれど、バイク乗りってのは絶対数が少ないのでアクセス数もそれなりだったりする。バイクを嫌いな人というか毛嫌いしている人も多いだろうし。また、目玉の一つのゲームネタ[Game Fan]も金欠と多忙の影響を受けてエントリに出来るネタなし状態。うーん、このサイトはますます沈むな。アクセス数を増やしたくてサイトを運営しているわけではないのだけれど、サーバ管理も落ち着いちゃってるし全てにおいて少々マンネリぎみなのは確か。だけどこのサーバのOSもかなり古くなっちゃった。CMSのnucleusも新しいバージョンではPHP5でないと動かないようだし、全面的に内部を刷新しないといけない時期に来ているのだけれどなんだかやる気なしモード全開。というか、俺の部屋自体が3.11の震災の後、ちょっとしか片付けていなかったりする。そう、部屋の中はまだ震災直後みたいな感じなんだよwwwつか、休みくれよ。労基に駆け込むぞコノヤローwwwと、自分でもまったく考えていない方向に筆が滑ったのでこの辺でEOF ",
         "link":"http://www.oyajiman.net/oyaji/item-3216.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/05/21 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"SS RX1のHDD故障",
         "excerpt":"Dynabook SS RX1のHDDが壊れた。  Vistaの起動途中でエラーになり、修復も駄目。    一部読みだせそうなので、「ダイナブック(dynabook)をもっと楽しもう！ dynabook SS RX1 HDD換装」を参考にさせて頂いてHDDを取り出しを計画。  この際なので、SSDに変えてみようと思う。    IntelのSSDでこの辺りが値段的にも良いかな。  Intel SSD 320 Series(Postville-Refresh) 2.5inch MLC 9.5mm 120GB ResellerBOX SSDSA2CW120G3K5   &amp;#160;  2011/05/28追記：  SSDが届いたので、さっそくHDDと入れかえました。  交換方法は「ダイナブック(dynabook)をもっと楽しもう！ dynabook SS RX1 HDD換装」そのままなので書きません。  ただ、カード バスからのフレキが繋がっているメイン基板のコネクタを取り外す事が出来ませんでした。   （爪の部分をドライバで避けつつ引いても押しても抜けない・・・）  ",
         "link":"http://www.cs-dotnet.com/2011/05/ss-rx1-hdd-change1.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/05/21 09:19:14"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"肉屋さんって色々あるみたいだよね",
         "excerpt":"殺人ユッケ事件について遅ればせながらクダまくよ｜C.I.L（Charismatic Itabashi Lover）話の真偽はさておいて、俺が知人から聞いた話を少々。肉屋ってのはカルテルというか、まぁそういう類の決めごとがあるらしくて、下手に手を出すと危ないらしいね。その知人は少々大きめな組織の仕入れを担当していたんだけれど、牛肉とかを外国からコンテナ買いしようとしたら怪しげな人間につきまとわれて家の前で待ち伏せまでされたとか言ってた。ほんとかね？と思っていた、今回の件で本当かもなーと・・・今回の食中毒、店舗の責任は当然ながら違う場所で同じ遺伝子の病原菌が見つかっているので、店舗の加工段階以外でも汚染されていた可能性は高い。じゃあどこで汚染されたかだけれども、店舗でないとなれば店舗に納品されるまでの間ということになるのはしごく当然。まぁ、加熱しておけばこういうことにはならなかったし、納入業者も「生で食べられます」なんて保証していたわけでもないだろうから、納入業者に大きな責任があったとは言えないよね。それでも報道とかを見ていると、なんとなく納入業者の件については腫れ物に触るような表現をしているような気がするんだよね。さらにはこの事に対して、この業者が直接コメントしたというような場面も見ていない。なんとなくだけれど、マスコミ側からそっち関係に「ここまで大きくなると報道せざるを得ない。ただし事実だけを簡単に伝えるだけにとどめておく。」なんて話が行っているんだろうなあと思う次第。興味がある人は肉の仕入関係を調べて見れば面白いかもしれんね。おっと、こんな時簡に誰か来たようだ・・・ ",
         "link":"http://www.oyajiman.net/oyaji/item-3206.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/05/11 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"MS Officeには毎度泣かされる",
         "excerpt":"最近このカテゴリに書くこともめっきりなくなってきてしまった。そんな時こんなニュースが飛び込んできた。売り上げも利益もマイクロソフトを凌いだアップル--四半期決算比較企業に元気が感じられないから話題も少ないのかもね。俺の仕事には欠かせないMS Officeだが、俺の使い方や環境が少々特殊なせいもあってまれにおかしなことが起こる。最近よく起こるのがExcelで「ファイルが読み込めません」状態になってしまうことだ。保存した後に再び開こうとするとこのエラーメッセージが出る。これが出るとエラーを回復させてみてもダメな場合がほとんどだ。このエラー、むやみやたらに出るわけではない。というか、普通に使っている場合はほとんどでない。出るのはネットワーク上のExcelとAccessを同時に開いて、データベースを操作しながらExeclを保存するといった、同時にファイル操作が行われた場合に発生するようだ。それも、ExcelはAccessのデータを使ってピボットテーブルを多様している数十MB以上の巨大なファイル、Accessはそのピボットに使うデータの入っているファイルを使っているとかなりの確率で発生する。ただ、これも俺の環境だけかもしれないので実際はよくわからない。俺の環境はベースがLinuxでVMwareで仮想マシンを立ち上げ、内部的にSambaを使ってデータをLinux上のファイルシステムに書き込んでいる。だから純粋にWindowsでネットワークに繋いで使った場合に同じような現象が起きるのかは定かでない。それでもそれなりの時間をかけて作った資料が「ファイルが読み込めません」で使用不可能になるショックはでかい。時間的ロスはもちろんだが、ファイルを保存するタイミングは大体において作業が一段落した場合が多く、泣ける。「ふー、大体出来たかなー」で保存することが多いわけで、その安堵感から一気に奈落の底に落とされるようなものなのである。こういうことがよく起こる時間のロスと精神的なダメージを考えたら、使い勝手が多少悪くてもクラッシュしない製品のほうがいいのかもしれん。OpenOfficeは使い込んでいないのでわからないが、OpenOfficeでもこんなことが起こるのだろうか。 ",
         "link":"http://www.oyajiman.net/oyaji/item-3202.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/05/07 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"尾道市の浄土寺へ行って来ました",
         "excerpt":"浄土寺多宝塔 お久しぶりです。ご無沙汰して申し訳ありません。この４月に県立博物館に転勤になり、ばたばたしていたもので、すっかり更新がおろそかになってしまいました。さて、先日連休を利用して、尾道市の浄土寺へ行って来ました。この寺院は聖徳太子により建立されたという伝承を持つ古刹で、古くは鎌倉時代の文献にも登場します。宗派は真言宗です。境内には国宝に指定されている本堂・多宝塔があるほか、阿弥陀堂、宝篋印塔、それに本尊の十一面観音立像は国の重要文化財となっています。さらに庭園は国の名勝に指定されており、これらをあわせた中世寺院の景観を色濃く伝えるものです。さて、写真の多宝塔は鎌倉時代末頃（1328年）に建立されたと伝えられます。美しい和様の多宝塔で、特に２楷部分の幾重にも重なる斗栱（ときょう）は見事です。写真ではわかりにくのですが、１階部分の蟇股（かえるまた）には美しい透かし彫りが彫刻されていて、見所の一つと言えるでしょう。さて、ここ尾道は中世海上交通の要衝でした。この浄土寺では室町時代には今川了俊が九州に遠征の途中で数ヶ月も立ち寄ったことが知られていて、軍事的な拠点でもありました。ほぼ同時期に書かれた「兵庫北関入舩納帳」によれば、尾道から「金」すなわち鉄が畿内へと運ばれていたことがわかっていて、尾道が鉄の生産地である中国山地山間部と瀬戸内とをつなぐ接点であったことが想像されます。浄土寺における多数の宝物や伽藍もこうした瀬戸内海交易によりもたらされる富を前提にしていたことは想像に難くはありません。浄土寺は中世における瀬戸内海交易の繁栄を今に伝えるよすがなのでしょう。 ・・・全然話はかわりますが、WordPress３系列でPHP4のサポートが終了するようです。というわけで、このページのテーマを大幅にかきなおさなければいけません。まだまだ仕事が落ち着かないもので、もう少ししたらこのサイトのテーマ変更も含めて取り組みたいと思います。",
         "link":"http://skarabrae.homelinux.org/?p=1100",
         "blog_name":"skarabrae.homelinux.org",
         "date":"2011/05/05 07:31:52"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"WordPress 3.1.1",
         "excerpt":"Only the geeks know What half this stuff even means Don’t worry ? update とにかくアップグレード ！って事ですね(o￣∇￣)/ バージョン 3.1  [...]",
         "link":"http://www.yumidon.com/?p=2306",
         "blog_name":"Yumidon.com・JF9LGL",
         "date":"2011/04/09 09:58:31"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"mod_pagespeedで高速化できるか",
         "excerpt":"&amp;#160;  前記事の続き。   「サイト パフォーマンス向上やってみるか」で、Page Speed for Chromeを使いサイト パフォーマンス上の指摘を受けた。    &amp;#160;  Googleの「ブラウザのキャッシュを活用する」の説明「Optimizing cache」をつらつら読んでいたら、mod_pagespeed Filters なる物に気付いた。  &amp;#160;  「mod_pagepeed Filters」ページの説明を見る限り、名前の通りApache用のフィルタらしい。  大雑把に大体、こんな事をやってくれるようだ。     小さくする    複数のファイルを結合する    キャッシュの寿命を延ばす   &amp;#160;  個々の項目を調整するのも大事だがフィルタ一発で改善するなら、試したくなるのは人情です。   （少し面倒くさくなった訳じゃないんだからね）  &amp;#160;  さっそくGoogleで先達の努力の結晶を探す：     安楽網録- 関西オープンソース2010のどおでもいい話      mod_pagespeedはメモリを馬鹿喰いするらしい。          あなたのサイトも最高2倍速に？！Google純正のサイト高速化モジュール『mod_pagespeed』だと・・・ - IDEA-IDEA      mod_pagespeed ON/OFFを並べた動画がある。          さくらのVPSにGoogleのmod_pagespeed入れてみた --ハブろぐ      インストールの説明がある。公開鍵でつまずいたらしい。          mod_pagespeedを試してみる « kwLog          mod_pagespeed をちょっとだけ試してみた - 酒日記 はてな支店      Ubuntuに入れた記録   &amp;#160;  CPUパワーは喰われるが、そこそこ速くなりそう という感触。  サポート プラットフォーム：     CentOS/Fedora (32-bit and 64-bit)     Debian/Ubuntu (32-bit and 64-bit)     Apache 2.2   &amp;#160;    mod_pagespeed 入れてみるか  インストール先は、Debian Squeeze。  ダウンロードはここから→Page Speed Downloads     wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-beta_current_i386.deb    dpkg -i mod-pagespeed-beta_current_i386.deb    /etc/init.d/apache2 restart   インストールはあっさり終了。（しかし、思えば、ここから意外と時間が掛かった。）  &amp;#160;  先に最適化の結果から：    スコア 73 ⇒ 80 です。（右側はFirefox 71 ⇒ 73 辛っ）  mod_pagespeedだけでは上手く行かず、試行錯誤してみたがCSSの自動統合には至っていない。  実際早くなったか？   早くなった感じはする。  &amp;#160;  以下試行錯誤の記録  ",
         "link":"http://www.cs-dotnet.com/2011/03/mod-pagespeed.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/03/27 20:37:12"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Windows 7 SP1 関連 不具合情報",
         "excerpt":"前記事「Windows 7 SP1 が2011-2-23にリリースと不具合情報」では、Windows 7 SP1インストール時の不具合について書きました。  今回は開発用PCにWindows 7 SP1をインストールした際の問題についてです。     （2011/3/21現在、調べて分かっている問題だけです）  &amp;#160;  KB2517589:ADOを使用しているアプリケーションの再コンパイルで互換性に問題が発生する  KB2517589で情報が公開されています。  「An ADO application that is re-compiled on a Windows 7 Service Pack 1-based computer does not run」（マイクロソフト サポート オンライン）  &amp;#160;  概要：  Windows 7 SP1をインストール済みのPCで、ADOを使用したアプリケーションを再コンパイルした場合、生成したプログラムはWindows 7 SP1以上の環境でないと動作しない。（Vista、XPも含む）  具体的には次のようなエラーが発生する：     REGDB_E_CLASSNOTREG (0x80040154)     E_POINTER (0x80004003)     E_NOINTERFACE (0x80004002)     Unable to cast COM object of type &#39;System.__ComObject&#39; to interface type &#39;ADODB.Connection&#39;. This operation failed because the QueryInterface call on the COM component for the interface with IID &#39;{00001550-0000-0010-8000-00AA006D2EA4}&#39; failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).”      --日本語のメッセージは解りません--    &amp;#160;  既に、日本語で分かり易く解説されているブログを見つけました。    KB2517589では何故下位互換がなくなると説明しているか - 新日々此何有哉（2011/3/18）  &amp;#160;  フォーラムでの議論：     Windows7 SP1とVB6で不具合 - Microsoft Answers（日本語）     Breaking change in MDAC ADODB COM components in Windows 7 Service Pack 1（英語）    &amp;#160;  試してみる：  VB6やVC++の環境が無いので、VS2010 C#で試す。  英語のフォーラムにあった簡単なVBの再現コードをC#に直してみた。  using System;using System.Collections.Generic;using System.Text;namespace AdoTest{class Program{static void Main(string[] args){ADODB.Connection cn ;object o;o = new ADODB.Connection();if (o == null)Console.WriteLine(&quot;connection is null.&quot;);elseConsole.WriteLine(((ADODB.Connection)o).Version.ToString());cn = (ADODB.Connection)o ;}}}ADOの参照設定は、Version6にしておく。このアプリケーションを Windows XP SP3にコピーして実行すると、確かにエラーになる。  エラー内容：     Unhandled Exception: System.InvalidCastException: Unable to cast COM object of type &#39;ADODB.ConnectionClass&#39; to interface type &#39;ADODB._Connection&#39;. This operation failed because the QueryInterface call on the COM component for the interface with IID &#39;{00001550-0000-0010-8000-00AA006D2EA4}&#39; failed due to the following..",
         "link":"http://www.cs-dotnet.com/2011/03/win7-sp1-breaking-changes.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/03/23 06:41:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Windows 7 SP1 が2011/2/23にリリースと不具合情報",
         "excerpt":"Windows 7 と Windows Server 2008 R2 の初のサービスパックが2011/2/23にリリースされている。    東北関東大震災とそれに続く計画停電でエントリを書くのをすっかり忘れていた。  手近の環境にはスグに入れてあり、大きな問題は出ていない。   導入済みの環境：     Windows 7 Ultimate 32bit     Windows 7 Ultimate 64bit     Windows 7 Enterprise 32bit     Windows Server 2008 R2 64bit    インストール方法 公式：「Windows 7 Service Pack 1 (SP1) をインストールする方法」（日本マイクロソフト）  &amp;#160;  個人的には、次の点が気になっている。     視覚効果の「ドラッグ中にウィンドウの内容を表示する」の動作がおかしい                   この選択が勝手にOffになったり、Onなのに枠だけドラッグの状態になったりする。       上部のラジオ ボタンの選択状態には依存せず発生する。（パフォーマンスを優先するは試していない）           使用メモリが増加した気がする（定量的ではない）      Internet Explorer 9によるメモリ・リソース リークや、Chromeのバージョンアップ、VS2010 SP1等を同時期に更新しているためWindows 7 SP1 単体で評価できない。       タスク マネージャで見る使用メモリ使用率での評価なので、それの計算法が変わった可能性もある。    &amp;#160;  SP1での変更点は？  はっきり言って今更だが・・・     Windows 7 SP1      バグ フィックスが主で機能追加は基本的に無い。       基本的な対応として、第2世代 Core iシリーズのIntel AVX命令への対応が含まれている。           Windows Server 2008 R2 SP1      詳しくはこの辺り⇒【仮想化道場】 Windows Server 2008 R2 SP1の新機能〜RemoteFXとDynamic MemoryによりVDI環境は進化する -クラウド Watch              Dymamic Memory によるHyper-Vの機能向上         RemoteFXによるDirectX 9cのサポート            &amp;#160;  &amp;#160;  現状で分かっている不具合（１）（2011/3/20現在）  「一部ユーザーが『Windows 7 SP1』のインストールで不具合 - japan.internet.com」記事にあるように、一部環境で再起動時にハングするという不具合が発生しているようである。  &amp;#160;  現象としては、SP1をインストール時に再起動すると黒い画面で “0xc0000034” が表示されるというもの。     !! 0xc0000034 !! 142/53007 (_0000000000000000.cdf-ms)   対処法は「Your computer may freeze or restart to a black screen that has a &quot;0xc0000034&quot; error message after you install Windows 7 Service Pack 1 or a Windows Vista service pack」 に記述されている。  &amp;#160;  一般向けは、システム復元を行う方法。  上級者向けは、日本語と英語で内容が異なっているので注意が必要だ。     日本語の記事は、「文書番号: 975484 - 最終更新日: 2011年3月11日 - リビジョン: 1.1」     英語の記事は、「Article ID: 975484 - Last Review: March 16, 2011 - Revision: 2.3」    &amp;#160;  英語の記事の方が新しいので、そちらの手順の方が良いのだろう。     VBスクリプトを稼働しているPCで作成してUSBメモリにいれ、不具合PCに指して回復オプションを使用する方法になっている。    普通に考えて面倒（というか危険）な手順になっているし、発生条件も記述されていない。      回避策で終わらせるのか、恒久対策を行うのかについても記述されていない。    かなり稀な症状なのだろうか？      私は運よく遭遇していないので試していません。  &amp;#160;  長くなったので、（２）は次回。（開発者向けの情報「An ADO application that is re-co..",
         "link":"http://www.cs-dotnet.com/2011/03/windows7-sp1-released.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/03/20 20:05:35"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Mono （もう一つの .Net Framework実装）",
         "excerpt":"mono関連の記事のまとめページ。  &amp;#160;  monoとは  monoは、Microsoft社が開発したアプリケーションの開発及び実行環境である .NET Framework の互換環境で、現在はNovelが主導している。  .NET Framework 自体はWindows XP以降のWindowsに対応しているが、monoはそれに加えて、Linux, FreeBSD, Mac OS X などで動作する。  &amp;#160;  互換性は？  全般的には、Windows上のVisual Studioでビルドした実行モジュール（EXEファイル）をそのまま実行開始できる程度の互換性。   互換性が無い部分では例外等が発生する。  CLS準拠（CLSCompliantAttribute(true)が付いている）アセンブリであれば、そこそこ動作する。  &amp;#160;  また、FileSystemの違い等を最低限意識してコーディングしておく必要がある。   たとえば、string.Format(@&quot;c:&#92;abc&#92;{0}&quot;, fileName) とかはダメ。 Path.Combine等で結合等の配慮は必要だ。    もちろんP/Invokeはだめ。  つまり、マルチ プラットフォームを意識したコーディングをする必要がある。  公式サイトの互換性ページは⇒ http://www.mono-project.com/Compatibility  &amp;#160;  Mono 2.8での、非互換のフレームワーク     WPF    EntityFramework    WF   Mono 2.8での、制限付のフレームワーク     WCF   &amp;#160;  WinForm等のGUIの互換性  微妙かも知れない。   簡易なWinFormのプログラムをVisualStudio上で作成し、DebianのGNOME上で動作させた時の再現性や速度面は「一応動く」という感じで快適というわけにはいかない。  ただし、これは仮想マシン上で行ったテストなので実マシンでは異なるかもしれない。  &amp;#160;  WPFの互換性  WPFについては現在のところ対応する予定が無いようだ。  &amp;#160;  ASP.NETの互換性  Apache2とmod_monoで動作させることが出来る。   Mono 2.4になって、かなり互換性が取れてきて安定的に動くようになってきた。  &amp;#160;  既存プログラムの互換性を確認する方法は？  MoMA（Mono Migration Analyzer）と呼ばれるプログラムが公開されています。   既存プログラム（アセンブリ）を指定して、mono上での動作可能性をレポートしてくれます。  MoMAは、.NET Framework 2.0以降か、Mono 1.2以降で動作する。  &amp;#160;  mono公式サイト  monoってなに？という方は → 「Mono (ソフトウェア) - Wikipedia」    Main Page - Mono  ",
         "link":"http://www.cs-dotnet.com/mono-frontpage.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/03/20 18:22:22"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"ブログ（自宅サーバ）の一時停止",
         "excerpt":"おはようございます。節電のため、自宅サーバを停止したいと思います。断続的に停止していましたが、今夜から一日中停止にしようと思います。ともなって、このブログも見れなくなります。節電の必要がなくなった際には復活させる予定です。",
         "link":"http://kiki.blogdns.net/archives/2011/03/post-297.html",
         "blog_name":"KIKI :: GOLFとゴルフを楽しむページ",
         "date":"2011/03/16 06:37:56"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Firefox4.0 rc1を使ってみた",
         "excerpt":"Firefox4.0 rc1がリリースされている。早速インストールしてみた。rc版ということもあって今まで入れていたプラグインの一部は対応していない。これはお約束だね。結論から言えば「おすすめ」だねこれは。使ってみて最初に「お？」と思うのは、やはりタブの位置が一番上に来たことだろう。FX4はこのデザインになるらしいと聞いていたのでさほど驚きはしなかったが、使ってみると思った以上にしっくり来る。全然違和感がないというか、非常に理にかなったデザイン変更に感じる。サイトにアクセスして感じるのはその速さ。立ち上がりはFX3.6と大差なく特段速いとは思えないが、立ち上がった後のブラウジングはかなり速くなったように感じる。chromeも確かに速いが、クリックした後の表示はFX4.0の方が切れ味が良いように思える。ベンチマークしたわけではないので正確なところはなんとも言えないが、FX3.6よりは段違いに速い。試しにceleron400Mhz+Windows2000という「いつの時代のマシンだよ」というPCにFX4.0rc1を入れてみたが、画面全体が表示されるスピードは確実に上がっているようだ。こりゃ素晴らしい。今のところVMwareのプラグインがまだ対応していないので会社のLinux版の導入はもう少し待たなければならないが、Windowsマシンは全てFX4に入れ替えることにした。これはブラウザシェアの調査でFX4の項目を増やさないとダメだね。 ",
         "link":"http://www.oyajiman.net/oyaji/item-3149.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/03/11 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"WordPress 3.1アップデート",
         "excerpt":"このYumidon.comで使用してるWordPressも最新版、3.1にアップデートしました。 えっと・・・どこが変わったんだろ。 ログインした状態で画面上部に『管理者バー』が登場してる(*^^)v &amp;#160; &amp;#038;n [...]",
         "link":"http://www.yumidon.com/?p=2201",
         "blog_name":"Yumidon.com・JF9LGL",
         "date":"2011/02/28 22:14:46"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"TFS2010ビルド テンプレートのカスタマイズ（3） TF215097対処",
         "excerpt":"前回は、Team Foundationビルドの”ビルド テンプレート”をカスタマイズしたが、ビルド実行してみるとTF215097エラーになった。  ビルド テンプレートの編集はVisual Studio 2010のワークフロー デザイナで行い、独自DLL内のアクティビティを追加したものです。  今回は、TF215097の解決方法を調べる。  &amp;#160;  TF215097 エラーとは？  今のところMSDNには公式情報は見つからない。（MSDN内で検索するとフォーラム内のポストは見つかる）  今回のエラーのメッセージ：     TF215097: ビルド定義 &#92;BuildCustomTest&#92;MyCustomBuild のビルドの初期化中にエラーが発生しました: 不明な型 &#39;{clr-namespace:CustomBuildActivity}MyBuildActivity&#39; を作成できません。   TF215097が、ビルドの初期化エラーのコードなのか、不明な型のエラーのコードなのかは分からない。  メッセージとしては、独自追加したアクティビティのクラスが見つからないと言っている。   &amp;#160;  ビルド エージェントに設定が必要  Visual Studio 2010上でTeam FoudationビルドでのDLL参照を設定できるUIは見つからない。  サーバーで、”Team Foundation Server 管理コンソール”を確認すると項目が見つかった。    ビルド コントローラの［プロパティ］を表示すると、［カスタム アセンブリのバージョン コントロール パス］の設定がある。    カスタム アセンブリでMSDN:「ビルド コントローラーの作成と使用」に説明されている。     このフィールドを使用すると、以下の種類のアセンブリをビルドで利用できます。                カスタム ワークフロー アクティビティを含むアセンブリ                  カスタム MSBuild タスク            このフィールドで指定したフォルダーの下位にある任意のフォルダーに、この種類のコードをチェックインできます。   つまり、カスタム ワークフロー アクティビティをビルド定義に追加した場合、ビルド コントローラにソース管理上のパスを指定する必要がある。  ただ、1つのビルド コントローラに対して1つのパスしか指定する事が出来ない。    複数の”ビルド テンプレート”を複数の”チーム プロジェクト”で共有する場合も同じフォルダを使用する事になる。  いくつか管理方法を考えてみる：     ビルド テンプレート毎にサブフォルダを作成する       カスタム アセンブリが参照する共有DLLがある場合、各サブフォルダにチェックインする必要がある。       共有DLLに変更が発生した場合にチェックイン忘れが発生しそうだ。           複数のカスタム アセンブリを指定フォルダに入れる       カスタム アセンブリが参照する共有DLLも同じフォルダになるので、チェックインの手間も少なくなる。       ただし、変更時の影響範囲が大きくなる。           ソース管理のルート”$/”を指定する        どこにでも置くことが出来るようになるが、カスタム アセンブリの検索に時間がかかりそう。       また、万一異なるフォルダにDLLが存在した場合、どれが使われるか不明となる（ビルドエラーの解消が大変）    今回は2番目の方法でいく。    フォルダは専用に作成した方が良いが、今回は自動作成されたビルド プロセステン プレートのソース管理パスを使用する。    &amp;#160;     チーム プロジェクトを分岐した場合も、同一フォルダのカスタム アセンブリが使用される事となる。    従って将来カスタム ワークフロー アクティビティの処理を変更する場合、参照しているビルド テンプレート全てに適用するなら単純にチェックインすればよい。      そうではない場合、出来るだけ ビルド テンプレートのパラメータとビルド定義のパラメータを追加することで対処することを考える。       （ビルド テンプレートのパラメータは初期値が指定できる為、古いビルド定義は編集する必要がなくなり、新しい動作とするビルド定義のみパラメータを変更すればよい）   &amp;#160;  カスタム ワークフロー アクティビティを含むアセンブリをチェックイン  ビルド済みのDLLを上で指定したソース管理パスにチェックインする必要がある。  ”CustomBuildActivity&quot;プロジェクトをリリース ビルドする。  プロジェクトのフォルダをエクスプローラで開き、bin&#92;Release フォルダから［..",
         "link":"http://www.cs-dotnet.com/2011/02/tfs2010-build-template-4.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/02/13 17:25:04"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Debian 6.0 Squeeze が2/6に安定板に",
         "excerpt":"http://www.debian.org/ のニュース リリース「Debian 6.0 Squeeze released」によると、2011/2/6にSqueezeが安定板としてリリースされていました。  Debian Orgのページも更新されて、すっきりして見易くなっています。     右上のダウンロードのリンクをクリックすると、いきなりnetinstのisoのダウンロードが始まります（約412MB）。  6.0の特徴はニュース リリースのページに書かれています。  個人的には、SqueezeはEtchの初期と違って非常に安定してる感覚があります。   既にこのサーバもSqueezeになっていて大きな問題や余分な手間がかかったりすることはありません。    （GUIは使わず、Xもインストールしていませんが）  bootがGRUB2になって、設定方法が変わったのが一番戸惑ったところでしょうか。   それ以外は、HDDのデバイス名がhdaからsdaに変わったぐらいでしょう。  とりあえず、6.0無事リリースおめでとうございます。",
         "link":"http://www.cs-dotnet.com/2011/02/debian-60-released.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/02/12 22:26:14"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"サーバ ダウン",
         "excerpt":"気付いたのは、先週の金曜日2月4日。    TFSの設定のため、自分の記事を見ようとしたがアクセスできなかった。GIP変更に追従出来なかったのかと調べたが通知が無く、別サイトに記録しているステータス情報も更新されていない。    このサーバは離れた場所に設置していて見てもらうにも、ひと手間かかる（実家に置いてあるようなもの）。  そうは言っても放置もできないのでPCの状態を確認してもらうと、電源は入っているしディスクアクセスもあるようだ。    ただ、コンソール ログインもキー入力がエコーされない状態。  色々試すも結局リセットを行い復旧した。    一通りのパスワードの変更だけ行っておいた。  今週は調べる時間も取れずに踏み台等にされていないか焦っていたが、やっと診ることができた。  &amp;#160;  問題の発生は2月2日  まずは、一通りのログとCRON等の設定を確認。    すぐ解るような改変は無くひと安心。  HotSaNICの問題発生の日を確認してみる。    CPUやswap、CPU FAN等でピークが出ている。  以下のグラフは、システム負荷、CPU使用率およびネットワーク トラフィックを表している。  システム負荷：      CPU使用率：      ネットワーク トラフィック：      CPU使用率のグラフが分かりやすいが、2月2日に急激に負荷がかかり、隙間（この間は再起動等はしていない）がいくつかあって2月6日に通常に戻っている。ネットワーク トラフィックは、システムが応答できなくなった為か逆に低くなっている。  2月2日の夜に何か起こっているはずだ。  &amp;#160;  あえて言うならコメント スパムか  最初に見つけたのはvsftpdへのアクセス。CNのIPアドレスから侵入の試みが大量に来ている。     ログインに成功したものはなく、しかも2月2日には攻撃は無い。  SMTPサーバにもアクセスが来ているが、外部アドレスからの送信は許可していないので接続できていない。     vsftpdと同様に2月2日が特別多いわけではない。  あとはApacheのログ。     CGIアクセスによる負荷を想定してログを確認したが、2月2日に特別なピークがでない。       このブログはMovableType 5を使用している。     MovableTypeにもいくつかCGIがあるが、トラックバック スパムもコメント スパムも最近減っているので気にしていなかったが、コメントを処理する mt-comments.cgi のアクセスを確認したところピークが出た。  2月1日〜12日の総アクセス数とmt-comments.cgiへのアクセス：    （赤のコメント スパム アクセス数は右軸）  通常アクセス数が多い週ナカは事実上サービスが停止していたため、ゼロに近くなっている。  更に詳しく分析すると、mt-comments.cgiへのアクセスの山は、2月2日（水）の19時56分37秒に来ている。    その前後15秒間に最大20 Req./sec の襲撃を受けていたようだ。  秒間20リクエストを1分に満たない時間、累積200リクエストも耐えられなかったのだろうか？    確かに中古のおんぼろPCだけど・・・・  これ以上はリクエストの中身や各POST要求の接続時間等を調べる必要がある。  &amp;#160;  アクセス元のIPはいろいろ  アクセス元のIPはproxyかもしれませんが、 US, CA, RU, CN, PH, MU, HK, ・・・と多く、それぞれ１〜数回を短時間叩きに来ている。  同じ時刻に世界中から来るようになってきたんですね〜 以前とは全然違います。  &amp;#160;  だいぶ前に画像認証やら組み入れたので、実際に届くコメント スパムは今回を含めて1つもありませんが、本当にコメント スパムが原因でサービスが事実上停止したのかまだ確信できてません。  分かっているのは、     CPU負荷が非常に高い     スワップも発生している     ネットワーク負荷は低い     コンソール ログインもままならない     crontab、/etc/cron.* にはおかしな物は登録されていない     現在は以前の状態に戻っている    という事。  自分で攻撃してみれば確かめられるが、復旧が面倒すぎるので悩みどころ。  &amp;#160;  よくよく考えたらコメントはTypePadにしてた  色々考えたが、コメント処理をTypePadに移行したので、mt-comments.cgi は要らないはずだ。  というわけでmt-comments.cgiを削除。  コメント入力を試すとOK。  mt-comment.cgiが必要なのは、かなり古い記事のはずなので、そこはゴメンナサイをしておきます。   最近の記事で..",
         "link":"http://www.cs-dotnet.com/2011/02/server-down.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/02/12 21:11:46"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"このサイトはxen on debian squeezeで運用中です",
         "excerpt":"えーと、最近かなりこのサイトを見られない期間があったかと思いますが、lenny&lt;squeezeのアップデートにかなりてこずってまして。素直にアップデートしたところ、KMSの問題でintel855GMEでのXen kernel使用時にXの起動がうまくいかず、Domain0をssh経由で操作していたためかなり設定に手間取りました。おまけに、reiserfsの使用に起因するんじゃないかと考えた謎のフリーズが頻発し（ログがうまく残ってなかったのです）、諦めて再インストールしたためここまで時間がかかりました。すいません。で、いい加減intel855GMEには苦しめられたので、ビデオカードをnvidia geforce　fx6200搭載モデルに換装しました。ところが今度はデフォルトの2.6.32 kernelの使用時にgdm3の立ち上がりでこける（泣）。ただ、システムはフリーズしない（リモートからのssh接続を受け付ける）のでKMSの問題ではないと思うのですが。ちなみにこっちはxen kernelでは問題なくXの起動に成功しました。gdm3の起動時にこけて、Xorgのlogにまったくエラーが出ていないところを見ると、どっちとも言えないのが現状です。あと、xenのdomainUの設定ファイル内にあるrootを指定するデバイス名が変わってましたね。＜変更前＞﻿root       = &amp;#8216;/dev/sda2 ro&amp;#8217;＜変更後＞root        = &amp;#8216;/dev/xvda2 ro&amp;#8217;xen 4.0アップデートに伴う仕様変更？に伴うものと思うんですけど、squeeze上でxen-toolsを使って作成したdomainUの設定ファイルも﻿変更前のままだった。まぁ修正すればよいのだけど、domain U 起動時に&amp;#8221;/&amp;#8221;が見つけられなくてshに落ちたときは正直参った。-cを付けてdomainUを起動し、busy boxを使って/devを覗いてみました。すると/dev/xvdaが生成されているに気がついたため、難を逃れることができました。よかったよかった。&lt;追記&gt;デバイスファイル名の変更はリリースノートに記述がありました。xenではなく、kernelの仕様変更によるもののようです。以下、抜粋。squeeze の2.6.32 Xen カーネルは forward-port された Xenlinux パッチにかわって pvops を使っています。そのため、squeeze では、domU はハードディスクのデバイス名として(例えば) sda1 を 使うことができません。pvops ではこの 命名規約が使えないからです。かわりに、(例の続きとして) xvda1 を使わなくてはなりせん。こちらの表記は Xen カーネルの古い方と新しい方、両方で互換性が あります。とりあえず、ここまで。あとdomain 0上でsambaとbaculaの設定するので、できたころにまとめて顛末を報告します。",
         "link":"http://skarabrae.homelinux.org/?p=1029",
         "blog_name":"skarabrae.homelinux.org",
         "date":"2011/02/12 09:49:42"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Operation FlashPoint DR日本語化",
         "excerpt":"少し前にsteamでセールされていたOperation Flashpoint:Dragon Rising。かなり安かったのでとりあえず購入しておいた。先日Bioshockをとりあえずコンプリートしたので、次はこれだ。このゲームは今までの奴と違って、設定ファイルを少々いじるだけですぐ日本語化されてしまうようだ。なのでやり方は超簡単。詳しくは日本語化 - Operation Flashpoint ： Dragon Rising (PC) Wikiを参照のこと。以下はsteamで購入した奴の日本語化のやり方だ。1、設定ファイルをとりあえずバックアップsteam版設定ファイルはC:&#92;Program Files&#92;Steam&#92;steamapps&#92;common&#92;operation flashpoint dragon rising&#92;data&#92;config_sku.datパッケージ版はC:&#92;Program Files&#92;Codemasters&#92;OF Dragon Rising&#92;data&#92;config_sku.dat（注：以上はデフォルトでインストールした場合。当然ながら自分のインストールした状況で変わってくる。）上記ファイルをコピペしておく。2、設定ファイルをエディタなどで開く。とりあえずメモ帳で開けばOK。3、必要な箇所を変更する&lt;property name = &quot;language0&quot; value = &quot;en&quot; /&gt;　　　↓&lt;property name = &quot;language0&quot; value = &quot;jp&quot; /&gt;&lt;property name = &quot;defaultLanguage&quot; value = &quot;en&quot; /&gt;　　　↓&lt;property name = &quot;defaultLanguage&quot; value = &quot;jp&quot; /&gt;なんとこれだけ。これだけで見事日本語化される。日本語でメニュー表示[拡大]当然ながら字幕も日本語化[拡大]これは楽チンだね。 ",
         "link":"http://www.oyajiman.net/oyaji/item-3112.html",
         "blog_name":"おやじまんのだめだこりゃ日記",
         "date":"2011/02/02 23:00:00"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"TFS2010ビルド テンプレートのカスタマイズ（2）",
         "excerpt":"前回はビルド テンプレートを新規に作成してTeam Foundation ビルドが成功することを確認した。  今回は、作成したビルド テンプレートの中身を確認して、独自のワークフロー アクティビティを追加してみる。  &amp;#160;  ビルド テンプレートを取得  作成したビルド テンプレートはソース管理に登録されているが、ローカルには無い状態になっている。    まずは、ソース管理エクスプローラで最新版を取得する。  ソース管理エクスプローラを開き、”$/BuildCustomTest/BuildProcessTemplates”を展開する。    ”MyBuildProcessTemplate.xaml”を選択して［最新バージョンの取得］を実行する。    このままダブルクリックすると、ワークフロー デザイナが表示されて確認・編集出来る。     自前のアクティビティを使用する場合はアクティビティを含んだDLLをGACに登録する必要がある。      （ツールボックスに表示されるようにするため。XAMLをテキストエディタで直接編集する場合は必要ない。）       GACに登録する方法をとると、別の開発マシンでもビルド テンプレートの編集時にGACに登録しなければエラーが表示されてしまう。    これらの回避の為、今回は自前のアクティビティを生成するワークフロー アクティビティ プロジェクトにビルド テンプレートを追加して編集する。   &amp;#160;   アクティビティ プロジェクトにビルド テンプレートを追加する  ［CustomBuildActivity］プロジェクトのノードを選択して、［追加］→［既存の項目］を実行する。  フィルタを”XAMLファイル”に変更して、上で取得した”MyBuildProcessTemplate.xaml”を選択して［追加］を行う。    （ローカルマシン上のファイルパスが分からない場合、ソース管理エクスプローラに［ローカル パス］としてリンクが表示されている）     都合上、”MyBuildProcessTemplate.xaml”とはソース管理上別ファイルとなるため、 ”$/BuildCustomTest/BuildProcessTemplates” はソース管理から削除しておく方がよい。    ここでは、プロジェクトに追加した方を別名に変更する。 （むしろ最初から、プロジェクトのフォルダに生成すればよかった。）   プロジェクトに追加された ”MyBuildProcessTemplate.xaml” を ”MyCustomBuildProcessTemplate.xaml” に名前変更する。    ”MyCustomBuildProcessTemplate.xaml” をダブルクリックで開いて内容を見てみる。  &amp;#160;  ビルド テンプレートのワークフローを確認する  ワークフロー デザイナで ”MyCustomBuildProcessTemplate.xaml” を開き［全て折りたたみ］したのが次の図。    シーケンシャル ワークフローで構成されていて、4つのアクティビティに分かれている。     ビルドの取得     格納場所の更新     エージェントで実行     CheckInSerlveset ビルド      ゲート チェックインを行っている場合のシェルブセットのチェックイン処理部分。    以外とシンプルに見えるが、ビルドの取得以外の中身は盛りだくさんになっている。  ［エージェントで実行］部分がコンパイル等のメイン処理になっている。ダブルクリックで中身を開く。    &amp;#160;  この部分も大きく4つのアクティビティで構成されている。  最後の［変更セットと作業項目のコンパイル、テスト、および関連付けを試す］部分で、ビルド定義に指定されているプロジェクトを順にビルドする。  全てのビルドが成功した際に何らかの処理を行うのなら、この中の都合の良い部分にカスタム処理を挿入する。  Team Foundation ServerおよびWFに付属の標準のアクティビティを使用してカスタマイズする場合は特に問題はない。    プロセスを起動するだけならばTFS付属のアクティビティに”InvokeProcess”ある。    （TFS2008の時はそれだけでも大層な仕掛けが必要だったけど・・・）  &amp;#160;  &amp;#160;  独自アクティビティを追加  自前のアクティビティを追加してみる。    （この辺りでネット上にはあまり情報がまだ無いので試行錯誤になるかもしれない）  ［エージェントで実行］を開き［変更セットと作業項目のコンパイル、テスト、および関連付けを試す］の最終段に先に作成した”MyBuildAcitivity”を追加する。  ”CustomBu..",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-build-template-3.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/16 03:23:04"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Webメール構築",
         "excerpt":"久し振りに、自宅サーバをいじってみる^_^; IS０３でyumidon.comのメールを受信するのにK-9 Mailを使っていたんですが・・・ フォルダ管理できないしなぁ。必要な時だけメール見れれば良い訳で。 いっそのこ",
         "link":"http://www.yumidon.com/?p=2013",
         "blog_name":"Yumidon.com・JF9LGL",
         "date":"2011/01/11 20:03:03"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"TFS2010ビルド テンプレートのカスタマイズ（1）",
         "excerpt":"前回は新規チーム プロジェクトを作成してビルド定義の内容を確認した。  ビルドテスト用のチーム プロジェクト”BuildCustomTest”にプロジェクトを作り、Team Foundationビルドを試す。     先にお詫びしておくと、WFは全然手を出していなかったので多分に間違っている可能性があります。      ビルド テンプレートが ”ワークフロー XAML” になっているため、判らないながら進めます。       間違いや良い方法がありましたら、ご指摘をお願いいたします。   &amp;#160;  プロジェクトの作成とチェックイン  VS2010を起動して、新規プロジェクトを作成する。    後で使えるようにWorkflowの中の［アクティビティ ライブラリ］テンプレートを使用。    名前：”CustomBuildActivity&quot;    場所は、ワークスペースのBuildCustomTestにしておく。  ［OK］でプロジェクトを作成すると、ソース管理にも登録される。    &amp;#160;  ソリューション エクスプローラにはアクティビティ ”Acitity1.xaml” が追加されている。    &amp;#160;  ”Acitity1.xaml” アクティビティは削除してコード アクティビティを追加しておく。    後で見つけやすくするため、名前を”MyBuildActivity.cs”にしておく。［追加］で作成される。    とりあえず、アクティビティの中身はいじらずにそのままビルド。  成功したら、［ソリューション エクスプローラ］の［ソリューション ノード］を選択して［チェックイン］を実行。ソース管理に登録する。    これでTeam Foundation ビルドを定義することが出来ます。  &amp;#160;  新規ビルド定義の作成  チーム エクスプローラを開いて［ビルド］ノードを選択、    ［ビルド定義の新規作成］を実行する。  全般タブ：名前を”MyCustomBuild”に変更する  ビルドの規定値：ビルド コントローラとしてTFS2010を選択。ビルドの出力先をサーバ上の共有フォルダを指定  プロセス：ビルド プロセス テンプレートの詳細を開き、［新規作成］ボタンを押す。新しいファイル名を”MyBuildProcessTemplate.xaml”に変更して［OK］を押す    この時点で”MyBuildProcessTemplate.xaml”は、ソース管理に登録されている。    MyCustomBuildを保存すると、チーム エクスプローラの［ビルド］ノード下に表示される。    以上で標準のビルド定義が出来上がった。  &amp;#160;  ビルドの実行  ［MyCustomBuild］ノード選択して［新しいビルドをキューに配置］を実行する。       デフォルトのまま、［キューに配置］で進める。  ビルド エクスプローラが表示される。    ビルドが成功すると、緑のチェックマークが付く。    ビルドの出力先に指定したフォルダに生成物が配置されます。    以上で、カスタマイズ前のビルド テンプレートが正しく動作する事が確認できました。  次回は、作成したビルド テンプレートの中身を確認、独自アクティビティを追加します。",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-build-template-2.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/10 17:36:19"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"新規プロジェクトのビルド テンプレート（TFS2010）",
         "excerpt":"TFS2010のTeam Foundation ビルドのカスタマイズをする前に、まずは標準のビルド テンプレートを確認してみる。    最終的にTFS2008から移行したプロジェクトでMSBuildカスタマイズを2010方式に移行するのが目的だ。  TFS2010で新規にチーム プロジェクトを作成して2008と比較しながら、プロセス定義を中心にビルド テンプレートを確認する。  &amp;#160;  新しいプロジェクトの作成  ［チーム エクスプローラ］でルートノードを選択して［新しいチーム プロジェクト...］を実行する。    チーム プロジェクト名に”BuildCustomTest”として［次へ＞］で進む。    テンプレートに［MSF for CMMI Process Improvement v5.0］を選択して［次へ＞］で進む。    デフォルトのまま［次へ＞］で進む。    デフォルトのまま［次へ＞］で進む。    ［完了］で進む。    ［閉じる］で作成完了（チーム プロジェクトの作成自体はTFS2008と殆ど同じですね）  チーム エクスプローラに作成したプロジェクトが表示されます。    &amp;#160;  ビルド定義作成  まずは、デフォルトのビルド定義を作成してTFS2010での基本的な設定を確認する。  ［ビルド］ノードを選択して［ビルド定義の新規作成...］を実行する。    ［全般］、［トリガー］、［ワークスペース］、［アイテム保存ポリシー］はデフォルトのままとする。  ［ビルドの規定値］の設定    ビルド コントローラを選択する。また、出力フォルダに共有フォルダを設定する。    ここまでは、TFS2008と同じ。  いよいよ核心のプロセスの設定をみる。  ［プロセス］：    全く変わってますね。  ちなみに下図はTFS2008の対応する［プロジェクト ファイル］画面。    前記事「TFS2010のチーム ビルド（自動ビルド）」に書きましたが、これが今回調べる中心項目です。  &amp;#160;  プロセスの各項目  右ペインの上部に簡単な説明があります。       ”Team Foundation ビルドは Windows Workflow（XAML）ファイルで定義されているビルド プロセス テンプレートを使用します。このテンプレートの動作は、選択したテンプレートで提供されるビルド プロセス パラメーターを設定することでカスタマイズできます。”   分解すると・・・     ”TFSBuild.proj”は使わなくなって、”ビルド プロセス テンプレート”を使うようになりました     ”ビルド プロセス テンプレート”はXAMLで記述しますよ     テンプレートは選択することが出来ます（←カスタマイズできます）     テンプレートにパラメータを持たせてビルド定義で指定することが出来ます（←簡単なカスタマイズならテンプレートをいじらなくてできる）    &amp;#160;  ビルド プロセス テンプレート  説明の下に［ビルド プロセス テンプレート］の設定があります。    詳細を表示すると次のようになる。    &amp;#160;  ビルド プロセス ファイルの選択肢：    初期状態では3つ選択できるようになっている。    （TFS2008からのアップグレード インストールをしていない場合、アップグレード テンプレートは無いかもしれません。）  ソース管理の”BuildProcessTemplates&quot;フォルダを確認すると、対応する3つのXAMLファイルが存在する。    独自のテンプレートを作成してここに置く事でも選択が可能となる。  &amp;#160;  ［新規作成...］でビルド プロセス ファイルの新規作成か既存ファイルの選択ができる。       ［既存のXAMLファイルをコピー］       ソース管理に存在するXAMLファイルをコピーして新たなテンプレートを作ることができる。       新たなテンプレートを作成してカスタマイズする場合に使用する。           ［既存のXAMLファイルを選択］       新規作成というボタン テキストに騙されてしまうが、ここで別チーム プロジェクトのビルド プロセス ファイルを選択することが出来る。       つまり、複数チーム プロジェクトでビルド プロセスを共有することが可能となっている。       TFS2010が画期的に異なる点だ。       ビルド プロセス テンプレートの変更は１カ所だけで済む。       （TFS2008では、MSBuildのターゲットを共有しようと思うと変更の反映が大変だった。）    &amp;#160;  ［最新の情報に更新］ボタンは、ソース管理に直接ファイルを追加した場合に使用する。    追加したXAM..",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-build-template-1.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/10 12:11:31"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"ドメイン更新しました（2回目）",
         "excerpt":"cs-dotnet.comは、二年前の2009年1月にVALUE DOMAINで取得しました。   短くてC#と.NETを表すドメイン名が空いてなかったので、ハイフン付きにしたのを覚えています。  それ以前は、j-speedの無料DDNSでサブドメインとして公開していましたが、その頃システム終了してしまいました。  毎年年初に更新処理というのも新年になった気がして悪くないです。   更新料は1年間で約&#92;1,000と安いです。  更新料分ぐらいアフェリエイトで入ると嬉しいかなと思ってましたが、そう甘くはありませんね。  今年は、Visual Studio 2010 + Team Foundation Server 2010に全面移行を考えています。    新規インストールからの情報は結構あるのですが、TFS2008からの移行の情報があまりなくて困ってます。    少しずつでも調べていきます。  &amp;#160;  自宅PCはいまだにPen4なので、今年こそ脱却してCore i7で置き換えを計画。（本日から新シリーズ発売だっけか）  モバイルもEM・ONEからスマートフォンに変えるかな。   Windows Phoneが日本で出ないのでちょっと残念。    このままだとAndroid 2.3端末になりそうです。  個人的には、情報機器アップグレードの年に決定！",
         "link":"http://www.cs-dotnet.com/2011/01/domain-update.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/10 09:48:10"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"TFS2010のチーム ビルド（自動ビルド）",
         "excerpt":"Team Foudation Server 2010 ビルド システムの概要から調べてみる。    TFS2008から大きく変わっているようだ。  &amp;#160;  呼び方が違う？！  まず、呼び名が異なる。     TFS2008までは、「チーム ビルド」と呼ばれていた。       → 例）MSDN:「Team Foundation チーム ビルドの要件」           TFS2010から「Team Foundation ビルド」になっている。       → 例）MSDN：「Team Foundation ビルドの構成と管理」    ちなみに「自動ビルド」という呼び方は、MSDNの中にも幾らか使われている。特にVisualStudio上でのビルド操作との相違を強調したい場合に記述されるようだ。   本ブログでは、TFS2010に関しては”Team Foundation ビルド”と呼びそれ以前の「チーム ビルド」と区別する。  &amp;#160;  ビルド システムの構成は同じに見える  「ビルド コントローラ」と「ビルド エージェント」の2層で構成されている。      チーム ビルドをTFS本体とは別にインストールする必要があるのも変わっていないが、構成に関わる点の違いが１つある。  2010では、ビルド定義にタグ付けしてビルド エージェントへの振り分けを制御することが出来るようになっている。    以前のバージョンでは、チーム プロジェクト毎にエージェントがあった。（プロジェクト作成時に指定？だったかな・・・ビルド定義毎に指定はできる）       &amp;#160;  ビルド プロセス定義は大きく違う  ビルドシステムはTFSのバージョンが上がるたびに変わる物のようだ。    2005はDevEnvで、2008でビルド プロジェクトとMSBuildになって、今回は上位がWorkflowでバイナリ生成部分がMSBuildという構成になっている。  カスタマイズ性の向上と多彩なビルド＆テストを制御できる構造に変わってきている。  ビルト プロセス定義の違いの取っ掛かり：                       TFS2008        TFS2010                  ビルド プロセス定義パス        $/プロジェクト/TeamBuildTypes        $/プロジェクト/BuildProcessTemplates                  ビルト タイプ        TeamBuildTypes/任意名        なし                  ビルド プロジェクト        TFSBuild.proj        なし            ビルド プロセス テンプレート        なし        BuildProcessTemplates/任意名          ”DefaultTemplate.xaml”がデフォルト           ”UpgradeTemplate.xaml”はアップグレードしたプロジェクト用                  ビルド定義と関連        ビルド タイプのソース管理パスを指定        ビルド プロセス テンプレートを指定                  カスタマイズ例        TFSBuild.projで独自のビルド ターゲット（MSBuild定義ファイル）を指定する。          独自ビルド ターゲットはTFS標準のターゲットをオーバーライドするように記述していく。           ビルド ステップの理解と記述が難解。        ”DefaultTemplate.xaml”をコピーして独自のビルド プロセス テンプレートを作成する。          ワークフローXAMLの為VS2010のワークフロー デザイナで編集することが出来る。           デザイナ操作性を我慢できれば、ビルドのステップを直感的に理解できるし、編集も簡単。                  DLLレベルの処理の追加        Team Foundation Serverに付属のクラスライブラリ内のTaskクラスから派生させた独自クラスを作成。          ビルド ターゲットでインポートして呼び出す。           DLLはビルドタイプのフォルダにチェックインする。        WFプロジェクトを作成して、普通のActivityとしてコーディングが可能。（操作対象がTFSである場合を除けば、TFS専用知識は殆どいらない）          WFの知識は必要。                  チーム プロジェクト間のビルド プロセスの共有        出来ない（もし..",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-team-build-overview.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/09 17:34:54"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"TFS移行後、まずは自動ビルドを止める",
         "excerpt":"前回TFS2008からTFS2010に移行でチームビルドの構成を完了している。     設定が上手くいった場合、既に自動ビルドが「トリガー」待ちしているはず。  残念な事に、各チーム プロジェクトのビルド定義は移行前のマシンの設定のままになっている。     ビルド エージェントの指定はTFS2008の時のままですし、ビルド定義やビルド ターゲットにサーバ名や各種パスの指定も移行前の状態。  このまま、トリガーが発生したらTFS2008のビルド エージェントにリクエストが飛ばされてしまう。  従って、全てのビルド定義を見直すまでは、自動ビルドを止めておくのが良いと思う。  &amp;#160;  自動ビルドを止めるには  Team Foundation Server 管理コンソールを起動して、左のツリーから［ビルド構成］を選択する。    右ペインの上部でビルド サービスの制御が出来る。  ［中止(S)］をクリックしてビルド サービスを停止する。    ビルド コントローラとビルド エージェントも［停止］状態になる。  これで、自動ビルドは停止する。  移行したビルド定義はアップグレード用のビルド テンプレートが適用されている。   移行した場合、新規に作成したビルド定義と動作が異なっているため、自動ビルドの解説記事等と動作が異なるので注意しなければならない。  &amp;#160;  プロジェクトのビルド定義を無効に設定する  次に、ビルド サービスが起動した時に勝手にビルドが走らないようにするため、各プロジェクトのビルド定義を無効にしておく必要がある。    Visual Studio 2010で操作を行う。  VS2010を起動してチーム エクスプローラを開き、移行したTFS2010に接続する。移行に成功したチーム プロジェクトのうち自動ビルドを設定しているプロジェクトをすべて選択する。  &amp;#160;  各チーム プロジェクトの［ビルド］ノードを開き、含まれている全てのビルド定義を順に無効に設定する。  ”ビルド定義を無効”にするには、対象のビルド定義を選択して［ビルド定義の編集］を実行する。  編集画面で［全般］項目の最下に［このビルド定義を無効にする（新しいビルドをキューに配置しない）］チェック ボックスがあるのでONにする。    保存すれば、チーム エクスプローラのビルド定義のアイコンが進入禁止に変わる。    面倒ではあるが、おかしなビルドを行わない為に全部無効にしておく。  &amp;#160;  これで、勝手にビルドが始まることはない。  次に、TFS2010 ビルドシステムの変更点を簡単に確認する。",
         "link":"http://www.cs-dotnet.com/2011/01/stop-automatic-build.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/09 12:37:24"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Team Foundation Server 2010 の再インストール（3）",
         "excerpt":"Team Foundation ビルドサービスの構成を行います。    （前回はTeam Foundation Application Serverのアップグレードを行いました。）  &amp;#160;  ビルドサービスの構成は比較的簡単にできるので楽です。  引き続き［Team Foundation Server 構成センター］で操作を行います。  &amp;#160;       左のリストで［Team Foundation ビルド サービスの構成］をクリックして、［ウィザードの開始］で進む。       ［次へ］で進む       ［次へ］で進む       ［ビルド サービスをスケール アウトする］を選択し、［次のリソース プール（ビルド コントローラー）に次の容量を追加］で”＜新しいビルド コントローラーの作成＞”を選択する。     ［次へ］で進む    ［ユーザー アカウントを使用する］を選択、アカウント名とパスワードにドメインのアカウントを指定する。     ［次へ］で進む     通常はシステム アカウントで良いのでしょう。      チーム ビルドをカスタマイズして外部リソースへアクセスする場合、ドメイン アカウントの方が制御がしやすくなる。   &amp;#160;       ［次へ］で進む       ［構成］で進む       ［次へ］で進む       ［閉じる］で終了    以上でTeam Foundation Server 2008から2010へのフレームワーク部分の移行は完了。  実際には、プロセステンプレートの更新や、チームビルド設定変更、各プロジェクトのアップグレード等やることはあります。  &amp;#160;  TFS2010のチームビルドに関しては、MSDN：ビルド エージェントの作成と使用に説明があります。  &amp;#160;  構成が完了しので、まずは自動ビルドを止める。",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-reinstall-3.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/04 09:46:22"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Team Foundation Server 2010 の再インストール（2）",
         "excerpt":"前回はアンインストール後データベース作成からTFSをインストールしてパッチを当てるところまで行った。  やっとアップグレード処理に進む。     本記事は、インストールガイドに従っていません。参考とする場合は自己責任でお願いします。   &amp;#160;  Team Foundation Server 構成ツール  インストールの最終ステップで構成ツールの起動をOFFで[完了]したため、手動で起動する必要がある。［スタート］メニューから［すべてのプログラム］→［Microsoft Team Foundation Server 2010］→［Team Foundation 管理コンソール］を実行する。  管理コンソールが起動したら、［アプリケーション層］を選択する。    右ペインにある［インストール済みフィーチャーの構成］をクリックする。  Team Foundation Server構成センターが表示される。     左側のリストで、［アップグレード］を選択する。    ［ウィザードの開始］で進む。  アップグレード ウィザードが表示される。    ［次へ］で進む。     余談ですが、ようこそページの［ここをクリックしてください］をクリックして開いて表示される英語のWebサイトをちゃんと読めばパッチを当てる必要があることが分かったのですね。        ”As of 6/18, there is a patch that fixes a critical upgrade bug and it can be downloaded here: http://code.msdn.microsoft.com/KB2135068 plase install this patch before installation but before configuration. ”    TFSのインストールは昔から注意深くやってますが、これは気づかないですよ（泣）        ［SQL Server インスタンス］にデータベース インスタンス名を設定して、［利用可能なデータベースの一覧表示］リンクをクリックする。     ［データベース］に”TfsIntegration”が表示されればOK。     バックアップはあるので［現在のバックアップがある場合は、このボックスをオンにする］をONにする。     ［次へ］で進む。       ［ユーザー アカウントを使用する］を選択してアカウント名（ドメイン&#92;TFSSERVICE）とパスワードを設定する。       ［次へ］で進む。       ［次へ］で進む。       ［次へ］で進む。       ［SQL Server Analysis Services のインスタンス］にデータベース インスタンス名まで含めて設定し、［テスト］のリンクをクリックする。     ［次へ］で進む。       ［アカウント名］にドメインのTFSREPORTSアカウントとパスワードも設定し、［テスト］のリンクをクリックする。     ［次へ］で進む。       ［次へ］で進む。       ［次へ］で進む。       ［次へ］で進む。       ［次へ＞］で進む。       全てOKであれば［構成］で進む。     SharePoint製品がエラーの場合、前記事の最後の項目「SharePointの設定」を再度確認する。       全て完了したら、［次へ］       すべて終了するまで待たない場合は、［閉じる］で終了。       全て完了したら、［次へ］       これでアップグレードは完了した、［閉じる］で終了。  次回はチームビルドの構成  &amp;#160;  参考     Team Foundation Server に関するまとめページ ",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-reinstall-2.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/04 09:00:38"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Team Foundation Server 2010 の再インストール（1）",
         "excerpt":"アンインストールに引き続き、再度TFSをインストールする。  経緯：     一度、「Visual Studio 2010 用 Team Foundation インストール ガイド」に従ってTFS 2008からアップデートを行った。       上手く行っているように見えたが、TFS2010のアップデート処理の不具合情報を見つけて再度やり直しとなった。       このため、IIS 7.0、SQL Server 2008 R2 64bitがインストールされている状態になっている。   本記事は、インストールガイドに従っていません。参考とする場合は自己責任でお願いします。  &amp;#160;  システム構成  Team Foundation Serverを2008から2010に移行するに伴い、より高速なPCに移行する。    履歴は無視して最新ソースだけ持っていく場合はTFSを新規インストールしてプロジェクトを作成しなおした方がスッキリするが、履歴も含めて2010に移行するのが今回の目的。    要件：     TFS2008 から TFS2010 に移行する     シングルサーバ構成（ビルドマシンだけ後から追加予定）     TFS2008（32bit版） と TFS2010（64bit版） は異なるマシンとなる。     TFS2008のバックアップは作成済み     TFS2008用のデータベースは[デフォルト インスタンス]を使用     TFS2010用のデータベースは[名前付き インスタンス]を使用     インストール作業はTFSSETUP（ドメイン アカウント）で行う     TFSで使用する各種サービス アカウントは作成済み    &amp;#160;  TFS用のデータベース インスタンスの作成  コントロールパネルの「プログラムと機能」から ”Microsoft SQL Server 2008 R2（64 ビット）” をダブルクリック。    [追加]を選択。     セットアップ サポート ルール：[OK]で進む。     セットアップ サポートファイル：[インストール]で進む。     セットアップ サポート ルール：[次へ＞]で進む。     プロダクト キー：プロダクト キーを設定して[次へ＞]で進む。     ライセンス条項：良く読んで同意する場合はチェックボックスをONにして[次へ＞]で進む。     セットアップロール：[SQL Server 機能のインストール]を選んで[次へ＞]で進む。     機能の選択：[共通機能]は最初のインストール時にインストール済みなため、選択状態は変えない。       [インスタンス機能]は、次の4つを選択する。              [次へ＞]で進む。     インストール ルール：[次へ＞]で進む。     インスタンス構成：名前付きインスタンスでインストールする。（インストールガイドでは何方でも可）      設定例：              TFSのデータベースは、数100GBになる（規模によってはもっと）ため、システム ドライブ以外の大容量パーティションに作ることにしている。       名前付きインスタンスにするのは、他のDBと分離して管理を楽にするため。       [次へ＞]で進む。     必要なディスク容量：[次へ＞]で進む。     サーバーの構成：NETWORK SERVICEアカウントで動作するように構成する（ガイドと同じ）      [すべての SQL Server サービスで同じアカウントを使用する] をクリックして、「NT AUTHORITY&#92;NETWORK SERVICE」を選択、パスワードは空のまま。スタートアップの種類を全て「自動」に変更する。              [次へ＞]で進む。     データベース エンジンの構成：Windows認証モードを選択。      現在のユーザを追加して[次へ＞]で進む。     Analysis Services の構成：現在のユーザを追加して[次へ＞]で進む。     Reporting Serviceの構成：[ネイティブ モードの既存の構成をインストールする]を選択して[次へ＞]で進む。     エラーレポート：お好みに設定して[次へ＞]で進む。     インストール構成ルール：[次へ＞]で進む。     インストールの準備完了：[インストール]で進む。     完了：[閉じる]で終了    &amp;#160;  SharePoint Services 3.0をインストール  Servie Pack 2が含まれているものをダウンロードしてインストールを行う。  ダウンロードの詳細 - Windows SharePoint Services 3.0 x64 (Service Pa..",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-reinstall-1.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/04 08:50:54"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"TFS2010のアンインストール",
         "excerpt":"Team Foundation Server 2010への移行が失敗したので、再トライのためアンインストールを行う。    ヘルプやMSDN等でアンインストール方法の説明が見当たらなかったので、想像で実施。  （2010へのアップデートが失敗したので、DBを消して再度入れる必要がある。）  &amp;#160;  TFS2010のアンインストール  コントロールパネルの「プログラムと機能」からアンインストールする。     Micorosoft Team Foundation Server 2010 - 日本語      メンテナンス モードで起動するので削除を実行する。      ”Micorosoft Team Foundation Server 2010 オブジェクト モデル - 日本語”はVisual Studioと一緒にインストールされたものなので無視する。          Microsoft Windows SharePoint Services 3.0       TFS用のデータベースを削除してすっきり出直したいので、SharePointも一度アンインストールする。   この2つのアンインストールで大丈夫だと思われる。   Team Buildの配置フォルダ等もExplorerで削除しておく。  &amp;#160;  データベース インスタンスの削除  中途半端に情報が残るとハマるのでSQL Serverのデータベース インスタンスを削除する。   （TFSとSharePointの情報を一気に削除するため）  コントロールパネルの「プログラムと機能」からアンインストールする。     Microsoft SQL Server 2008 R2（64 ビット）      最初のダイアログで[削除]を選択する。      インスタンスの選択で、「TFS用のDB」を選択する。      機能の選択で、共通機能以外にチェックを入れる。      [次へ]で進めて削除を実行する。   これで、データベースインスタンスは消えた。  DBのデータファイルは残っているので、Explorerで削除しておく。  &amp;#160;  一応再起動  システムに矛盾が無いか確認の為、一度再起動してイベントログの様子を見る。  問題無さそうである。",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-uninstall.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/03 13:17:12"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Team Foundation Server 2010 SP1 はまだ？",
         "excerpt":"前記事にあるようなアップデートの不具合が修正されているかどうか確認できないが、とりあえずSP1のベータ版は2010/12/03付で公開されている。  MSDN:ダウンロードの詳細 - Visual Studio Team Foundation Server 2010 SP1 Beta  リリースノートには、ほとんど何も有効な情報はない。  &amp;#160;  InfoQ- ずっと必要だったVS 2010のサービスパックがほぼ完成（2010年12月13日）によると、SP1はほぼ完成しているらしい。  &amp;#160;  情報元のbharry&#39;s WebLogをの記事「VS-TFS 2010 SP1 Beta has Released」にある代表的な修正リストのSetupカテゴリにもKB2135068に該当しそうな項目は含まれていない。  Admin, Ops and Setup     Add a tool to enable starting a service host if it is stopped     Upgrade from Orcas fails if @@SERVERNAME is NULL     Patch fails to install correctly if the configuration database is being mirrored     Installing a patch fails if one of the collections is not available   &amp;#160;  しかし、Setup以外の修正リストを見ているとSP1のリリースが待ち遠しくなる。  .Net Framework 4.0とVisual Studio 2010のSP1も同時に出るようだ。",
         "link":"http://www.cs-dotnet.com/2011/01/tfs-2010-sp1-beta.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/03 11:37:03"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Team Foundation Server 2010への移行時の注意（KB2135068）",
         "excerpt":"どうも今更情報ではありますが・・・自分が見事に引っかかったので。SP1に修正が含まれている事祈りつつ。  &amp;#160;  MSDNのページ「Team Foundation Server のアップグレード」に重要な情報があります。     注意    以前のバージョンの Team Foundation Server からアップグレードするユーザー向けの重要な通知    Team Foundation Server 2010 のインストール後、構成プロセスを開始する前に、次の更新プログラムを適用する必要があります。 この更新プログラムによって、バージョン管理のラベルおよびマージのアップグレードに影響する、バージョン管理操作の特定のパターンが原因で発生する問題を防止できます。 この更新プログラムをダウンロードするには、Microsoft Web サイトの次のページを参照してください。 詳細については、「マイクロソフト サポート オンライン」を参照してください。   不具合の詳細については、MSDNに情報があります。    （自動翻訳された日本語版は意味不明なので英語版をリンクしてあります）  MSDN:KB2135068の詳細「After you upgrade to TFS 2010, labels are missing items or merge operations perform incorrectly」（英語）  &amp;#160;  パッチのダウンロードはこちら。ただしx86版しかありません。（x64で使えるかどうかは不明）  KB2135068 - Labeled items and merge targets missing after upgrade to TFS2010 - Release- KB213506  &amp;#160;  パッチはTFS2010をインストールして、構成（アップグレード処理）を行う前に行う必要がある！    （アップグレード処理でラベル情報がおかしくなるので、問題が発生してからでは遅い）  &amp;#160;  発生する現象     アップグレード前に作成されたラベルは、ファイルやフォルダが表示されません。ラベルは、完全に空にかもしれません。     Visual Studioのマージウィザードは、指定されたソースパス/ブランチのすべての有効なマージ ターゲットを表示しません。     マージ中に、すでにアップグレードする前にマージされた変更をマージの候補として表示します。    原因     If a label that was upgraded to 2010 was applied to an item that was renamed at some point in its history, that label will be missing its contents if the labeled version is not the exact changeset in which the rename occurred. These missing items are the result of an incorrect translation of item IDs during the upgrade to the 2010 version.         Any items on a branch that have been renamed multiple times or have had multiple other items occupy their namespace (through add/delete combinations) will have lost their relationships with the corresponding items on other branches. If the item that was renamed was the root of a merge operation (the branch root), the missing relationship will result in the absence of one or more merge targets in the merge wizard. If merging is done through the command line, a message will be returned that states that there is no merge relationship. For renaming of items below the root of the merge operation, the merge wizard w..",
         "link":"http://www.cs-dotnet.com/2011/01/tfs-kb2135068.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/03 09:25:42"
    },{
         "entry_url":"http://www.blogpeople.net/people/entry_107.html",
         "title":"Tfs2008&amp;rarr;Tfs2010 チームポータルの移行",
         "excerpt":"Team Foundation Server 2008 を 2010に移行した際にチームポータルが表示されない現象が発生した。     1/4追記：     移行方法に誤りがありました。       また、KB2135068のパッチを当てていないのでソース管理のデータがおかしくなっています。       正しいと思われる手順は「Team Foundation Server 2010 の再インストール」記事にまとめました。       この手順であれば、プロジェクト ポータルは最初から正しく表示されます。（レポートも有効状態）          TFS 2010 は別マシンとして構築している。  大雑把に次のような移行手順を行った。    （Windows Updateは随時実施している）     TFS 2010 マシンのOSとしてWindows Server 2008 R2をインストール     SQL Server 2008 R2をインストール     Sharepoint Services 3.0 sp付きをインストール     TFS 2008 の DBをバックアップ     バックアップしたDBをTFS 2010で復元     Team Foundation Serverをインストール（アップグレードモード）     Team Foundation Server 管理コンソールで構成を設定（エラー発生）     Reporting Serviceの設定     SharePointの設定とサイト作成     再度Team Foundation Server 管理コンソールで設定（OK）    ここまでやって、Visual Studio 2010でTeam Foundation Server 2010に接続すると、Team Explorerやソース管理は正しく表示される。    残念ながら、チームポータルが表示されない。  Visual Studioでワークスペースを確認後、ソースの最新取得してビルドしてみるとエラー。（VS2008がインストールされていない事が原因？）    これは、フォームデザイナで作成されているリソース関連の問題で、VS2010でフォームのプロパティをいじってやると治る。     変更したソースのチェックインも問題なし。  ビルドをインテグレーションしてない単純なチームプロジェクトでビルドマシンの指定や配置場所等を調整してみる。    問題なくビルドできた。  今のところ、チームポータルだけが正しく移行できていない。  &amp;#160;  原因はWSS_Contents DBの指定ミス  ネット上にはあまり情報が無い。ちまちま調べていくと、なんとなく思い当たるところがある。  SQL ServerのDB構成で、SharePointのデータベースで見慣れないものがあった。    ”WSS_Content_GUID”となっているデータベースだ。 TFS2005と2008ではこんなものはなかった。     どうもSharePointをインストールした際に自動的にできた物らしい。  2008から移行して復元したDBは、”WSS_Content”の方でこちらが使われていない（アップグレードされていない）感じである。  &amp;#160;  管理ツールの”SharePoint 3.0 サーバーの全体管理”を実行してコンテンツ データベースの設定を確認。    ”WSS_Content_GUID”のDBのみ含まれている。       （この図は治った後のもの）  &amp;#160;  WSS_Contentデータベースを追加  移行手順の中で”WSS_Content”を選択する必要がある場面で、”WSS_Content_GUID”を入力したのだろう。     GUID付きを破棄して置き換えるかと思ったが、WSS_Contentはサイズが大きくなっているので今回は追加してみる。  [コンテンツ データベースの追加]ボタンがあるので、これで”WSS_Content”データベースを追加してみる。    [OK]ボタンを押すと、エラーが発生。    詳細なメッセージは失念したが、要するに「アップグレードはWEB上だとタイムアウトするからコマンドラインツールを使え」と言う指示。  &amp;#160;  STSADM Addcontentdb コマンド  アップグレードする必要があるSharePointデータベースを追加する場合は、STSADMコマンドのAddcontentdbを使う必要がある。  コマンド詳細：TecNet「Addcontentdb : Stsadm 操作 (Windows SharePoint Services)」     新しいコンテンツ データベースを作成するか、url パラメータおよび databasenam..",
         "link":"http://www.cs-dotnet.com/2011/01/tfs2010-upg-teamportal.html",
         "blog_name":"C#.NETでいく？",
         "date":"2011/01/03 06:23:18"
    }
  ]
  ,
  "member":[
    {
         "blog_link":"http://www.oyajiman.net/oyaji/",
         "blog_name":"おやじまんのだめだこりゃ日記"
    },{
         "blog_link":"http://cloudy-moon.blogspot.com/",
         "blog_name":"曇り空と今いるとこ"
    }
  ]
  ,
  "ad_ovr_ctxtid":"ovrssll777"

}

var ovrssll777;
if (ovrssll777 == null) {
  ovrssll777 = 0;
}



/**
*  write people v2 linklist.
*/
function writePeopleList_107(
	uid,
	mkPut, mkText, mkUrl, mkPos, mkUpSec,
	tmPut, tmDate, tmTime,
	snPut, snPos, snSep,
	nmPut, nmLink,
	num, banner, target, hmType,
	tbWidth, tbCellspacing, tbCellpadding, tbBorder)
{
	var entries = people_entries_107.entries;

	switch (hmType) {
		case 0:	// div
			writePeopleList_Div_107(entries,
				uid,
				mkPut, mkText, mkUrl, mkPos, mkUpSec,
				tmPut, tmDate, tmTime,
				snPut, snPos, snSep,
				nmPut, nmLink,
				num, banner, target);
			break;
		case 1:	// ul li
			writePeopleList_UlLi_107(entries,
				uid,
				mkPut, mkText, mkUrl, mkPos, mkUpSec,
				tmPut, tmDate, tmTime,
				snPut, snPos, snSep,
				nmPut, nmLink,
				num, banner, target);
			break;
		case 2:	// table
			writePeopleList_Table_107(entries,
				uid,
				mkPut, mkText, mkUrl, mkPos, mkUpSec,
				tmPut, tmDate, tmTime,
				snPut, snPos, snSep,
				nmPut, nmLink,
				num, banner, target,
				tbWidth, tbCellspacing, tbCellpadding, tbBorder);
			break;
	}

	if (people_entries_107.ad_ovr_ctxtid.length > 0 && typeof(tbp_ad_put) == 'undefined') {
		document.write("<script src=\"http://www.blogpeople.net/overture/js/ovrssll777.js\" type=\"text/javascript\" charset=\"utf-8\"></script>");
	}
}


/**
*  write people v2 linklist. -type DIV-
*/
function writePeopleList_Div_107(entries,
	uid,
	mkPut, mkText, mkUrl, mkPos, mkUpSec,
	tmPut, tmDate, tmTime,
	snPut, snPos, snSep,
	nmPut, nmLink,
	num, banner, target)
{
	var mkNow = 0;
	if (mkPut) {
		mkNow = new Date().getTime() / 1000;
	}

	document.write('<div class=\'blogpeople-people\'>');

	if (nmPut) {
		if (nmLink) {
			document.write('<div class=\'blogpeople-people-title\'><a href=\'' + people_entries_107.link + '\' target=\'_blank\' title=\'' + people_entries_107.description + '\'>' + people_entries_107.title + '</a></div>');
		} else {
			document.write('<div class=\'blogpeople-people-title\'>' + people_entries_107.title + '</div>');
		}
	}

	if (people_entries_107.ad_ovr_ctxtid.length > 0 && typeof(tbp_ad_put) == 'undefined') {
		document.write("<div id=\"ovrssll777-" + ovrssll777++ + "\" style=\"visibility:hidden;\">107</div>");
	}

	var num = entries.length > num ? num : entries.length;
	for (var n = 0; n < num; n++) {

		document.write('<div>');
		document.write('<div class=\'blogpeople-people-link\'>');

		var prefix = "";
		var suffix = "";
		if (mkPut && (mkNow - (new Date(entries[n].date).getTime() / 1000)) <= mkUpSec) {	// up mark
			if (mkText.length > 0) {
				if (mkPos == 0) {
					prefix = mkText;
				} else {
					suffix = mkText;
				}
			} else {
				if (mkPos == 0) {
					prefix = mkLeft = "<img src='"+ mkUrl + "'>";
				} else {
					suffix = mkLeft = "<img src='"+ mkUrl + "'>";
				}
			}
		}

		if (tmPut) {	// put update time ?
			if (tmDate && tmTime) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(2, 16) + "：</span>";
			} else if (tmDate) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(2, 10) + "：</span>";
			} else if (tmTime) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(10, 16) + "：</span>";
			}
		}

		var title;
		if (snPut) {
			if (snPos == 0) {
				title = "<span class=\'blogpeople-people-site\'>" + entries[n].blog_name + "</span>" + snSep + entries[n].title;
			} else {
				title = entries[n].title + snSep + "<span class=\'blogpeople-people-site\'>" + entries[n].blog_name + "</span>";
			}
		} else {
			title = entries[n].title;
		}

		document.write(prefix + '<a href=\'' + entries[n].link + '\' target=\'' + target + '\' title=\'' + entries[n].date + ':' + entries[n].blog_name + '&#13;&#10;' + entries[n].excerpt + '\'>' + title + '</a>' + suffix);
		document.write('</div>');

		document.write('</div>');

	}

	document.write('<div class=\'blogpeople-people-credit\'>');

	var url1 = getRandomLink(people_entries_107.member);
	if (url1.length > 0) {
		document.write('<a href=\'' + url1 + '\'>');
		document.write('<img src=\'http://www.blogpeople.net/people/images/arrow-left.gif\' alt=\'PEOPLE内ランダムリンク\' style=\'margin-right:3px;border:none;\' id=\'bp-p-left-\'></a>');
	}

	document.write('<a href=\'http://www.blogpeople.net/people/entry_107.html\' target=\'_blank\'><img src=\'' + people_entries_107.banner + '?pid=848\' border=\'0\' alt=\'現在の記事数: ' + people_entries_107.count + '件\' /></a>');

	var url2 = getRandomLink(people_entries_107.member);
	if (url2.length > 0) {
		document.write('<a href=\'' + url2 + '\'>');
		document.write('<img src=\'http://www.blogpeople.net/people/images/arrow-right.gif\' alt=\'PEOPLE内ランダムリンク\' style=\'margin-left:3px;border:none;\' id=\'bp-p-right-\'></a>');
	}

	document.write('<img src=\'http://www.blogpeople.net/people/images/0.gif?p=js&id=107&uid=' + uid + '\'/>');
	document.write('<br /></div>');
	document.write('</div>');
}


/**
*  write people v2 linklist. -type UL LI-
*/
function writePeopleList_UlLi_107(entries,
	uid,
	mkPut, mkText, mkUrl, mkPos, mkUpSec,
	tmPut, tmDate, tmTime,
	snPut, snPos, snSep,
	nmPut, nmLink,
	num, banner, target)
{
	var mkNow = 0;
	if (mkPut) {
		mkNow = new Date().getTime() / 1000;
	}

	document.write('<div class=\'blogpeople-people\'><ul>');

	if (nmPut) {
		if (nmLink) {
			document.write('<div class=\'blogpeople-people-title\'><a href=\'' + people_entries_107.link + '\' target=\'_blank\' title=\'' + people_entries_107.description + '\'>' + people_entries_107.title + '</a></div>');
		} else {
			document.write('<div class=\'blogpeople-people-title\'>' + people_entries_107.title + '</div>');
		}
	}

	if (people_entries_107.ad_ovr_ctxtid.length > 0 && typeof(tbp_ad_put) == 'undefined') {
		document.write("<div id=\"ovrssll777-" + ovrssll777++ + "\" style=\"visibility:hidden;\">107</div>");
	}

	var num = entries.length > num ? num : entries.length;
	for (var n = 0; n < num; n++) {

		document.write('<div>');
		document.write('<div class=\'blogpeople-people-link\'>');

		var prefix = "";
		var suffix = "";
		if (mkPut && (mkNow - (new Date(entries[n].date).getTime() / 1000)) <= mkUpSec) {	// up mark
			if (mkText.length > 0) {
				if (mkPos == 0) {
					prefix = mkText;
				} else {
					suffix = mkText;
				}
			} else {
				if (mkPos == 0) {
					prefix = mkLeft = "<img src='"+ mkUrl + "'>";
				} else {
					suffix = mkLeft = "<img src='"+ mkUrl + "'>";
				}
			}
		}

		if (tmPut) {	// put update time ?
			if (tmDate && tmTime) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(2, 16) + "：</span>";
			} else if (tmDate) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(2, 10) + "：</span>";
			} else if (tmTime) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(10, 16) + "：</span>";
			}
		}

		var title;
		if (snPut) {
			if (snPos == 0) {
				title = "<span class=\'blogpeople-people-site\'>" + entries[n].blog_name + "</span>" + snSep + entries[n].title;
			} else {
				title = entries[n].title + snSep + "<span class=\'blogpeople-people-site\'>" + entries[n].blog_name + "</span>";
			}
		} else {
			title = entries[n].title;
		}

		document.write('<li>' + prefix + '<a href=\'' + entries[n].link + '\' target=\'' + target + '\' title=\'' + entries[n].date + ':' + entries[n].blog_name + '&#13;&#10;' + entries[n].excerpt + '\'>' + title + '</a>' + suffix + '</li>');
		document.write('</div>');

		document.write('</div>');

	}

	document.write('</ul><div class=\'blogpeople-people-credit\'>');

	var url1 = getRandomLink(people_entries_107.member);
	if (url1.length > 0) {
		document.write('<a href=\'' + url1 + '\'>');
		document.write('<img src=\'http://www.blogpeople.net/people/images/arrow-left.gif\' alt=\'PEOPLE内ランダムリンク\' style=\'margin-right:3px;border:none;\' id=\'bp-p-left-\'></a>');
	}

	document.write('<a href=\'http://www.blogpeople.net/people/entry_107.html\' target=\'_blank\'><img src=\'' + people_entries_107.banner + '?pid=848\' border=\'0\' alt=\'現在の記事数: ' + people_entries_107.count + '件\' /></a>');

	var url2 = getRandomLink(people_entries_107.member);
	if (url2.length > 0) {
		document.write('<a href=\'' + url2 + '\'>');
		document.write('<img src=\'http://www.blogpeople.net/people/images/arrow-right.gif\' alt=\'PEOPLE内ランダムリンク\' style=\'margin-left:3px;border:none;\' id=\'bp-p-right-\'></a>');
	}

	document.write('<img src=\'http://www.blogpeople.net/people/images/0.gif?p=js&id=107&uid=' + uid + '\'/>');
	document.write('<br /></div>');
	document.write('</div>');
}


/**
*  write people v2 linklist. -type TABLE-
*/
function writePeopleList_Table_107(entries,
	uid,
	mkPut, mkText, mkUrl, mkPos, mkUpSec,
	tmPut, tmDate, tmTime,
	snPut, snPos, snSep,
	nmPut, nmLink,
	num, banner, target,
	tbWidth, tbCellspacing, tbCellpadding, tbBorder)
{
	var mkNow = 0;
	if (mkPut) {
		mkNow = new Date().getTime() / 1000;
	}

	document.write('<table width=\'' + tbWidth + '\' border=\'' + tbBorder + '\' cellspacing=\'' + tbCellspacing + '\' cellpadding=\'' + tbCellpadding + '\' class=\'blogpeople-people\'>');

	if (nmPut) {
		if (nmLink) {
			document.write('<tr class=\'blogpeople-people-tr-title\'><td class=\'blogpeople-people-td-title\'><div class=\'blogpeople-people-title\'><a href=\'' + people_entries_107.link + '\' target=\'_blank\' title=\'' + people_entries_107.description + '\'>' + people_entries_107.title + '</a></div></td></tr>');
		} else {
			document.write('<tr class=\'blogpeople-people-tr-title\'><td class=\'blogpeople-people-td-title\'><div class=\'blogpeople-people-title\'>' + people_entries_107.title + '</div></td></tr>');
		}
	}

	if (people_entries_107.ad_ovr_ctxtid.length > 0 && typeof(tbp_ad_put) == 'undefined') {
		document.write('<tr class=\'blogpeople-people-tr\'><td class=\'blogpeople-people-td\'>');
		document.write("<div id=\"ovrssll777-" + ovrssll777++ + "\" style=\"visibility:hidden;\">107</div>");
		document.write('</td></tr>');
	}

	var num = entries.length > num ? num : entries.length;
	for (var n = 0; n < num; n++) {
		var prefix = "";
		var suffix = "";
		if (mkPut && (mkNow - (new Date(entries[n].date).getTime() / 1000)) <= mkUpSec) {	// up mark
			if (mkText.length > 0) {
				if (mkPos == 0) {
					prefix = mkText;
				} else {
					suffix = mkText;
				}
			} else {
				if (mkPos == 0) {
					prefix = mkLeft = "<img src='"+ mkUrl + "'>";
				} else {
					suffix = mkLeft = "<img src='"+ mkUrl + "'>";
				}
			}
		}

		if (tmPut) {	// put update time ?
			if (tmDate && tmTime) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(2, 16) + "：</span>";
			} else if (tmDate) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(2, 10) + "：</span>";
			} else if (tmTime) {
				prefix += "<span class=\'blogpeople-people-date\'>" + entries[n].date.substring(10, 16) + "：</span>";
			}
		}

		var title;
		if (snPut) {
			if (snPos == 0) {
				title = "<span class=\'blogpeople-people-site\'>" + entries[n].blog_name + "</span>" + snSep + entries[n].title;
			} else {
				title = entries[n].title + snSep + "<span class=\'blogpeople-people-site\'>" + entries[n].blog_name + "</span>";
			}
		} else {
			title = entries[n].title;
		}

		document.write('<tr class=\'blogpeople-people-tr\'><td class=\'blogpeople-people-td\'>');
		document.write('<div>');
		document.write(prefix + '<a href=\'' + entries[n].link + '\' target=\'' + target + '\' title=\'' + entries[n].date + ':' + entries[n].blog_name + '&#13;&#10;' + entries[n].excerpt + '\'>' + title + '</a>' + suffix);

		document.write('</div>');

		document.write('</td></tr>');

	}

	document.write('<tr class=\'blogpeople-people-tr-credit\'><td class=\'blogpeople-people-td-credit\'>');

	var url1 = getRandomLink(people_entries_107.member);
	if (url1.length > 0) {
		document.write('<a href=\'' + url1 + '\'>');
		document.write('<img src=\'http://www.blogpeople.net/people/images/arrow-left.gif\' alt=\'PEOPLE内ランダムリンク\' style=\'margin-right:3px;border:none;\' id=\'bp-p-left-\'></a>');
	}

	document.write('<a href=\'http://www.blogpeople.net/people/entry_107.html\' target=\'_blank\'><img src=\'' + people_entries_107.banner + '?pid=848\' border=\'0\' alt=\'現在の記事数: ' + people_entries_107.count + '件\' /></a>');

	var url2 = getRandomLink(people_entries_107.member);
	if (url2.length > 0) {
		document.write('<a href=\'' + url2 + '\'>');
		document.write('<img src=\'http://www.blogpeople.net/people/images/arrow-right.gif\' alt=\'PEOPLE内ランダムリンク\' style=\'margin-left:3px;border:none;\' id=\'bp-p-right-\'></a>');
	}

	document.write('<img src=\'http://www.blogpeople.net/people/images/0.gif?p=js&id=107&uid=' + uid + '\'/>');
	document.write('</td></tr>');

	document.write('</table>');
}


function getRandomLink(members)
{
	if (members.length > 0) {
	  var num = Math.floor(Math.random() * members.length);
	  return members[num].blog_link;
	}

	return "";
}


