Ich bin ein seltsamen Fehler bekommen, wenn ich versuche, ein foreach
durch Formen auf einer Seite mit Word-Interop istkann nicht COM-Objekt des Typs Fall
Mein Code zu tun, wie
foreach (word.Shapes p in pages[3].Application.ActiveDocument.Shapes)
{
p.SelectAll();
}
folgt Die Ausnahme, die ich aus irgendeinem Grund bekomme, ist dies und ich habe keine Ahnung, was ich tun sollte, um das zu beheben.
{"Unable to cast COM object of type 'System.__ComObject' to interface type 'Microsoft.Office.Interop.Word.Shapes'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{0002099F-0000-0000-C000-000000000046}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE))."}
Statt 'word.Shapes' zu verwenden, haben Sie Ihre' foreach'-Variable als 'var'. Das wird unabhängig davon funktionieren und dann sehen, um welchen Typ es sich handelt. – krillgar
Hast du schon versucht, 'p' zu spielen? Wie folgt: '(Word.Shapes) p'? –
@KobyDouek: Die explizite Angabe des Typs in der 'foreach'-Schleife führt die Besetzung für Sie durch, sodass das Casting keinen Unterschied machen sollte. –