Win32::OLE problem

Win32::OLE problem

am 10.01.2009 21:16:37 von Dorian Winterfeld

This is a multi-part message in MIME format.

--===============0656879635==
Content-type: multipart/alternative;
boundary="----=_NextPart_000_0187_01C97336.6E97F350"

This is a multi-part message in MIME format.

------=_NextPart_000_0187_01C97336.6E97F350
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi,
=20
I have a Web based Win32::OLE script that uses Excel on the server side. =
It has been working happily for years on a Win2000 server running =
Excel2000. We recently upgraded to Win2003/Excel2003 and I now get the =
following error from the script:

Win32::OLE(0.1709) error 0x80070005: "Access is denied" at =
create_worksheet_lib.plx line 637
eval {...} called at create_worksheet_lib.plx line 637

line 637 is:=20
$Excel =3D Win32::OLE->new('Excel.Application', 'Quit') or return 0;

This appears to be a permissions problem as nothing has changed in the =
script. Any Windows gurus out there that might be able to help trouble =
shoot this?

Thanks in advance - dorian@uaqa.com
------=_NextPart_000_0187_01C97336.6E97F350
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable



charset=3Diso-8859-1">




Hi size=3D2>,

 

I have a Web based Win32::OLE script =
that uses=20
Excel on the server side.  It has been working happily for years on =
a=20
Win2000 server running Excel2000.  We recently upgraded to=20
Win2003/Excel2003 and I now get the following error from the=20
script:

 

Win32::OLE(0.1709) error 0x80070005: =
"Access is=20
denied" at create_worksheet_lib.plx line 637
 eval {...} called =
at=20
create_worksheet_lib.plx line 637

 

line 637 is:
$Excel =
Win32::OLE->new('Excel.Application', 'Quit') or return =
0;

 

This appears to be a permissions =
problem as nothing=20
has changed in the script.  Any Windows gurus out there that might =
be able=20
to help trouble shoot this?

 

Thanks in advance - href=3D"mailto:dorian@uaqa.com">dorian@uaqa.com
HTML>

------=_NextPart_000_0187_01C97336.6E97F350--



--===============0656879635==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
--===============0656879635==--

Re: Win32::OLE problem

am 12.01.2009 01:37:52 von Justin Allegakoen

--===============1702513897==
Content-Type: multipart/alternative;
boundary="----=_Part_85675_24139485.1231720672581"

------=_Part_85675_24139485.1231720672581
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

2009/1/11 Dorian Winterfeld

> Hi,
>
> I have a Web based Win32::OLE script that uses Excel on the server side.
> It has been working happily for years on a Win2000 server running
> Excel2000. We recently upgraded to Win2003/Excel2003 and I now get the
> following error from the script:
>
> Win32::OLE(0.1709) error 0x80070005: "Access is denied" at
> create_worksheet_lib.plx line 637
> eval {...} called at create_worksheet_lib.plx line 637
>
> line 637 is:
> $Excel = Win32::OLE->new('Excel.Application', 'Quit') or return 0;
>
> This appears to be a permissions problem as nothing has changed in the
> script. Any Windows gurus out there that might be able to help trouble
> shoot this?
>


Sounds as if the IIS limited access web account and its settings in Win2K3
are preventing you from creating the Excel file in the desired server side
directory.

Write the file to a shared drive where Everyone has Write perms. You will of
course have to evaluate the security risks this may present to your setup.

Cheers,
Just in

------=_Part_85675_24139485.1231720672581
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline



2009/1/11 Dorian Winterfeld <>








Hi,

 

I have a Web based Win32::OLE script that uses
Excel on the server side.  It has been working happily for years on a
Win2000 server running Excel2000.  We recently upgraded to
Win2003/Excel2003 and I now get the following error from the
script:

 

Win32::OLE(0.1709) error 0x80070005: "Access is
denied" at create_worksheet_lib.plx line 637
 eval {...} called at
create_worksheet_lib.plx line 637

 

line 637 is:
$Excel =
Win32::OLE->new('Excel.Application', 'Quit') or return 0;

 

This appears to be a permissions problem as nothing
has changed in the script.  Any Windows gurus out there that might be able
to help trouble shoot this?



Sounds as if the IIS limited access web account and its settings in Win2K3 are preventing you from creating the Excel file in the desired server side directory.

Write the file to a shared drive where Everyone has Write perms. You will of course have to evaluate the security risks this may present to your setup.


Cheers,
Just in


------=_Part_85675_24139485.1231720672581--

--===============1702513897==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
--===============1702513897==--

Re: Win32::OLE problem

am 13.01.2009 01:39:27 von Justin Allegakoen

--===============1478470740==
Content-Type: multipart/alternative;
boundary="----=_Part_100269_30003422.1231807167529"

------=_Part_100269_30003422.1231807167529
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

>
> *2009/1/11 Dorian Winterfeld
> *
>>
>> * * * **Hi,*
>> * ** *
>> * **I have a Web based Win32::OLE script that uses Excel on the server
>> side. It has been working happily for years on a Win2000 server running
>> Excel2000. We recently upgraded to Win2003/Excel2003 and I now get the
>> following error from the script:*
>> * ** *
>> * **Win32::OLE(0.1709) error 0x80070005: "Access is denied" at
>> create_worksheet_lib.plx line 637
>> eval {...} called at create_worksheet_lib.plx line 637*
>> * ** *
>> * **line 637 is:
>> $Excel = Win32::OLE->new('Excel.Application', 'Quit') or return 0;*
>> * ** *
>> * **This appears to be a permissions problem as nothing has changed in
>> the script. Any Windows gurus out there that might be able to help trouble
>> shoot this?*
>> * *
>>
> *
>
> Sounds as if the IIS limited access web account and its settings in Win2K3
> are preventing you from creating the Excel file in the desired server side
> directory.
>
> Write the file to a shared drive where Everyone has Write perms. You will
> of course have to evaluate the security risks this may present to your
> setup.
>
> Cheers,
> Just in
> *
>
> * *
> *
>
> *
>
> *Offline you wrote:-
**
**2009/1/13 Dorian Winterfeld
* *Thanks Justin, I did try setting the output folder to
everyone/full-control but that didn't do it. It seems that in this case
"Access is denied" because Win32::OLE doesn't have access to Excel. It's
failing when it tries to create a new OLE Excel object. At least that is
what I think. I set the Excel permissions to everyone/full-control as well
but that didn't do it either. So I am stuck for now.....*
* *
*- Dorian *
* *

My apologies. I did this years ago and have only just had my memory jolted.
Calling Win32::OLE on a server from a client if you think about it is a
serious security threat (think about getting macros to execute server side).
I do remember writing ASPs on Win2K with IIS 5 and then migrating to Win2K3
with a whole load of problems because the newer IIS (6) was locked down a
lot more. My guess is IIS 5 allowed calling of Win32::OLE whereas IIS6
doesnt.

I was able to overcome IIS6 by using the Spreadsheet::WriteExcel and
SpreadSheel::ReadExcel modules. These modules will require installation on
your web server, but they do run on *nix if thats any consolation. The bad
news is of course moving forward would mean a rewrite of your script. Now
theres a happy new year for you . . .

Just in

------=_Part_100269_30003422.1231807167529
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


2009/1/11 Dorian Winterfeld <>



Hi,

 

I have a Web based Win32::OLE script that uses
Excel on the server side.  It has been working happily for years on a
Win2000 server running Excel2000.  We recently upgraded to
Win2003/Excel2003 and I now get the following error from the
script:

 

Win32::OLE(0.1709) error 0x80070005: "Access is
denied" at create_worksheet_lib.plx line 637
 eval {...} called at
create_worksheet_lib.plx line 637

 

line 637 is:
$Excel =
Win32::OLE->new('Excel.Application', 'Quit') or return 0;

 

This appears to be a permissions problem as
nothing has changed in the script.  Any Windows gurus out there that
might be able to help trouble shoot this?



Sounds as if the IIS limited
access web account and its settings in Win2K3 are preventing you from creating
the Excel file in the desired server side directory.

Write the file to
a shared drive where Everyone has Write perms. You will of course have to
evaluate the security risks this may present to your
setup.

Cheers,
Just in



Offline you wrote:-

2009/1/13 Dorian Winterfeld <>








Thanks Justin, I did try setting the output folder
to everyone/full-control but that didn't do it.  It seems that in this case
"Access is denied" because Win32::OLE doesn't have access to Excel. 
It's failing when it tries to create a new OLE Excel object.  At least
that is what I think.  I set the Excel permissions to everyone/full-control
as well but that  didn't do it either.  So I am stuck for
now.....

 

- Dorian  




My apologies. I did this years ago and have only just had my memory jolted. Calling Win32::OLE on a server from a client if you think about it is a serious security threat (think about getting macros to execute server side). I do remember writing ASPs on Win2K with IIS 5 and then migrating to Win2K3 with a whole load of problems because the newer IIS (6) was locked down a lot more. My guess is IIS 5 allowed calling of Win32::OLE whereas IIS6 doesnt.


I was able to overcome IIS6 by using the Spreadsheet::WriteExcel and SpreadSheel::ReadExcel modules. These modules will require installation on your web server, but they do run on *nix if thats any consolation. The bad news is of course moving forward would mean a rewrite of your script. Now theres a happy new year for you . . .


Just in


------=_Part_100269_30003422.1231807167529--

--===============1478470740==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
--===============1478470740==--

RE: Win32::OLE problem

am 15.01.2009 16:56:35 von Ken Cornetet

This is a multi-part message in MIME format.

--===============2009554213==
Content-class: urn:content-classes:message
Content-Type: multipart/alternative;
boundary="----_=_NextPart_001_01C97729.D8A46213"

This is a multi-part message in MIME format.

------_=_NextPart_001_01C97729.D8A46213
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

When you install IIS6, it removes read/execute permission for the
IUSR_XXXX user from lots of places.=20

=20

You could create a separate site or virtual folder and have it run under
a different user id. Be sure you understand the security ramifications
of this however.

=20

From: activeperl-bounces@listserv.ActiveState.com
[mailto:activeperl-bounces@listserv.ActiveState.com] On Behalf Of Justin
Allegakoen
Sent: Monday, January 12, 2009 7:39 PM
To: activeperl@listserv.activestate.com
Subject: Re: Win32::OLE problem

=20

2009/1/11 Dorian Winterfeld

Hi,

=20

I have a Web based Win32::OLE script that uses Excel on
the server side. It has been working happily for years on a Win2000
server running Excel2000. We recently upgraded to Win2003/Excel2003 and
I now get the following error from the script:

=20

Win32::OLE(0.1709) error 0x80070005: "Access is denied"
at create_worksheet_lib.plx line 637
eval {...} called at create_worksheet_lib.plx line 637

=20

line 637 is:=20
$Excel =3D Win32::OLE->new('Excel.Application', 'Quit') or
return 0;

=20

This appears to be a permissions problem as nothing has
changed in the script. Any Windows gurus out there that might be able
to help trouble shoot this?

=09
=09
Sounds as if the IIS limited access web account and its
settings in Win2K3 are preventing you from creating the Excel file in
the desired server side directory.
=09
Write the file to a shared drive where Everyone has
Write perms. You will of course have to evaluate the security risks this
may present to your setup.
=09
Cheers,
Just in

=09
=09
=20

Offline you wrote:-

2009/1/13 Dorian Winterfeld

Thanks Justin, I did try setting the output folder to
everyone/full-control but that didn't do it. It seems that in this case
"Access is denied" because Win32::OLE doesn't have access to Excel.
It's failing when it tries to create a new OLE Excel object. At least
that is what I think. I set the Excel permissions to
everyone/full-control as well but that didn't do it either. So I am
stuck for now.....

=20

- Dorian =20



My apologies. I did this years ago and have only just had my memory
jolted. Calling Win32::OLE on a server from a client if you think about
it is a serious security threat (think about getting macros to execute
server side). I do remember writing ASPs on Win2K with IIS 5 and then
migrating to Win2K3 with a whole load of problems because the newer IIS
(6) was locked down a lot more. My guess is IIS 5 allowed calling of
Win32::OLE whereas IIS6 doesnt.

I was able to overcome IIS6 by using the Spreadsheet::WriteExcel and
SpreadSheel::ReadExcel modules. These modules will require installation
on your web server, but they do run on *nix if thats any consolation.
The bad news is of course moving forward would mean a rewrite of your
script. Now theres a happy new year for you . . .=20

Just in


------_=_NextPart_001_01C97729.D8A46213
Content-Type: text/html;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40">


charset=3Dus-ascii">









style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif" ;
color:#1F497D'>When you install IIS6, it removes read/execute permission =
for
the IUSR_XXXX user from lots of places.



style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif" ;
color:#1F497D'> 



style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif" ;
color:#1F497D'>You could create a separate site or virtual folder and =
have it
run under a different user id. Be sure you understand the security
ramifications of this however.



style=3D'font-size:11.0pt;font-family:"Calibri","sans-serif" ;
color:#1F497D'> 



0in 0in 0in'>

style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"' >From:=
style=3D'font-size:10.0pt;font-family:"Tahoma","sans-serif"' >
activeperl-bounces@listserv.ActiveState.com
[mailto:activeperl-bounces@listserv.ActiveState.com] On Behalf Of =
Justin
Allegakoen

Sent: Monday, January 12, 2009 7:39 PM

To: activeperl@listserv.activestate.com

Subject: Re: Win32::OLE problem





 





1.0pt;padding:0in 0in 0in 6.0pt;
margin-left:4.8pt;margin-right:0in'>



1.5pt;padding:0in 0in 0in 4.0pt;
margin-left:3.75pt;margin-top:5.0pt;margin-right:0in;margin- bottom:5.0pt'=
>



2009/1/11 Dorian Winterfeld < href=3D"mailto:dorian@uaqa.com" =
target=3D"_blank">dorian@uaqa.com>







style=3D'font-size:10.0pt;font-family:"Arial","sans-serif"'> Hi, >







 







style=3D'font-size:10.0pt;font-family:"Arial","sans-serif"'> I
have a Web based Win32::OLE script that uses Excel on the server =
side.  It
has been working happily for years on a Win2000 server running =
Excel2000. 
We recently upgraded to Win2003/Excel2003 and I now get the following =
error
from the script:







 







style=3D'font-size:10.0pt;font-family:"Arial","sans-serif"'> Win32::OLE(0.=
1709)
error 0x80070005: "Access is denied" at =
create_worksheet_lib.plx line
637

 eval {...} called at create_worksheet_lib.plx line =
637







 







style=3D'font-size:10.0pt;font-family:"Arial","sans-serif"'> line
637 is:

$Excel =3D Win32::OLE->new('Excel.Application', 'Quit') or return =
0;







 







style=3D'font-size:10.0pt;font-family:"Arial","sans-serif"'> This
appears to be a permissions problem as nothing has changed in the =
script. 
Any Windows gurus out there that might be able to help trouble shoot =
this?













Sounds as if the IIS limited access web account and its settings in =
Win2K3 are
preventing you from creating the Excel file in the desired server side
directory.



Write the file to a shared drive where Everyone has Write perms. You =
will of
course have to evaluate the security risks this may present to your =
setup.



Cheers,

Just in



href=3D"http://listserv.ActiveState.com/mailman/mysubs"
target=3D"_blank">













Offline you wrote:-



2009/1/13 Dorian Winterfeld < href=3D"mailto:dorian@uaqa.com">dorian@uaqa.com>
>



style=3D'font-size:10.0pt;font-family:"Arial","sans-serif"'> Thanks
Justin, I did try setting the output folder to everyone/full-control but =
that
didn't do it.  It seems that in this case "Access is =
denied"
because Win32::OLE doesn't have access to Excel.  It's failing =
when
it tries to create a new OLE Excel object.  At least that is =
what I
think.  I set the Excel permissions to everyone/full-control as =
well but
that  didn't do it either.  So I am stuck for =
now.....







 







style=3D'font-size:10.0pt;font-family:"Arial","sans-serif"'> -
Dorian  









My apologies. I did this years ago and have only just had my memory =
jolted.
Calling Win32::OLE on a server from a client if you think about it is a =
serious
security threat (think about getting macros to execute server side). I =
do
remember writing ASPs on Win2K with IIS 5 and then migrating to Win2K3 =
with a
whole load of problems because the newer IIS (6) was locked down a lot =
more. My
guess is IIS 5 allowed calling of Win32::OLE whereas IIS6 doesnt.



I was able to overcome IIS6 by using the Spreadsheet::WriteExcel and
SpreadSheel::ReadExcel modules. These modules will require installation =
on your
web server, but they do run on *nix if thats any consolation. The bad =
news is
of course moving forward would mean a rewrite of your script. Now theres =
a
happy new year for you . . .



Just in









------_=_NextPart_001_01C97729.D8A46213--

--===============2009554213==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
--===============2009554213==--