カテゴリー: C#
C++、C++ / CLI、C# 適材適所の BOF
WindProc にフックを掛けるだけであれば、InterOpはいらず、WinProcをオーバーライドすればよい。
// Windows NT 4.0 and Windows Me/98/95: This value is not supported.
private const int DBT_DEVNODES_CHANGED = 0x0007;
{
if (m.Msg != WM_DEVICECHANGE)
{
base.WndProc(ref m);
return;
}
{
….
MessageBox.Show("DBT_DEVICEARRIVAL");
break;
case DBT_DEVICEREMOVECOMPLETE:
MessageBox.Show("DBT_DEVICEREMOVECOMPLETE");
break;
….
MessageBox.Show("DBT_DEVNODES_CHANGED");
break;
….
}
ジェネリクスの場合のFindの実装パターン
AmedasLocation al = ameLocation.Find(
delegate(AmedasLocation aloc)
{
return aloc.Text == ((MenuItem)sender).Text;
}
);
結構使いそうだけど、すぐ忘れそうなのでメモ。
System.InvalidCastException の初回例外
XML Web Serviceで名前空間を変更するとエラー
たとえば、XML Web Service のファイルで、namespace WebServiceAmedasを、namespace Uchukamen.WZero3 のように変更して、その他関連する場所も変更したつもりでも、なぜかエラーになる。何が関係しているのか不明・・・。リファクタリングでも面倒みてくれない。今は時間がないので、とりあえずメモ。
発生するエラーは、次の通り。
‘/’ アプリケーションでサーバー エラーが発生しました。
ランタイム エラー
説明: サーバーでアプリケーション エラーが発生しました。このアプリケーションの現在のカスタム エラー設定では、セキュリティ上の理由により、アプリケーション エラーの詳細をリモート表示できません。ただし、ローカル サーバー コンピュータで実行されているブラウザで表示することはできます。
詳細: このエラー メッセージの詳細をリモート コンピュータで表示できるようにするには、現在の Web アプリケーションのルート ディレクトリにある "web.config" 構成ファイル内に、<customErrors> タグを作成してください。その後で、この <customErrors> タグで "mode" 属性を "off" に設定してください。
ユーザー'(null)’のログインに失敗しました。エラーが発生した場合の対処法
[ASP.NET] ユーザー'(null)’のログインに失敗しました。エラーが発生した場合の対処法
NETWORK SERVICEは、マシンが違えば当然別ユーザ。
—
ワーカー プロセスの ID を構成する方法。
System.Transaction
{
using (SqlConnection con = new SqlConnection())
{
conn.Open()
using (SqlCommand cmd = conn.CreateCommand())
{
}
}
scope.Complete();
}