Link to home
Start Free TrialLog in
Avatar of jdfagan
jdfaganFlag for United States of America

asked on

JScript runtime error: Permission denied when trying to access ActiveXObject from within a .js file that is invoked via a Stored Proc in SQL Server 2008

I can successfully invoke a .js JavaScript file from within a Stored Proc via xp_cmdshell @command:

SET @Command = @TargetDir + 'ImportDataToAmiBroker.cmd';
EXECUTE xp_cmdshell @Command;

The problem appears to be particular lines of code within the JavaScript fail due to permissions denied.  This .js file works fine from non administrator command prompt within Vista via command such as this:  "cscript ImportDataToAmiBroker.js C:\Users\AmiBroker\data.quiksilver quiksilver.format quiksilver.symbol-info.format C:\Users\TickData\AmiBroker".  It is just failing on this line of code (line 57) when being invoked via stored proc.  Broker.Application refers to a valid app that can be controlled programmatically via OLE:

    var ab = new ActiveXObject("Broker.Application");

Here is the output I receive from SQL Server 2008 Management Studio

NULL
C:\Windows\system32>cd /d C:\Users\TickData\AmiBroker
NULL
C:\Users\TickData\AmiBroker>cscript ImportDataToAmiBroker.js C:\Users\AmiBroker\data.quiksilver quiksilver.format quiksilver.symbol-info.format C:\Users\TickData\AmiBroker
Microsoft (R) Windows Script Host Version 5.7
Copyright (C) Microsoft Corporation. All rights reserved.
NULL
Arguments:
Ami Database Folder = C:\Users\AmiBroker\data.quiksilver
Quotes Format FileName = quiksilver.format
Symbol Info Format FileName = quiksilver.symbol-info.format
Import Data Folder = C:\Users\TickData\AmiBroker
NULL
C:\Users\TickData\AmiBroker\ImportDataToAmiBroker.js(57, 5) Microsoft JScript runtime error: Permission denied
NULL
NULL

Note, I have "Everyone" group added to C:\Users\TickData\ and C:\Users\AmiBroker\ folders with "Full Control" permissions.  Subsequent child folders'/files' security permissions within these folders are inherited from parent.

Details of SQL Server 2008 Install:

Microsoft SQL Server Management Studio                                    10.0.2531.0
Microsoft Analysis Services Client Tools                                    10.0.1600.22
Microsoft Data Access Components (MDAC)                                    6.0.6002.18005
Microsoft MSXML                                    3.0 5.0 6.0
Microsoft Internet Explorer                                    8.0.6001.18783
Microsoft .NET Framework                                    2.0.50727.4016
Operating System                                    6.0.6002
.cmd file - Command shell script:
 
cd /d C:\Users\TickData\AmiBroker
cscript ImportDataToAmiBroker.js C:\Users\AmiBroker\data.quiksilver quiksilver.format quiksilver.symbol-info.format C:\Users\TickData\AmiBroker
 
.js file - JavaScript snippet:
 
    alert("Arguments:\n" +
            "Ami Database Folder = " + amiDatabaseFolder + "\n" +
            "Quotes Format FileName = " + quotesFormatFileName + "\n" +
            "Symbol Info Format FileName = " + symbolInfoFormatFileName + "\n" +
            "Import Data Folder = " + importDataFolder + "\n"
            );
 
    var ab = new ActiveXObject("Broker.Application");

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of jdfagan
jdfagan
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial