IVsUIShell.FindToolWindowEx(UInt32, Guid, UInt32, IVsWindowFrame) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回 IVsWindowFrame 请求的单实例或多实例工具窗口的指针。
public:
int FindToolWindowEx(System::UInt32 grfFTW, Guid % rguidPersistenceSlot, System::UInt32 dwToolWinId, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsWindowFrame ^ % ppWindowFrame);
public int FindToolWindowEx (uint grfFTW, ref Guid rguidPersistenceSlot, uint dwToolWinId, out Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame ppWindowFrame);
abstract member FindToolWindowEx : uint32 * Guid * uint32 * IVsWindowFrame -> int
Public Function FindToolWindowEx (grfFTW As UInteger, ByRef rguidPersistenceSlot As Guid, dwToolWinId As UInteger, ByRef ppWindowFrame As IVsWindowFrame) As Integer
参数
- grfFTW
- UInt32
中提供用于在环境中查找工具窗口的条件。 有关详细信息,请参阅 __VSFINDTOOLWIN。
- rguidPersistenceSlot
- Guid
中使用创建的工具窗口的唯一标识符 CreateToolWindow(UInt32, UInt32, Object, Guid, Guid, Guid, IServiceProvider, String, Int32[], IVsWindowFrame) 。 此方法的调用方可以使用映射到工具窗口的预定义标识符(如果调用方知道这些工具窗口)。
- dwToolWinId
- UInt32
中多实例工具窗口中请求的工具窗口的标识符。 多实例工具窗口的第一个实例的标识符为零,第二个实例的标识符为1,依此类推。
- ppWindowFrame
- IVsWindowFrame
弄指向 IVsWindowFrame 所需工具窗口的接口的指针
返回
如果该方法成功,则它会返回 S_OK。 如果该方法失败,则会返回错误代码。
注解
COM 签名
从 vsshell:
HRESULT IVsUIShell::FindToolWindowEx(
[in] VSFINDTOOLWIN grfFTW,
[in] REFGUID rguidPersistenceSlot,
[in] DWORD dwToolWinId,
[out] IVsWindowFrame **ppWindowFrame
);
此方法需要完全创建的工具窗口。 由于工具窗口创建延迟,因此可能存在有效的窗口框架,但该窗口可能尚未创建。 如果不使用对象填充窗口框架,则环境将失败,并且父例程负责完成窗口创建。 但是,如果将参数的值指定 FTW_fForceCreate 为 grfFTW ,则环境将尝试为您创建工具窗口。 如果指定值 FTW_fFrameOnly ,则环境将返回一个指向窗口框架的指针,即使未使用对象填充窗口框架也是如此。 使用 FTW_fFrameOnly 值在工具窗口的窗口框架上设置属性,在这种情况下,不需要完全创建的工具窗口。