Automation a ruby plugin

Hlášení chyb a problémů programu Altap Salamander. Buďte, prosím, ve svých popisech co nejpodrobnější a vytvořte pro každý incident nový příspěvek. Nevkládejte programem generovaná hlášení o pádu programu, pošlete je e-mailem.
User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Automation a ruby plugin

Post by tukanos » 19 Jan 2016, 15:27

Zkoušel to někdo? Rád bych si pár věcí zautomatizoval a ruby teď píši dost věcí tak jsem se chtěl na to podívat, ale není mě uplně jasné jak funguje to propojení.

Koukal jsem se na http://forum.altap.cz/viewtopic.php?f=2 ... uby#p19659, http://forum.altap.cz/viewtopic.php?f=1 ... uby#p17888, http://www.altap.cz/salamander/help/aut ... ix_engines , ale moc moudrý z toho nejsem.

Dostal jsem se na http://www.artonx.org/data/about_asr.html a posléze na https://github.com/arton/RScript22

Jakým způsobem se má tedy ten ruby (IActiveScript) script vypadat? Ten IActiveScript interface for ruby interpreter je součástí toho automation scriptu? Když si udělám v automation\scripts svůj hello.rb, tak ho nemohu spustit. Podle čeho se automation plugin rozhodne, že danou věc zpustí? Podle koncovky? Jakou koncovku má mít ruby soubor na konci? Zkoušel jsem .rb nebo .rbw a nic z toho.

Když se pokusím o jednoduchý skript, tak mě ho automation nechce zpustit asi něco chybí:
require 'win32ole'
Salamander.MsgBox("Hello World", 0, "Ruby in Salamander")

Docela by pomohla i nějaká relativně jednoduchá ukázka - něco podobného jako pro VBscript:

VBScript
Dim TotalSize
TotalSize = 0
for each Item in Salamander.SourcePanel.Items
TotalSize = TotalSize + Item.Size
next
Salamander.MsgBox("Total size of all items in the panel: " +
CStr(TotalSize) + " bytes")
Last edited by tukanos on 19 Jan 2016, 16:34, edited 1 time in total.

manison
Plugin Developer
Plugin Developer
Posts: 216
Joined: 09 Dec 2005, 23:23
Location: Ceske Budejovice, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by manison » 19 Jan 2016, 16:23

Základním předpokladem je nainstalovaný skriptovací stroj pro Ruby podporující "aktivní skriptování" (terminologie MS), tj. to "IActiveScript" rozhraní. Takovým skriptovacím strojem pro Ruby je balík ActiveScriptRuby (viz zmiňovaný odkaz http://www.altap.cz/salamander/help/aut ... x_engines/). Možná, že existují i jiné implementace pro Ruby, ale s tímto balíkem jsem to kdysi s Automation pluginem zkoušel.

Jakmile tento balík nainstalujete, měl by ho Automation plugin automaticky rozpoznat a na Ruby skriptech (myslím, že obě přípony jsou podporovány, záleží na tom, co instalační balík ActiveScriptRuby nastaví v registru) by měla být od té doby aktivní položka "Run Focused Script".

Začněte tedy tím, že si stáhnete a nainstalujete balík ActiveScriptRuby. Jenom upozorňuji, že před lety, kdy jsem Ruby v Automation zkoušel, ten balík nebyl zrovna moc stabilní. Ale je pravděpodobné, že od té doby se věci změnily (poslední verze je koukám měsíc stará).

User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos » 19 Jan 2016, 16:34

manison wrote:Základním předpokladem je nainstalovaný skriptovací stroj pro Ruby podporující "aktivní skriptování" (terminologie MS), tj. to "IActiveScript" rozhraní. Takovým skriptovacím strojem pro Ruby je balík ActiveScriptRuby (viz zmiňovaný odkaz http://www.altap.cz/salamander/help/aut ... x_engines/). Možná, že existují i jiné implementace pro Ruby, ale s tímto balíkem jsem to kdysi s Automation pluginem zkoušel.

Jakmile tento balík nainstalujete, měl by ho Automation plugin automaticky rozpoznat a na Ruby skriptech (myslím, že obě přípony jsou podporovány, záleží na tom, co instalační balík ActiveScriptRuby nastaví v registru) by měla být od té doby aktivní položka "Run Focused Script".

Začněte tedy tím, že si stáhnete a nainstalujete balík ActiveScriptRuby. Jenom upozorňuji, že před lety, kdy jsem Ruby v Automation zkoušel, ten balík nebyl zrovna moc stabilní. Ale je pravděpodobné, že od té doby se věci změnily (poslední verze je koukám měsíc stará).
Děkuji za informace. Jaká je provázanost mezi IActiveScript a vlastní MRI ruby implementací? Protože podle názvu ta poslední implementaci IActiveScript by odpovídala poslední stabilní verzi MRI ruby 2.3. Já na systému mám pouze ruby 2.2.2p95 (2015-04-13 revision 50295) a pokud je to vlastně pouze scriptovací nadstavba nad MRI, tak bych si nejspíše musel stáhnout http://www.artonx.org/data/asr/Ruby-2.2.msi. Pokud je to zcela samostatné, tak bych si mohl nainstalovat tu nejposlednější verzi.

manison
Plugin Developer
Plugin Developer
Posts: 216
Joined: 09 Dec 2005, 23:23
Location: Ceske Budejovice, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by manison » 19 Jan 2016, 16:48

S tímto bohužel neporadím, jazyk Ruby a jeho implementace neznám. Domnívám se, že balík ActiveScriptRuby obsahuje vše, tj. jak ActiveScript engine, tak odpovídající verzi implementace Ruby. Nevybavuji si, že bych tenkrát při testování skriptování s Ruby instaloval ještě něco navíc. Teoreticky byste tedy mohl mít oboje. Otázkou je, co to udělá s nastavením systémových proměnných, cest, asociací apod. Budeme rádi, když se o své zkušenosti podělíte. Přikládám několik malých testovacích skriptů.
Attachments
RubyScripts-Samples.zip
(627 Bytes) Downloaded 151 times

User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos » 19 Jan 2016, 17:12

manison wrote:S tímto bohužel neporadím, jazyk Ruby a jeho implementace neznám. Domnívám se, že balík ActiveScriptRuby obsahuje vše, tj. jak ActiveScript engine, tak odpovídající verzi implementace Ruby. Nevybavuji si, že bych tenkrát při testování skriptování s Ruby instaloval ještě něco navíc. Teoreticky byste tedy mohl mít oboje. Otázkou je, co to udělá s nastavením systémových proměnných, cest, asociací apod. Budeme rádi, když se o své zkušenosti podělíte. Přikládám několik malých testovacích skriptů.
Děkuji za příklady. Doufal jsem, že to bude takhle jednoduché. Nainstaloval jsem si nyní poslední verzi toho balíku (vše v plynulé japonštině, ale není problém se tím proklikat) a podle všeho to vypadá, že je to vše dohromady, tudíž žádná další instalace není zapotřebí. Nainstaluje si to vlastní ruby nyní ve verzi - ruby 2.3.0p0 (2015-12-25 revision 53290) [x64-mswin64_100].
Jakmile tento balík nainstalujete, měl by ho Automation plugin automaticky rozpoznat a na Ruby skriptech (myslím, že obě přípony jsou podporovány, záleží na tom, co instalační balík ActiveScriptRuby nastaví v registru) by měla být od té doby aktivní položka "Run Focused Script".
To asi u mě nebude úplně fungovat. Na přepínání mezi verzemi, modifikuje to PATH používám velmi šikovný prográmek uru (https://bitbucket.org/jonforums/uru). Odkud bere cestu automation plugin? Je to normálně z PATH, nebo to má vlastní systémovou proměnnou která by se dala přiřadit a ukazovala by na danou instaci ActiveScriptRuby? Případně možná registry?

manison
Plugin Developer
Plugin Developer
Posts: 216
Joined: 09 Dec 2005, 23:23
Location: Ceske Budejovice, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by manison » 19 Jan 2016, 19:23

Odkud bere cestu automation plugin? Je to normálně z PATH, nebo to má vlastní systémovou proměnnou která by se dala přiřadit a ukazovala by na danou instaci ActiveScriptRuby? Případně možná registry?
Automation žádné cesty neřeší. Ten pouze vytvoří COM objekt podle asociace v registru, pak je to již plně v režii takto vytvořeného objektu. Pro skriptovací engine PHP to v registru vypadá nějak takto (vypůjčeno z http://www.altap.cz/salamander/help/aut ... x_engines/):

Code: Select all

[HKEY_CLASSES_ROOT\.phps]
@="PHPScriptFile"

[HKEY_CLASSES_ROOT\PHPScriptFile]
@="PHP Script File"

[HKEY_CLASSES_ROOT\PHPScriptFile\ScriptEngine]
@="PHPScript"
Po instalaci balíku pro Ruby budete mít v registru něco podobného pro příponu .rb.

User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos » 20 Jan 2016, 15:53

manison wrote:
Odkud bere cestu automation plugin? Je to normálně z PATH, nebo to má vlastní systémovou proměnnou která by se dala přiřadit a ukazovala by na danou instaci ActiveScriptRuby? Případně možná registry?
Automation žádné cesty neřeší. Ten pouze vytvoří COM objekt podle asociace v registru, pak je to již plně v režii takto vytvořeného objektu. Pro skriptovací engine PHP to v registru vypadá nějak takto (vypůjčeno z http://www.altap.cz/salamander/help/aut ... x_engines/):

Code: Select all

[HKEY_CLASSES_ROOT\.phps]
@="PHPScriptFile"

[HKEY_CLASSES_ROOT\PHPScriptFile]
@="PHP Script File"

[HKEY_CLASSES_ROOT\PHPScriptFile\ScriptEngine]
@="PHPScript"
Po instalaci balíku pro Ruby budete mít v registru něco podobného pro příponu .rb.
Chápu tedy je zapotřebí systémového ruby, kde je uvedeno cesta do toho ActiveScriptRuby. To je pro mě nepříjemné protože systémové ruby nemám protože používám to přepínátko. Protože ActiveScriptRuby MRI ruby určitě nebude to v čem budu normálně vyvíjet.

Přemýšlím o nějakém rozumném obchvatu problému. Je jasné, že z pohledu Automation pluginu tohle odstraňuje dalším možnost chyb a konfigurace. Nešlo by například, přidat volitelnou konfiguraci, kam by se měl podívat pro nějakou koncovku? např. pro .rb by se podíval ještě do c:\sdk\ruby_Iascripting? Nebo případně nějak to obejít dočasným vylepšením registrů při spuštění automation pluginu a při zavření zase vrátit vše do původního stavu?

Těch ruby využívám více a se systémovým ruby by se to nejspíše tlouklo (a na vývojové mašině to téměř vždy dělá neplechu), více budu ještě zkoumat.

Pro zajímavost výčet těch ruby v systému:

Code: Select all

    200p645     : ruby 2.0.0p645 (2015-04-13) [i386-mingw32]
    215p273     : ruby 2.1.5p273 (2014-11-13 revision 48405) [x64-mingw32]
    220p0       : ruby 2.2.0p0 (2014-12-25 revision 49005) [x64-mingw32]
    222-x86     : ruby 2.2.2p95 (2015-04-13 revision 50295) [i386-mingw32]
    222p95      : ruby 2.2.2p95 (2015-04-13 revision 50295) [x64-mingw32]
    223p173     : ruby 2.2.3p173 (2015-08-18 revision 51636) [x64-mingw32]
    904         : jruby 9.0.4.0 (2.2.2) 2015-11-12 b9fb7aa Java HotSpot(TM) Client...
Zkoušel jsem si ve virtuálce, co by mělo být v těch registrech (zvláštní na tom je, že ten http://www.artonx.org/data/asr/Ruby-2.2.msi ty registry nezmění a až normální RubyInstaller má nastavení, které zapíše do registrů.).

Pro ty co by si to chtěli zkusit a mohou mít systémové ruby tak uvádím, co je zapotřebí:

pro .rb:

Code: Select all

[HKEY_CLASSES_ROOT\.rb]
@="RubyFile"
pro .rbw:

Code: Select all

[HKEY_CLASSES_ROOT\.rbw]
@="RubyWFile"
Pro celé ruby.exe (ruby je nainstallováno do c:\Ruby22):

Code: Select all

[HKEY_CLASSES_ROOT\RubyFile]
@="Ruby File"
[HKEY_CLASSES_ROOT\RubyFile\DefaultIcon]
@="C:\\Ruby22\\bin\\ruby.exe,0"
[HKEY_CLASSES_ROOT\RubyFile\shell]
[HKEY_CLASSES_ROOT\RubyFile\shell\open]
[HKEY_CLASSES_ROOT\RubyFile\shell\open\command]
@="\"C:\\Ruby22\\bin\\ruby.exe\" \"%1\" %*"
Pro celé rubyw.exe (ruby je nainstallováno do c:\Ruby22):

Code: Select all

[HKEY_CLASSES_ROOT\RubyWFile]
@="RubyW File"
[HKEY_CLASSES_ROOT\RubyWFile\DefaultIcon]
@="C:\\Ruby22\\bin\\rubyw.exe,0"
[HKEY_CLASSES_ROOT\RubyWFile\shell]
[HKEY_CLASSES_ROOT\RubyWFile\shell\open]
[HKEY_CLASSES_ROOT\RubyWFile\shell\open\command]
@="\"C:\\Ruby22\\bin\\rubyw.exe\" \"%1\" %*"
Ještě to možná budu muset upravit ty registry, až všechno rozběhám ve virtuálce.

Jan Rysavy
ALTAP Staff
ALTAP Staff
Posts: 5196
Joined: 08 Dec 2005, 06:34
Location: Novy Bor, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by Jan Rysavy » 20 Jan 2016, 16:41

To je slušnej horor co tu čtu. Už jen ty stránky v japonštině - celkem obskurní záležitost. Hlasoval bych v tomto směru do pluginu čas neinvestovat, raději bych viděl vývoj směrem k potřebám většiny uživatelů.

User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos » 20 Jan 2016, 17:20

Jan Rysavy wrote:To je slušnej horor co tu čtu. Už jen ty stránky v japonštině - celkem obskurní záležitost. Hlasoval bych v tomto směru do pluginu čas neinvestovat, raději bych viděl vývoj směrem k potřebám většiny uživatelů.
Ty stránky v japonštině jsou asi proto, že největší počet ruby programátorů bude v japonsku a autor se nenamáhal to napsat anglicky (když máme ty automatické překlady). Starší En verze existuje: http://www.geocities.co.jp/SiliconValle ... /main.html
Jestli by byla úprava pluginu nějak složitá mohu souhlasit. Mě jen zajímá jak to rozchodit, aby ten windows scripting host si uvědomil to ruby... však to sem napíšu až na něco přijdu.

User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos » 21 Jan 2016, 14:09

Uff, tedy WSH je nejhůře dokumentované programovatelné rozšíření v HISTORII.

Hlásím úspěch, ale zatím s historickou verzí 1.8.7 nebo-li ActiveRuby.msi (http://www.artonx.org/data/asr/ActiveRuby.msi). Podívám co je v registrech a zkusím to aplikovat na novější verze.

Jako test jsem si udělal hello_world.wsf

Code: Select all

<job>
<script language="VBScript">
  MsgBox "hello world (from vb)"
</script>
<script language="JScript">
  WSH.echo("hello world (from js)");
</script>
<script language="RubyScript">
  shell = WIN32OLE.new("WScript.Shell")
  shell.popup('Hello world',0, __FILE__)
</script>
</job>
A pokud ActionScriptRuby vyhodí hello world okýnko bude fungovat i automation plugin. Hlavní problém je, že to běží pouze jednou za instanci Salamandru (to okno správně vyhodí výsledek, ale název je Error, což asi není dobře .))-
salamander_active_script_ruby_success.jpg
úspěšné spustění skriptu.
salamander_active_script_ruby_success.jpg (124.17 KiB) Viewed 5058 times
T.j. první spuštění běží správně a druhé vyhazuje chybu "Stack level too deep" -
error_message.jpg
chyba pří 2 až n-tém běhu
error_message.jpg (97.04 KiB) Viewed 5058 times
Když zavřu salamandra, tak to zase funguje 1x správně, což by mě zajímalo čím může být - možná nějaká chyba v pluginu? (vbscript a jscript fungují) (activescriptruby je stále funční, když si spustím testovací skripty).

manison
Plugin Developer
Plugin Developer
Posts: 216
Joined: 09 Dec 2005, 23:23
Location: Ceske Budejovice, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by manison » 21 Jan 2016, 18:55

Podívám co je v registrech a zkusím to aplikovat na novější verze.
Z hlediska Automation (nebo obecně jakéhokoliv programu, který hostí skriptovací engine technologie Active Script), je zásadní klíč ScriptEngine v asociaci souboru (viz předchozí ukázka registru pro engine PHP).
to okno správně vyhodí výsledek, ale název je Error, což asi není dobře .
Při volání metody MsgBox je možné zadat volitelný parametr title, kterým lze titulek dialogového okna nastavit.
Když zavřu salamandra, tak to zase funguje 1x správně, což by mě zajímalo čím může být - možná nějaká chyba v pluginu? (vbscript a jscript fungují) (activescriptruby je stále funční, když si spustím testovací skripty).
To jste narazil pravděpodobně na stejný problém, který popisuje uživatel v příspěvku, na který odkazujete na začátku tohoto vlákna. Active Script engine pro Ruby je prostě zabugovaný, Automation s tím nemůže nic moc dělat. Možná, pokud se vám podaří rozjet novější verzi ActiveRuby, některé z problémů zmizí. JScript a VBScript fungují, protože to jsou v podstatě referenční implementace od Microsoftu. Některé enginy implementují skriptovací rozhraní IActiveScript lépe (Perl, Python), jiné ho implementují dosti inovativním způsobem (Ruby, PHP). Můžete zkusit reportovat bugy autorům.

User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos » 22 Jan 2016, 15:15

Z hlediska Automation (nebo obecně jakéhokoliv programu, který hostí skriptovací engine technologie Active Script), je zásadní klíč ScriptEngine v asociaci souboru (viz předchozí ukázka registru pro engine PHP).
Jak, ale pozná z tohoto klíče =>

Code: Select all

[HKEY_CLASSES_ROOT\PHPScriptFile\ScriptEngine] @="PHPScript"
, že má spustit zrovna php, když tam není uvedena cesta? Repektivě jak se to potom propojuje v těch registrech?
Když zavřu salamandra, tak to zase funguje 1x správně, což by mě zajímalo čím může být - možná nějaká chyba v pluginu? (vbscript a jscript fungují) (activescriptruby je stále funční, když si spustím testovací skripty).
To jste narazil pravděpodobně na stejný problém, který popisuje uživatel v příspěvku, na který odkazujete na začátku tohoto vlákna. Active Script engine pro Ruby je prostě zabugovaný, Automation s tím nemůže nic moc dělat. Možná, pokud se vám podaří rozjet novější verzi ActiveRuby, některé z problémů zmizí. JScript a VBScript fungují, protože to jsou v podstatě referenční implementace od Microsoftu. Některé enginy implementují skriptovací rozhraní IActiveScript lépe (Perl, Python), jiné ho implementují dosti inovativním způsobem (Ruby, PHP). Můžete zkusit reportovat bugy autorům.
Už jsem v kontaktu s tím autorem ActionScriptRuby a poslal jsem mu velmi detailní bug report s ukázky a videii, tak snad to bude moci opravit.

Ještě jsem se chtěl zeptat na 64bitovou verzi. Jakým způsobem se volájí ty COM objekty z 64 bitového prostředí. Autor ActionScriptRuby psal, že
If you use 32bit COM DLL, Ruby-2.3-x64 can not run it because it's x64 server. (Win32 COM dll does not have 32-64 bit thunk)
Jak to dělá vbscript nebo jscript, když volají z 64bitového 32bitový COM objekt? Jsou tam nějaké wrappers nebo nějak jinak je to řešeno?

manison
Plugin Developer
Plugin Developer
Posts: 216
Joined: 09 Dec 2005, 23:23
Location: Ceske Budejovice, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by manison » 22 Jan 2016, 21:02

Jak, ale pozná z tohoto klíče => [HKEY_CLASSES_ROOT\PHPScriptFile\ScriptEngine] @="PHPScript", že má spustit zrovna php, když tam není uvedena cesta? Repektivě jak se to potom propojuje v těch registrech?
To je docela dlouhý řetězec :) Ukážu to na příkladu JScriptu:

[HKCR\.js]@="JSFile"
[HKCR\JSFile\ScriptEngine]@="JScript"
[HKCR\JScript\CLSID]@="{f414c260-6ac0-11cf-b6d1-00aa00bbbb58}"
[HKCR\CLSID\{f414c260-6ac0-11cf-b6d1-00aa00bbbb58}\InprocServer32]@="C:\WINDOWS\system32\jscript.dll"

Knihovna JScript.dll pak obsahuje implementaci skriptovacího stroje pro jazyk JScript.
Jakým způsobem se volájí ty COM objekty z 64 bitového prostředí. Autor ActionScriptRuby psal, že
If you use 32bit COM DLL, Ruby-2.3-x64 can not run it because it's x64 server. (Win32 COM dll does not have 32-64 bit thunk)
Jak to dělá vbscript nebo jscript, když volají z 64bitového 32bitový COM objekt? Jsou tam nějaké wrappers nebo nějak jinak je to řešeno?
32bitovou DLL nelze načíst do 64b procesu a obráceně. Proto Windows obsahují 32b verzi JScript.dll pro 32b aplikace (C:\Windows\SysWOW64\jscript.dll) a 64b verzi JScript.dll pro 64b aplikace (C:\WINDOWS\system32\jscript.dll). Pokud máte nainstalován 64b balík ActionScriptRuby, pak musíte spouštět skripty v 64b verzi Salamandera.

User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos » 29 Jan 2016, 14:36

Díky za informace. Povídám si stále s tím vývojářem, tak uvidíme k čemu se dobereme.
To je docela dlouhý řetězec :) Ukážu to na příkladu JScriptu:

[HKCR\.js]@="JSFile"
[HKCR\JSFile\ScriptEngine]@="JScript"
[HKCR\JScript\CLSID]@="{f414c260-6ac0-11cf-b6d1-00aa00bbbb58}"
[HKCR\CLSID\{f414c260-6ac0-11cf-b6d1-00aa00bbbb58}\InprocServer32]@="C:\WINDOWS\system32\jscript.dll"

Knihovna JScript.dll pak obsahuje implementaci skriptovacího stroje pro jazyk JScript.
U ActionRubyScriptu jsem vypátral napojení:

[HKCR\.rb]@="RubyScriptFile"
[HKCR\RubyScript\ScriptEngine]@="RubyScript"
[HKCR\RubyScript\CLSID]@="{456A3763-90A4-4F2A-BFF1-4B773C1056EC}"
[HKCR\CLSID\{456A3763-90A4-4F2A-BFF1-4B773C1056EC}\InprocServer32]@="c:\Ruby-2.2\bin\RScript22.dll"

Ale i přesto to nefunguje, asi chybí implementovaná nějaká funkcionalita v RScript22.dll
Jakým způsobem se volájí ty COM objekty z 64 bitového prostředí. Autor ActionScriptRuby psal, že
If you use 32bit COM DLL, Ruby-2.3-x64 can not run it because it's x64 server. (Win32 COM dll does not have 32-64 bit thunk)
Jak to dělá vbscript nebo jscript, když volají z 64bitového 32bitový COM objekt? Jsou tam nějaké wrappers nebo nějak jinak je to řešeno?
32bitovou DLL nelze načíst do 64b procesu a obráceně. Proto Windows obsahují 32b verzi JScript.dll pro 32b aplikace (C:\Windows\SysWOW64\jscript.dll) a 64b verzi JScript.dll pro 64b aplikace (C:\WINDOWS\system32\jscript.dll). Pokud máte nainstalován 64b balík ActionScriptRuby, pak musíte spouštět skripty v 64b verzi Salamandera.
Jasně, takže musí být x64 bitová knihovna, aby se to dalo volat z x64 Salamandra. (teď to testuji na x32 salamandrovi)

User avatar
tukanos
Posts: 322
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos » 04 Feb 2016, 10:16

Po několika iteracích s vývojářem mám funkční verzi pro můj testovací system winXP 32bit (podrobnosti sepíši později sem). Mám funkční RScript.dll knihovnu a windows pozná a spustí jak xml soubor (*.wsf) v němž je ruby i funguje normální spouštění přes wscript a cscript. Jenom Automation plugin nerozpozná cestu, pro .rb file, když je dám do plugin adresáře.

Lze nějak jednoduše ověřit všechny cesty co Automation plugin vidí?

P.S. Cesta v registrech je správně (ostatně bez toho nefunguje jak wscript tak cscript.

Post Reply