- ふらっと C#,C♯,C#(初心者用) Part112
904 :デフォルトの名無しさん[sage]:2014/10/15(水) 11:42:44.14 ID:v6NXSltG - >>898
とりあえずそのコードだとウィンドウの再描画時に消えるよ
| - GCは失敗。メモリは自分で管理せよ!
177 :デフォルトの名無しさん[sage]:2014/10/15(水) 15:27:03.25 ID:v6NXSltG - ID:M/QL++I9 はGCされたようだ
| - C#, C♯, C#相談室 Part85
107 :デフォルトの名無しさん[sage]:2014/10/15(水) 18:15:07.77 ID:v6NXSltG - 構造体に触るとNullReferenceExceptionが出るんだけど、そんなことありえる?
IInputObject を実装してるツールバーですが public override int UIActivateIO( bool fActivate, ref MSG Msg ) { try { Debug.WriteLine( "UIActivateIO" ); // ←ここまで出力されてて Debug.WriteLine( "UIActivateIO, " + Msg ); // ←ここで例外がでてるっぽい Debug.WriteLine( "UIActivateIO, " + Msg.message ); } catch( Exception ex ) { MessageBox.Show( ex.ToString() ); } return S_OK; } MSGは構造体であることは間違いありませんが……
| - C#, C♯, C#相談室 Part85
108 :デフォルトの名無しさん[sage]:2014/10/15(水) 18:17:05.36 ID:v6NXSltG - UIActivateIOはMsgにNULLを渡してくることがあるみたいですが、
そういうときってマーシャラーが良きにはからってくれるんですよね? 触った瞬間に例外って不思議……
| - C#, C♯, C#相談室 Part85
110 :デフォルトの名無しさん[sage]:2014/10/15(水) 18:27:46.85 ID:v6NXSltG - あー、ぬるぽがNullReferenceExceptionになって出てくるってことですか……
public override unsafe int UIActivateIO( bool fActivate, MSG* msg ) にしてmsg == nullを見たらtrueで、 次の行のmsg->messageでNullReferenceExceptionが出ました つまりマーシャラーはなんにもしてくれないってことですか。 しかもこの例外、tryでくくらなければ何事もなかったかのように進行するんですが、そんなもんでしょうか……
| - C#, C♯, C#相談室 Part85
111 :デフォルトの名無しさん[sage]:2014/10/15(水) 18:29:41.66 ID:v6NXSltG - マーシャラーは、unsafeじゃない場合は例外を出さないって仕事をしてるのかな?
|
|