2012-04-01から1ヶ月間の記事一覧

構造体の静的初期化

VC

配列の静的初期化なんて、めったにやらないから書き方忘れちゃってた。共有メモリで使う場合、初期化コード書かないと共有エリアになってくれないから、どうしても必要。 struct XXX{ char a[32]; char b[32]; char c[32]; char d[24]; } static struct XXX …

strtokのワイド文字版 wcstok_s

VC

入力が "コマンド|データ"という|で切りたい場合はこんな感じで使う。 CString sCommand; CString sData; TCHAR *next; sCommand = wcstok_s(pWbuffer,_T("|"),&next); sCommand.MakeLower(); // 小文字化 sData = wcstok_s(NULL,_T("|"),&next); sData.Mak…

charからwchar_tへの変換 mbstowcs_s

VC

setlocale()忘れがち。注意。 #include <locale.h> ... // pbuffer = 入力 setlocale(LC_ALL,"Japanese_Japan.932"); TCHAR pWbuffer[500]; size_t ReturnValue; mbstowcs_s(&ReturnValue, pWbuffer,(char*)pbuffer,500);逆にwchar_tからcharへの変換はwcstombs() ネタ</locale.h>…

変数の型を知るにはTypeName()

Dim i As Integer MsgBox TypeName(i) ネタ元 http://www.moug.net/tech/exvba/0140004.html Excelマクロ& VBA基本技

マルチバイト文字列とワイド文字列

VC

ややこしやhttp://nano-niche.jugem.jp/?eid=57 ワイド文字(ワイドもじ)とは、主にC言語およびC++における文法要素で、1文字あたりのバイト数を通常より多くしたデータ型である。wchar_t型が実際に拡張実行文字集合を表現できるかどうかは処理系に依存し、…

64bitWindows7で32bitDLLをパスの通った場所に置きたい場合はC:¥Windows¥SysWOW64に置く

OS

リダイレクトされてSysWOW64を見られるのでsystem32に置いても意味ないよ 関連 http://d.hatena.ne.jp/shikaku/20091124/p1

VC++で作ったDLLの引数付きの関数をVBAから呼ぼうとしたら「DLLが正しく呼び出せません」と出る場合のチェックポイント

__stdcallはついていますか? defファイルのEXPORTSに明示的なエクスポートして追加してますか? 引数なしは__stdcallなくても、EXPORTSに記載しなくても呼び出せるみたい ネタ元 http://okwave.jp/qa/q1655455.html

PC作業自動化にはUWSC

スクリプトを組めばいろいろ出来るみたい。http://www.vector.co.jp/soft/win95/util/se115105.html

計算式の計算時に呼ばれるCalculateイベント

=ORG|SayHelloみたいな標準にはないコマンド的なものを実装したいなら、Calculateイベント内に処理を書けばいいのかと思った。 他にもいい方法があるっぽいけど、まだ調査中。 マクロエディタでワークシートを選んで、 オブジェクトボックスでWorkSheetを選…

WindowsDLLの共有メモリの使い方

VC

異なるアプリでメモリ共有ができる方法を探してます。これを試してみよう http://d.hatena.ne.jp/seraphy/20050118 http://nazochu.blogspot.jp/2011/08/dll.html