メソッドの変更


  タイトル引数を省略可能にするには



引数の型を VARIANT にして 記述方法を変更します

MyCom.idl
  
	interface IMyAPI : IDispatch
	{
		[id(1), helpstring("メソッド MsgBox")] HRESULT MsgBox(
			[in] BSTR Message,
			[in,optional] VARIANT Title
		);
	};
  

MyAPI.h
  
public:
	STDMETHOD(MsgBox)(
		BSTR Message,
		VARIANT Title
	);
  

MyAPI.cpp
  
STDMETHODIMP CMyAPI::MsgBox(
	BSTR Message,
	VARIANT Title
)
{
	// 引数省略チェック用
	_variant_t vtWork(Title);

	_bstr_t bstr(Message);
	_bstr_t bstr2;

	// タイトル引数チェック
	if ( vtWork.vt != VT_ERROR ) {
		bstr2.operator = (Title);
	}
	else {
		bstr2.operator = ("デフォルト文字列");
	}

	MessageBox( NULL, (LPTSTR)bstr, (LPTSTR)bstr2, MB_OK );

	return S_OK;
}
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ