/// <summary> /// WinAPIのエラー発生時に例外を発行する処理。 /// </summary> /// <param name="errorCode">エラーコード</param> private void ThrowWinAPIException(int errorCode) { throw new Exception( string.Format("予期せぬエラーが発生しました。" + "\r\n" + "ErrorCode = {0}" + "\r\n" + "ErrorMessage = {1}" , errorCode , WinAPIErrorMessageUtil.GetErrorMessage(errorCode) ) ); }
/// <summary> /// コンストラクタ。 /// クリップボードビューアを設定する。 /// </summary> /// <param name="hWndViewer">ビューアのウィンドウハンドル</param> public ClipboardViewer(IntPtr hWndViewer) { this.hWndViewer = hWndViewer; this.hWndViewerNext = SetClipboardViewer(this.hWndViewer); // SetClipboardViewerの戻り値がNULLの可能性もあるので、GetErrorCodeメソッドでエラーコードをチェックする int errorCode = WinAPIErrorMessageUtil.GetErrorCode(); if (errorCode != 0 && errorCode != 1008) { // エラー発生時 ThrowWinAPIException(errorCode); } }