Answer-ID
  • Întrebări
  • Tag-uri
  • Categorii
Notificări
Recompense
Înregistrare
După înregistrare, veți primi notificări despre răspunsurile și comentariile la întrebările DVS.
Logare
Dacă aveţi deja un cont, autentificaţi-vă pentru a verifica notificările noi.
Aici vor fi recompensele pentru întrebările, răspunsurile și comentariile adăugate sau modificate.
Mai mult
Sursă
Editează
Dave Kasper
Dave Kasper

Utilizarea C # cu OpenOffice prin reflecție

Lucrez la un anumit cod pentru inserarea direct în documentul OpenOffice activ din C # . Nu pot include nici o bibliotecă OpenOffice, deoarece nu vrem să le împachetăm, deci folosim reflecții pentru a avea acces la API-ul OpenOffice .

Întrebarea mea implică utilizarea unui dispecer prin reflecție. Nu pot să-mi dau seama de parametrii corecți pentru a trece la el, oferindu-mi o minunată "TargetInvocationException" din cauza tipurilor nepotrivite.

object objframe = GetProperty(objcontroller, "frame");
if (objframe != null)
{
    object[] paramlist = new object[2] {".uno:Paste", objframe};
    InvokeMethod(objdispatcher, "executeDispatch", paramlist);
}

Cum pot remedia problema?

5 2008-08-14T00:36:01+00:00 1
Programare
reflection
c#
Comentarii la întrebare (0)
lomaxx
14 august 2008 в 5:29
2008-08-14T05:29:10+00:00
Mai mult
Sursă
Editează
#10556

Sunt doar eu sau sunt parametrii dvs. în mod greșit? De asemenea, aveți numărul corect de parametri? Mi-ar putea lipsi ceva, totuși îmi pare rău dacă ați verificat deja aceste lucruri:

Documentația spune:

dispatcher.executeDispatch(document, ".uno:Paste", "", 0, Array())

Ceea ce mi-ar indica că trebuie să aveți definită lista de parametri ca

object[] paramlist = new object[5] {objframe, ".uno:Paste", "", 0, null};
0
0
Comentarii (0)
Adăugati o întrebare
Categorii
Toate
Tehnologii
Cultură
Viață / Artă
Stiință
Profesii
Afaceri
ID
KO
RU
© Answer-ID 2021
Sursă
https://stackoverflow.com
în cadrul licenței cc by-sa 3.0 cu atribuire