[[Property:title|18 Executing a System Within and Without EiffelStudio]] [[Property:link_title|Executing a System Within and Without EiffelStudio]] [[Property:weight|5]] [[Property:uuid|8256398e-d1a9-0471-664a-3225c7dfb306]] To complete this study of the compilation process let's see a few more properties of how you can execute an Eiffel system, both in EiffelStudio and as a compiled system that you deliver to its users, who may need to run it without EiffelStudio.
ARGUMENTS . There is another technique -- using the arguments to the root creation procedure -- but using ARGUMENTS is the most general way. Any class of your system can inherit from ARGUMENTS and use queries argument_count to know the number of arguments passed to the execution, and argument ( i ) , for i between 1 and argument_count to access the i -th element. Class ARGUMENTS has more features; since you have Eiffelstudio up, you can check the details if you wish (use the contract form).
There are 2 ways to specify execution arguments from within EiffelStudio. The first is through the Project --> Project Settings --> Debug/Profile --> Program Execution tab. The second is through the argument dialog which can be opened by right-clicking on any of the debugging or program execution buttons on the main toolbar. The latter is more convenient for quick and easy access to execution arguments.
project_directory/EIFGENs/target_name/F_code
where project_directory is the project's directory and target_name ist the name of the target. The name of the executable file is system_name .exe , where system_name is the name that you have assigned to your system in the project settings (reflected in the ECF file).
The target of the Guided Tour system is classic and the name is simple , so you can locate simple . exe in EIFGENs/classic/F_code for your project, and run it stand-alone if you like.
If you run the system from a command line, and it requires arguments ( simple doesn't), you will provide the appropriate arguments after the command name:
system_name.exe ... arg ...
Because various platforms have different conventions, "relative paths" referenced in your system will mean something different under Unix/Linux, where they relate to the directory from which the command is launched, and under Windows, where they relate to the application's directory.
system_name . melted file in project_directory /EIFGENs/target_name/W_code .