IVsFindTarget::GetFindState Method (Object^)

 

Determines the state of a previous Find operation.

Namespace:   Microsoft.VisualStudio.TextManager.Interop
Assembly:  Microsoft.VisualStudio.TextManager.Interop (in Microsoft.VisualStudio.TextManager.Interop.dll)

int GetFindState(
	[OutAttribute] Object^% ppunk
)

Parameters

ppunk
Type: System::Object^

[out, retval] The find state as pointer to IUnknown.

Return Value

Type: System::Int32

If the method succeeds, it returns S_OK. If it fails, it returns an error code.

From textmgr.idl:

HRESULT IVsFindTarget::GetFindState(
   [out, retval] IUnknown **ppunk
);

Find state is an opaque object held on behalf of the find engine.

A C++ class in VS can use a smart pointer, or use the following code to manage the Find state

// Declare the following member

IUnknown * m_pUnkFindState;

// In constructor's member-initialization-list:

m_pUnkFindState(NULL)

// In destructor or ATL FinalRelease():

if (m_pUnkFindState)

{

m_pUnkFindState->Release();

m_pUnkFindState = NULL;

}

//

// method implementations

//

HRESULT MyClass::SetFindState (IUnknown * punk)

{

if (m_pUnkFindState)

{

m_pUnkFindState->Release();

m_pUnkFindState = NULL;

}

if (punk)

{

punk->AddRef();

m_pUnkFindState = punk;

}

return S_OK;

}

HRESULT MyClass::GetFindState (IUnknown **ppunk)

{

*ppunk = m_pUnkFindState;

if (m_pUnkFindState)

m_pUnkFindState->AddRef();

return S_OK;

}

Return to top
Show: