2011-11-01 19 views
18

Non sono sicuro che ciò sia possibile o meno con PowerShell.Eseguire il file DLL di terze parti con PowerShell

Ma fondamentalmente ho un programma Windows Forms che configura un programma chiamato EO Server. Il server EO ha un'API e faccio riferimento a EOServerAPI.dll per eseguire il codice seguente.

using EOserverAPI; 
... 
private void myButton_Click(object sender, EventArgs e) 
{ 
    String MDSConnString="Data Source=MSI;Initial Catalog=EOMDS;Integrated Security=True;"; 

    //Create the connection 
    IEOMDSAPI myEOMDSAPI = EOMDSAPI.Create(MDSConnString); 

    //Get JobID 
    Guid myMasterJobID = myEOMDSAPI.GetJobID("myJobRocks"); 
} 

E 'possibile interagire con un file DLL API e fare gli stessi tipi di chiamate, come si farebbe in un'applicazione Windows Form?

risposta

28

Sì, è possibile:

Add-Type -Path $customDll 
$a = new-object custom.type 

si chiama un metodo statico in questo modo:

[custom.type]::method() 

Invece di Add-Type, è possibile anche utilizzare la riflessione:

[Reflection.Assembly]::LoadFile($customDll) 

(Nota che anche il precedente sta chiamando la libreria Reflection e il metodo statico LoadFile.)

+0

Mi sono perso con la seconda affermazione. $ a = nuovo-oggetto custom.type Non so come chiamare il mio tipo personalizzato Potresti aiutarmi? – MicroSumol

Problemi correlati