Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。C++私ははまってしまいました。Studio...たぶん2005以降、ソリューションファイルのマクロ定義(($OutDir)などのあれ)が相対パスから絶対パスに代わっているんですね。Functionの便利関数とかなかったので、自分たちでいろいろ作っていたと思います。文字操作系などはstrtokとかでいろいろやっていた人も多いでしょうし、strlenとかいまだに使っているコードよく見かけます。2000以降みたいなことを書いていますが、実際WinCon.hを見るとこうなっています。みたいに補助単位付き文字列に変換してくれるのがあったような気がするんだけど、名前もわからないし効率的なググり方もわからない。新日々此何有哉を書いた後、「ASCIIは大丈夫。FullWidth(いわゆる全角)の10と2では」と思ってやってみました。7文字列で2と10を比較すると、10のほうが小さいと判定されます。lstrcmpやCompareStringといったAPIでは先頭の文字で判断しちゃうからこうなるんでしょうね。7長い間、NTFSチューニングの一つに「短いファイル名を生成させない」という技がありました。R2のベストプラクティスアナライザーでも遅いディスクに対してはこのアドバイスが下されます。FunctionのうちのPath系のFunctionは便利で私もよく使っています。PathRemoveFileSpecのANSI版が特定のOSでバグっているという話を聞いたので、試してみました。C++[id:kkamegawa:20100522:p1]で紹介した本が今日届きました。いや、聞いてはいたけどほんとに薄い本です。読むためにはWinDbgと基本的なアセンブラの知識は必要で、そのうえでx64では何が違うのかということを紹介しています。2008のC++プロジェクトにアップグレードしました。Debugで生成するとこんなエラーが。構文エラーがあります。Editionだけデバッガの高度な機能(フィルタとかヒットカウント)が使えるんですね。2005からの伝統のようで。Runtimeは翻訳されないだろうと思ったら、ちゃんと人間の翻訳が入っていたんですね。Functionsを見ていたらなんだこれってAPI。2003まででしか使えない(Vista/7ではサポート外)っていうAPIですね。プログラム今までメンテナンスしていたプログラムの64bit化をやってます。すると問題がちょこちょこ出てきます。これは今まで隠れていた類の問題のはず。これ見て思い出したんだけれども、やはり「クロス開発環境」を提供するのはめんどいのかなぁと思った。会社の開発環境で「生成したきゃ64bit環境用意しろ」というものがあって、びっくりしたのですよ。C#ダウンロードセンターにはちょいちょい出ていますが、どうしても入れなくてはいけないもの以外にも割とあります。基本的にはあてたほうがいいのですが、結構多いですね...。サポート技術情報からダウンロード可能なパッチ一覧。2010ではC/C++のデバッグ時でも逆アセンブルは表示されますが、コードバイトは表示されなくなったようです。2010)リリースに伴い、恒例のSDKに入りそうで入らないヘッダがダウンロードセンタに登場。cpp[id:kkamegawa:20091202:p1]にegtraさんからコメントいただきました。ありがとうございます。C++プリンタ関係で定型外用紙を追加する機能をC++/CLIでちょっと作ってみました。P/Invoke書くのがめんどいので、C++/CLIで書いてみるとちょっと謎。仕様を読んでみたつもりなのですが、うーむ...。windows.hはstdafx.hでインクルードしています。System(CLFS)で書いてみる。C++昨日に引き続き、CLFS。試行錯誤してわかってきました。今日やったのはログを追記するあたり。System(CLFS)で書いてみる。Tracing(ETW)を検討しています。CLFS...見事に日本語ないですね。System.IO.Logの説明見たほうがいい...とまではいきませんが。SDKWindowsではデスクトップヒープというものがあります。メニューやアイコン、ウィンドウを作られるたびにここから取られます。なくなるとプロセスの起動に失敗します。Heapの値を取得する2009-10-08プロセス数を簡単に取得する。WindowsウィンドウであればEnumWindows、フォントであればEnumFontFamiliesexなんてのがあって、これにコールバック関数を渡しておけば、どんどん取得できるのですが...プロセス一覧だと、EnumProcessでは、そういう気のきいたことないですね...。psapi.dllだからなんで...プロセス数を簡単に取得する。このAPIの第三引数は一意な値をシステム時刻から取得して、実際にファイルを作成するとあります。C++192.168.1.080ではだめで、192.168.1.80では送信されます。Vistaでみてみると、192.168.1.57に送ろうとしています。少なくともVistaの場合、0をつけてしまうと8進数だと誤解されてしまうわけですね。VisualStudio私のCOMの知識はいい加減なので、信用しないようにしましょう...とお約束のことを書いといて。ファイルまたはディレクトリが見つかりません。Filders(こみゅぷらすCLT)に参加されたみなさまありがとうございました。スタッフの皆様もお疲れ様でした。当日私が使った資料から一部突っ込みをいただいたところを修正して公開しています。並列お久しぶりでございます。土曜日のイベントのために余裕がありません。最初のセッションだと思っていたけど、実は違っていることが分かって、「よっしゃ、小高さんのセッション中資料作れる」と安心している悪いやつです。Studio,TFS,ALM,DevOps関係のことについていろいろと書いていきます。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。