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 [email protected], "Mike" <sfclimb...@...> 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 [email protected], "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 [email protected], "ozzyapeman" <zoopfree@> wrote:
> > >
> > > Thanks, Mike.
> > >
> > >
> > > --- In [email protected], "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 [email protected], "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
> > > > > VBScripts, 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 )
> > > > >
> > > >
> > >
> >
>

Reply via email to