D1108: Fábrica incorrecta
El recurso [recurso] se asignó mediante la fábrica [factory 1] y se usó con factory [factory 2].
Marcadores de posición
-
Recursos
-
Dirección de la interfaz.
-
factory 1
-
Dirección del generador que asignó el recurso.
-
factory 2
-
Dirección del generador con el que se usó el recurso .
Ejemplos
En el ejemplo siguiente se crean primero dos objetos ID2D1Factory habilitados para depuración; a continuación, crea una geometría a partir de la primera fábrica y un pincel de la segunda fábrica. Por último, llama a FillGeometry, pasando la geometría y el pincel.
// If you set the options.debugLevel to D2D1_DEBUG_LEVEL_NONE,
// the debug layer is not enabled.
#if defined(DEBUG) || defined(_DEBUG)
D2D1_FACTORY_OPTIONS options;
options.debugLevel = D2D1_DEBUG_LEVEL_INFORMATION;
hr = D2D1CreateFactory(
D2D1_FACTORY_TYPE_SINGLE_THREADED,
options,
&m_pD2DFactory
);
#else
hr = D2D1CreateFactory(
D2D1_FACTORY_TYPE_SINGLE_THREADED,
&m_pD2DFactory
);
#endif
// Domain violation. Create a second Direct2D factory.
options.debugLevel = D2D1_DEBUG_LEVEL_INFORMATION;
hr = D2D1CreateFactory(
D2D1_FACTORY_TYPE_SINGLE_THREADED,
options,
&m_pD2DFactory1
);
// Create a geometry from the second factory.
hr = m_pD2DFactory1->CreateRectangleGeometry(
D2D1::RectF(100, 50, 400, 160),
&m_pRectangleGeometry
);
C++ |
---|
|
C++ |
---|
|
C++ |
---|
|
En este ejemplo se genera el siguiente mensaje de depuración:
D2D DEBUG ERROR - The resource [003BD628] was allocated
by factory [002ED698] and used with factory [002ED470].
Causas posibles
Uso de recursos no válido. Se usó un recurso asignado por una factoría con otra factoría.