Link to home
Start Free TrialLog in
Avatar of arapahoe
arapahoe

asked on

ActiveX component can't create object

I have visual basic program that calls to excel and save if html format a xls file.

When I execute it inside on cgi (with iis) gives the error "Error: 429 ActiveX component can't create object"
when execute the instruction 'Set objExcel = CreateObject("excel.application")' .... but the same procedure works if I execute it
in the environment of development of visual basic.

Why?

This is the code:

    Dim objExcel As Excel.Application
    Dim objBook  As Excel.Workbook
   
    Set objExcel = CreateObject("excel.application")
    objExcel.Visible = False
    Set objBook = objExcel.Workbooks.Open(FitxerOrigen)
    objBook.SaveAs FileName:=FitxerDesti, FileFormat:=xlHtml, ReadOnlyRecommended:=False, CreateBackup:=False
    objBook.Close False
    objExcel.Quit
Avatar of dij8
dij8
Flag of New Zealand image

Is Excel installed on the IIS server?  Does the IIS server have the right permissions set?  I have never tried an excel object but maybe the folder running this command needs execute permissions (as opposed to none or script).
Avatar of arapahoe
arapahoe

ASKER

this folder have 'Scripts and Executables' permissions
Could very well be a version difference of Excel, as soon as you have a different version of Excel installed on the server as on the development environment, you are likely to get errors like this..

Let me know, and I'll see if I can help...

Max.
only have a one version off the office 2000 installed in my server.

Thanks
And what is installed on the development environment??

The way I understand it, is that you are having a lower version of Excel installed on the development machine.

As far as I know, Excel 2000 is called in a different way, the dll for that is different then that of the older version, and therefor the call to that object would be different. I'm not sure, but I think it was:

Set objExcel = CreateObject("excel9.application")

The error 429, means that the application cannot find the dll, and therefor cannot instantiate the object you request it to instantiate.

If I were you, I'd give this a look...

Max.
The developer environment is the IDE of the Visual Basic 6.0 (sp5)

The createobject("excel.application") work fine when is issued by the user in the ide of visual basic.

Only not work if it is executed inside a cgi (this is started by IIS)
I mean....what version of Excel is installed on the development environment???

If the versions are the same there should be no problem getting the Active-X to work from inside IIS either...

Max.
Office 2000....but inside IIS not work!!! :-((

Maybe is a IIS protection?
ASKER CERTIFIED SOLUTION
Avatar of DreamMaster
DreamMaster

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

Hello,

This question has been open for quite a while now and needs to be wrapped up.

EXPERTS: If any of the experts could come back and post any suggestions as to how they feel this could be wrapped up (delete, 0 PAQ, award points, etc), I'm sure the moderators would appreciate it.  If you feel you deserve points here, but don't care to respond, the question might very well get DELETED.

ASKER:  Please return and finalize this question.  Abandoning a question is in violation of the member agreement.

Please do NOT accept this comment as an answer, as I am simply trying to alert those involved that the question is still open.

Thank you,

BRUNO
I gave as much help as I possibly could, in the end got no more response. I feel my efforts are worth the points..

Max.
I think there is enough information here to keep it in the PAQ list.  And agree that Max should get the points.
Hello,

This question seems to have been abandoned.

I have put it on a cleanup list for Community Support with the following suggestion.

<suggestion>
    Points to DreamMaster
</suggestion>

arapahoe, if you feel your question was not answered, you can post a request in Community Support and ask them to refund your points.
     https://www.experts-exchange.com/commspt/

EXPERTS: If anyone has a problem with the suggestion, please leave a comment for the moderators.

Thanks!


BRUNO
-- EE cleanup volunteer


posted by: Dan's Cleanup Helper Tool ver 1.01
Comment from expert accepted as answer

Computer101
E-E Moderator