Re: Scripting question...

Date : Thu, 27 Dec 2007 22:33:16 +0100
To : XSI(at)Softimage.COM
From : Guy Rabiller <guy.rabiller(at)tek2shoot.com>
Subject : Re: Scripting question...

Quoting the doc.. :

"The best way to create an ActiveX object is to use the CreateActiveXObject (XSIFactory) <XSIFactory_CreateActiveXObject.htm#RztXSIFactoryCreateActiveXObject> method which is available to any supported scripting language. The principal advantage of this method is that it does not trigger warning messages in Net View, unlike some of the following scripting languagesâ native functions"

--
guy rabiller | cg r&d manager (at) tek2shoot / def2shoot (.com)




Bradley Gabe a Ãcrit :
They both create the same collection object.
The main difference , I think, is instantiating the new ActiveXObject only works when you are inside the XSI scripting envrionment for jscript/vbscript. If you are writing an application using the MS scripting framework outside of XSI, such as a Netview or web interface for XSI, you'll need to access the XSI object factory to instantiate XSI specific collections.
On Dec 27, 2007 1:00 PM, Ponthieux, Joey <j.ponthieux(at)nasa.gov <mailto:j.ponthieux(at)nasa.gov>> wrote:


    Yeah, your right, I interpreted this from VBScript code in XSI docs. I
    rarely use VBScript and I assumed that it was directly interchangable
    with JSCript. This raises an interesting point though. I was unaware
    that there are commands derived for specific languages as opposed
    to the
    languages only changing the basic constructs and syntax. I see
    from the
    man pages that these are accepted methods for creating an
    XSICollection.

    VBScript
       Set oColl = CreateObject("XSI.Collection")
       set oColl = XSIFactory.CreateActiveXObject( "XSI.Collection " )

    JScript
       var oColl = new ActiveXObject("XSI.Collection") ;
       var oColl = XSIFactory.CreateActiveXObject("XSI.Collection");


So I think the question I really meant to ask was what is the difference between

       var oColl = new ActiveXObject(" XSI.Collection") ;
    and
       var oColl = XSIFactory.CreateActiveXObject("XSI.Collection");

    You've answered that in how it might relate to NetView, but if you are
    not writing scripts to be used in NetView is it otherwise assumed
    that
    they are identical commands? I've been using XSIFactory, I wasn't sure
    if this was considered the norm or the exception.

    Thanks


Joey Ponthieux NCI Information Systems Inc. NASA Langley Research Center ____________________________________________________________ Opinions stated here-in are strictly those of the author and do not represent the opinions of NASA or any other party.



    Bernard Lebel wrote:
    > There is no such thing as CreateObject in JScript. You're either
    > referring to the VBScript function for creating ActiveX objects,
    or to
    > new ActiveXObject() of JScript.
    >
    > I was once told that using the XSIFactory methods in-place of the
    > language constructs (new ActiveXObject() for JScript, CreateObject()
    > for VBScript) prevented security issues when that code is ran in
    > NetView, as ActiveX is generally considered unsecure in browsers.
    > That's all I know!
    >
    >
    > Cheers
    > Bernard
    >
    >
    >
    > On Dec 27, 2007 11:21 AM, Ponthieux, Joey < j.ponthieux(at)nasa.gov
    <mailto:j.ponthieux(at)nasa.gov>> wrote:
    >
    >> Is there any fundamental difference between
    >>
    >>     var oColl = XSIFactory.CreateActiveXObject("XSI.Collection ");
    >>
    >> and
    >>
    >>     var oColl = CreateObject( "XSI.Collection" );
    >>
    >> and is it better  to use one versus the other?
    >>
    >>
    >>
    >> --
    >> Joey Ponthieux
    >> NCI Information Systems Inc.
    >> NASA Langley Research Center



---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi


Search the XSI List archives here or use the advanced search form to search across mailing lists. Searching help is available.
This site supposedly brought to you by Benjamin Grosser and the Imaging Technology Group.