Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Eine Befehlsliste kann nicht auf Effekte verweisen, die Teil von Effektdiagrammen sind, die die Befehlsliste verwenden.
Mögliche Ursachen
Beim Auffüllen einer Befehlsliste kann eine Anwendung einen Aufruf von ID2D1DeviceContext::D rawImage enthalten. ID2D1DeviceContext::D rawImage kann verwendet werden, um Bitmaps, Effekte oder Befehlslisten zu zeichnen. Daher ist es syntaktisch möglich, dass ein ID2D1DeviceContext::D rawImage-Aufruf versucht, eine Befehlsliste zu zeichnen, während dieselbe Befehlsliste als Ziel festgelegt wird. Selbstverweisende Befehlslisten auf diese Weise sind jedoch ungültig. Direct2D identifiziert Fälle, in denen dies auftritt, und meldet einen Fehler, und die Debugebene gibt diese Meldung aus.
Mögliche Korrekturen
Stellen Sie beim Auffüllen einer Befehlsliste sicher, dass ein Gerätekontext keinen Vorgang ausgibt, der dieselbe Befehlsliste verwendet. Die offensichtlichste Methode, in der dies passieren kann, ist das Aufrufen von ID2D1DeviceContext::D rawImage mit derselben Befehlsliste, die als Ziel festgelegt ist. Es gibt jedoch auch weniger offensichtliche Möglichkeiten, wie dies auftreten kann: ein ID2D1DeviceContext::D rawImage kann auf ein Effektdiagramm verweisen, und ein Knoten im Effektdiagramm kann versuchen, die Zielbefehlsliste zu verwenden. Stellen Sie sicher, dass Befehlslisten vor der Verwendung richtig aufgefüllt werden und dass Aufrufe von ID2D1DeviceContext::SetTarget auf das beabsichtigte Ziel verweisen.