当前位置: 首页>>代码示例>>C++>>正文


C++ ComPtr::ActivateInstance方法代码示例

本文整理汇总了C++中ComPtr::ActivateInstance方法的典型用法代码示例。如果您正苦于以下问题:C++ ComPtr::ActivateInstance方法的具体用法?C++ ComPtr::ActivateInstance怎么用?C++ ComPtr::ActivateInstance使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ComPtr的用法示例。


在下文中一共展示了ComPtr::ActivateInstance方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: CreateCanvasSwapChainPanel

    virtual ComPtr<CanvasSwapChainPanel> CreateCanvasSwapChainPanel() override
    {
        ComPtr<IInspectable> canvasSwapChainPanelInspectable;
        ThrowIfFailed(m_canvasSwapChainPanelActivationFactory->ActivateInstance(&canvasSwapChainPanelInspectable));

        auto canvasSwapChainPanel = As<ICanvasSwapChainPanel>(canvasSwapChainPanelInspectable);

        return static_cast<CanvasSwapChainPanel*>(canvasSwapChainPanel.Get());
    }
开发者ID:RainbowGardens,项目名称:Win2D,代码行数:9,代码来源:CanvasAnimatedControlAdapter.cpp

示例2: CreateImageControl

    virtual ComPtr<IImage> CreateImageControl() override 
    {
        ComPtr<IInspectable> inspectableImage;
        ThrowIfFailed(m_imageControlFactory->ActivateInstance(&inspectableImage));

        ComPtr<IImage> image;
        ThrowIfFailed(inspectableImage.As(&image));

        return image;
    }
开发者ID:RainbowGardens,项目名称:Win2D,代码行数:10,代码来源:CanvasControl.cpp

示例3: CreateLoggingFields

HRESULT Trace::CreateLoggingFields(ComPtr<ILoggingFields> *ppFields)
{
	HRESULT hr = S_OK;
	HStringReference runtimeClassLoggingFields(RuntimeClass_Windows_Foundation_Diagnostics_LoggingFields);
	ComPtr<IActivationFactory> spFactory;
	hr = ABI::Windows::Foundation::GetActivationFactory(runtimeClassLoggingFields.Get(), &spFactory);
	if (FAILED(hr))
		return hr;
	ComPtr<IInspectable> object;
	spFactory->ActivateInstance(&object);
	
	hr = object.As(ppFields);
	return hr;
}
开发者ID:clarkezone,项目名称:audiovisualization,代码行数:14,代码来源:Trace.cpp

示例4: initialize

bool WinRTWindow::initialize(const std::string &name, size_t width, size_t height)
{
    ComPtr<ICoreWindowStatic> coreWindowStatic;
    ComPtr<IActivationFactory> propertySetFactory;
    ComPtr<IPropertyValueStatics> propertyValueStatics;

    ComPtr<ICoreApplication> coreApplication;
    ComPtr<IPropertySet> coreApplicationProperties;
    ComPtr<IMap<HSTRING, IInspectable *>> coreApplicationPropertiesAsMap;

    ComPtr<IMap<HSTRING, IInspectable *>> nativeWindowAsMap;
    ComPtr<IInspectable> sizeValue;

    HRESULT result           = S_OK;
    boolean propertyReplaced = false;

    destroy();

    // Get all the relevant activation factories
    result = GetActivationFactory(
        HStringReference(RuntimeClass_Windows_UI_Core_CoreWindow).Get(), &coreWindowStatic);
    if (FAILED(result))
    {
        return false;
    }

    result = GetActivationFactory(
        HStringReference(RuntimeClass_Windows_Foundation_Collections_PropertySet).Get(),
        &propertySetFactory);
    if (FAILED(result))
    {
        return false;
    }

    result =
        GetActivationFactory(HStringReference(RuntimeClass_Windows_Foundation_PropertyValue).Get(),
                             &propertyValueStatics);
    if (FAILED(result))
    {
        return false;
    }

    result = GetActivationFactory(
        HStringReference(RuntimeClass_Windows_ApplicationModel_Core_CoreApplication).Get(),
        &coreApplication);
    if (FAILED(result))
    {
        return false;
    }

    // Create a PropertySet to be used as the native window
    result = propertySetFactory->ActivateInstance(&mNativeWindow);
    if (FAILED(result))
    {
        return false;
    }

    // Get the PropertySet as a map, so we can Insert things into it later
    ComPtr<IInspectable> tempNativeWindow = mNativeWindow;
    result = tempNativeWindow.As(&nativeWindowAsMap);
    if (FAILED(result))
    {
        return false;
    }

    // Get the CoreApplication properties
    result = coreApplication->get_Properties(coreApplicationProperties.GetAddressOf());
    if (FAILED(result))
    {
        return false;
    }

    // Get the CoreApplication properties as a map
    result = coreApplicationProperties.As(&coreApplicationPropertiesAsMap);
    if (FAILED(result))
    {
        return false;
    }

    // See if the application properties contain an EGLNativeWindowTypeProperty
    boolean hasEGLNativeWindowTypeProperty;
    result = coreApplicationPropertiesAsMap->HasKey(
        HStringReference(EGLNativeWindowTypeProperty).Get(), &hasEGLNativeWindowTypeProperty);
    if (FAILED(result))
    {
        return false;
    }

    // If an EGLNativeWindowTypeProperty is inputted then use it
    if (hasEGLNativeWindowTypeProperty)
    {
        ComPtr<IInspectable> coreApplicationPropertyNativeWindow;

        result = coreApplicationPropertiesAsMap->Lookup(
            HStringReference(EGLNativeWindowTypeProperty).Get(),
            &coreApplicationPropertyNativeWindow);
        if (FAILED(result))
        {
            return false;
        }
//.........这里部分代码省略.........
开发者ID:Crawping,项目名称:chromium_extract,代码行数:101,代码来源:WinRTWindow.cpp


注:本文中的ComPtr::ActivateInstance方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。