Trying to run an external exe file in ruby

T

Thijs Janzen

Hi chaps,

I'm trying to write a little script that can run several
programs after eacht other.

currently I have this:

Code:
require "ftools"
maxAlpha = 1.0 * 1/10
name3 = "MaxAlpha_"+ maxAlpha.to_s
target = name3
value = "0\n" + maxAlpha.to_s
File.open('feed.txt', 'w') do |f2|
f2.puts(value)
$end
system("E:\\Ruby_things\\Mastermind.exe")

Now, the Mastermind.exe is supposed to create a config file, based on
the input he reads from "feed.txt". When executed from outside ruby, it
creates a perfect configfile. When, however, Mastermind.exe is called
from within ruby, using the script as above, it all of a sudden is not
able to create output based on "feed.txt". It is able to open it, but
read in values are not stored anymore, and thus not written to the
config file.

Are there any restrictions or such to running C++ based exe files from
within ruby?
 
W

William James

Thijs said:
Hi chaps,

I'm trying to write a little script that can run several
programs after eacht other.

currently I have this:

Code:
require "ftools"
maxAlpha = 1.0 * 1/10
name3 = "MaxAlpha_"+ maxAlpha.to_s
target = name3
value = "0\n" + maxAlpha.to_s
File.open('feed.txt', 'w') do |f2|
f2.puts(value)
$end
system("E:\\Ruby_things\\Mastermind.exe")

Now, the Mastermind.exe is supposed to create a config file, based on
the input he reads from "feed.txt". When executed from outside ruby,
it creates a perfect configfile. When, however, Mastermind.exe is
called from within ruby, using the script as above, it all of a
sudden is not able to create output based on "feed.txt". It is able
to open it, but read in values are not stored anymore, and thus not
written to the config file.

Are there any restrictions or such to running C++ based exe files from
within ruby?

Are you sure that Mastermind.exe is looking in the correct
directory? I believe that the current directory for the exe
will be the directory in which Ruby was invoked.


--
 
T

Thijs Janzen

William said:
Are you sure that Mastermind.exe is looking in the correct
directory? I believe that the current directory for the exe
will be the directory in which Ruby was invoked.

yes, that is correct.
Actually, the ruby file, and the Mastermind.exe file are in the exact
same directory.

Mastermind.exe does indeed run, it creates the config.ini, BUT the
parameter that is supposed to have 'feeded' to it, by means of reading
out "feed.txt", is NOT passed on to the config.ini...
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,994
Messages
2,570,223
Members
46,810
Latest member
Kassie0918

Latest Threads

Top