次の方法で共有


IDebugDocumentContext2::GetName

このドキュメント コンテキストを含むドキュメントの表示可能な名前を取得します。

構文

int GetName(
    enum_GETNAME_TYPE  gnType,
    out string         pbstrFileName
);

パラメーター

gnType
[入力] 取得する名前の種類を指定する GETNAME_TYPE 列挙型の値。

pbstrFileName
[出力] ファイルの名前を返します。

戻り値

成功した場合は、S_OK を返します。それ以外の場合は、エラー コードを返します。

解説

このメソッドは、通常、ドキュメント コンテキストがドキュメントの名前自体を格納するように記述されている場合 (次の例のように) を除き、この呼び出しを GetName メソッドに転送します。

次の例は、IDebugDocumentContext2 インターフェイスを公開するシンプルな CDebugContext オブジェクトにこのメソッドを実装する方法を示しています。

HRESULT CDebugContext::GetName(GETNAME_TYPE gnType, BSTR* pbstrFileName)
{
    HRESULT hr;

    // Check for a valid file name argument.
    if (pbstrFileName)
    {
        *pbstrFileName = NULL;

        switch (gnType)
        {
            case GN_NAME:
            case GN_FILENAME:
            {
                // Copy the member file name into the local file name.
                *pbstrFileName = SysAllocString(m_sbstrFileName);
                // Check for successful copy.
                hr = (*pbstrFileName) ? S_OK : E_OUTOFMEMORY;
                break;
            }
            default:
            {
                hr = E_FAIL;
                break;
            }
        }
    }
    else
    {
        hr = E_INVALIDARG;
    }

    return hr;
}

関連項目