Domanda

Sto cercando di utilizzare Autoit con Ruby. Ci sono alcune funzioni definite dall'utente in Autoit di cui ho bisogno per la mia automazione Gui come la scheda della finestra di accesso ecc Il problema è che a differenza dei normali API AutoIt non sono in grado di accedere ai UDF del autoit dal rubino win32ole maniglia oggetto per AutoIt dll . C'è un modo di accedere a questi UDF nel mio codice Ruby? Questi sono in realtà alcune funzioni definite negli script AutoIt e penso che quello che voglio non è possibile. Voglio qualche parere da qualcuno che può aver provato prima ed è venuto a qualche conclusione.

Grazie e saluti, Anjali

È stato utile?

Soluzione

Non si può fare, secondo il autoit forum . Credo che si dovrà riscrivere l'UDF in Ruby.

Altri suggerimenti

Riscrivere le UDF in Ruby è una soluzione semplice. Tuttavia, questa non è una soluzione in tutti i casi, a causa della quantità di lavoro coinvolti. Non v'è alcun modo diretto per richiamare le funzioni AutoIt da Ruby, perché non c'è modo che è possibile compilare AutoIt a un dll o COM o simili.

Che cosa si può fare è riscrivere l'UDF AutoIt per consentire la comunicazione tra processi. Si sia possibile farlo attraverso i parametri della riga di comando:

If $CmdLine[0] > 1 Then
    Switch $CmdLine[1]
        Case "/1"
            Method1()
        Case "/2"
            Method2()
    EndSwitch
EndIf

Func Method1()
    ConsoleWrite("This is the 1st Method" & @CRLF)
EndFunc

Func Method2()
    ConsoleWrite("This is the 2nd Method" & @CRLF)
EndFunc

È compilare lo script precedente come CUI (selezionare l'opzione nel compilatore AutoIt) e poi eseguirlo da Ruby. È quindi possibile prendere l'uscita tramite flussi standard. In alternativa, è possibile scrivere l'output dello script in un file sul disco, quindi utilizzare Ruby per leggere il contenuto del file.

Altre opzioni per la comunicazione tra processi più non tradizionali includono:

Le possibilità sono infinite. :) Questo post dovrebbe iniziare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top