[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[amibroker] Re: How to run multiple parallel AA functions using VBscript?



PureBytes Links

Trading Reference Links



Thanks Mike. That makes sense. :-)

I guess what I am also trying to figure out - is how do I launch said scripts without having to manually open a command prompt and manually type in something like the following for each of the 8 scripts:

c:\runasspc\runasspc.exe /program:"c:\myVBscript.vbs /user:"AB03" /password:"passAB03" /quiet

I am not familiar with WShell, or creating BAT files, or even with launching the command prompt from within a script.

How would I write a simple script that would simply run the above line within the command prompt? So that when I double click on such a file, the above referenced _vbscript_ launches under the correct user? I am sure this is a simple thing to do, I just have no idea how, and wading through various manuals has not helped so far.

Of course in a worse case scenario, I could just manually type the above sort of thing into the command prompt for each script I want to launch, but that feels unnecessarily primitive.


--- In amibroker@xxxxxxxxxxxxxxx, "Mike" <sfclimbers@xxx> wrote:
>
> You run the _vbscript_ as the other user! Anything done from within the script will be done as the user of which the script was launched.
>
> Whatever means you were using to run the script as the current user, just do the same using your runas utility.
>
> Mike
>
> --- In amibroker@xxxxxxxxxxxxxxx, "ozzyapeman" zoopfree@ wrote:
> >
> > Okay, since I am using Windows Vista, which does not have the same RunAs
> > utility as Win XP, I had to install a utility, RunAsSPC. That utility
> > works fine in manual testing.
> >
> > For example, if I am logged in as User: AB01 but want to open broker.exe
> > under User: AB03, I just type the following in the command prompt:
> >
> > cd c:\runasspc
> >
> > c:\runasspc\runasspc.exe /program:"c:\Program Files
> > (x86)\Amibroker\Broker.exe" /user:"AB03" /password:"passAB03" /quiet
> >
> > And it will open broker.exe under AB03 while I remain logged in as AB01.
> >
> > But the issue that is still dogging me is - how do I now integrate the
> > above with my _vbscript_ to ensure that when I create the broker object,
> > that it does so under user AB03, intead of user AB01?
> >
> > In other words, what goes at the top of the following _vbscript_ code? Do
> > I need to add some kind of windows script to call the above command
> > line, or some other script that allocates any actions to a specific
> > user? Anyone have any idea what such a line would look like? I am going
> > through the Windows Script Host manual, and I find it somewhat
> > confusing.
> >
> > Thanks for any input.
> >
> >
> > dim AB
> > set AB = CreateObject("Broker.Application")
> >
> > dim AA
> > set AA = AB.Analysis
> >
> > AB.LoadDatabase( Database )
> > AA.LoadSettings( Settings )
> > AB.ActiveDocument.Name = "EURUSD" ' Set EURUSD as active document
> >
> >
> > AA.LoadFormula( Formula1 ) ' load formula from
> > external file
> > AA.ApplyTo = 1 ' use
> > current symbol
> > AA.RangeMode = 3 ' use 'From'
> > and 'To' dates
> > AA.RangeFromDate = FromDate
> > AA.RangeToDate = ToDate
> > AA.Optimize( 0 )
> >
> >
> > --- In amibroker@xxxxxxxxxxxxxxx, "ozzyapeman" <zoopfree@> wrote:
> > >
> > > Thanks, Mike.
> > >
> > >
> > > --- In amibroker@xxxxxxxxxxxxxxx, "Mike" sfclimbers@ wrote:
> > > >
> > > > You will need to run each instance as a separate user. Each user
> > must have permission to run the application. It is not necessary to log
> > in/out of each user account to start the process.
> > > >
> > > > You can read the setup requirements of MCO in the Files section of
> > this group for setting up the users. Then just use the built in Windows
> > "runas" command to fire off each process from a single account but
> > running as a different user.
> > > >
> > > > http://support.microsoft.com/kb/294676
> > > >
> > > > Keep in mind that if you are using AddToComposite, you will run into
> > trouble whenever you have multiple instances of AmiBroker running
> > against the same database (each will write over the other, last write
> > wins). You can overcome that by generating dynamic composite names (e.g.
> > based on the user name).
> > > >
> > > > Mike
> > > >
> > > > --- In amibroker@xxxxxxxxxxxxxxx, "ozzyapeman" <zoopfree@> wrote:
> > > > >
> > > > > Recently I've been automating some of my optimizations and
> > backtests
> > > > > using external _vbscript_.
> > > > >
> > > > > When I run Amibroker manually, I can usually run up to 6 separate
> > > > > instances under a single User, which allows me to run
> > optimizations on 6
> > > > > different AFLs simultaneously. But when I try to run 6 different
> > > > > _vbscript_s, each calling a unique AFL, they collide which each
> > other, and
> > > > > cause errors.
> > > > >
> > > > > Without logging out, and logging back into windows as a separate
> > User,
> > > > > how can I automate multiple optimizations using scripting?
> > > > >
> > > > > Below is a typical snippet of code. How do I instruct _vbscript_ to
> > call a
> > > > > unique Broker.Application, so that all scripts do not try to call
> > the
> > > > > exact same instance of Amibroker? Is this even possible? Thanks
> > for any
> > > > > input.
> > > > >
> > > > >
> > > > > dim AB
> > > > > set AB = CreateObject("Broker.Application")
> > > > >
> > > > > dim AA
> > > > > set AA = AB.Analysis
> > > > >
> > > > > AB.LoadDatabase( Database )
> > > > > AA.LoadSettings( Settings )
> > > > > AB.ActiveDocument.Name = "EURUSD" ' Set EURUSD as active
> > document
> > > > >
> > > > >
> > > > > AA.LoadFormula( Formula1 ) ' load formula
> > from
> > > > > external file
> > > > > AA.ApplyTo = 1 '
> > use
> > > > > current symbol
> > > > > AA.RangeMode = 3 ' use
> > 'From'
> > > > > and 'To' dates
> > > > > AA.RangeFromDate = FromDate
> > > > > AA.RangeToDate = ToDate
> > > > > AA.Optimize( 0 )
> > > > >
> > > >
> > >
> >
>


__._,_.___


**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.

TO GET TECHNICAL SUPPORT send an e-mail directly to
SUPPORT {at} amibroker.com

TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/





Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___