Hallo zusammen

Ich beziehe mich mit meiner Frage auf den Artikel "Ein Excel-Sheet am Server
generieren und zum Client schicken
" (http://www.aspheute.com/artikel/20010305.htm).

Lasse ich das Script (verwendeter Code siehe "Verwendeter Code 1" am Ende
dieses Textes) laufen, erhalte ich diese Fehlermeldung (das Excel-File wird
sauber erstellt):


Serverobjekt- Fehler 'ASP 0178 : 80070005' 

Server.CreateObject-Zugriffsfehler 

/super.asp, line 55 

Server.CreateObject konnte beim Überprüfen der Berechtigungen nicht
aufgerufen werden. Der Zugriff auf dieses Objekt wurde verweigert. 


Wobei Linie 55:
Set objFileCache = Server.CreateObject("Softwing.FileCache.1")


Zuerst dachte ich an einen Komponenten-Fehler (obwohl registriert gemäss
Anleitung). Also entfernte ich die letzten Zeilen Code, welche für das
Senden des Files an den Client zuständig sind. Meine Idee war, dass jedes
Mal, wenn jemand die Seite besucht, das File neu erstellt und über einen
herkömmlichen Link zum download angeboten wird.

Beim Testen bemerkte ich, dass wenn ich die Seite aufrufe und bereits eine
alte Version im Ordner liegt, das Script irgendwie blockiert. D.h. der blaue
Statusbalken unten rechts der Mitte bewegt sich ganz langsam gegen rechts.
Nach einiger Zeit bleibt er stehen. Fertig.

Also wollte ich über das FileSystemObject das Excelfile vorgängig löschen.
(Verwendeter Code am Ende des Textes unter "Verwendeter Code 2"). Dies
gelang mir nicht. Gleiches Resultat wie bereits beschrieben: das Script
blockiert. Ohne Fehlermeldung.

Die Permissions habe mehr als grosszügig gesetzt. Permissions auf dem
Folder:

Administrator = Vollzugriff
Administratoren = Vollzugriff
IIS-Prozesskonto (IWAM_STANDBY) = Lesen, Ausführen, Ordnerinhalt auflisten,
Lesen
Internetgastkonto (IUSR_STANDBY) = Vollzugriff
Web Anonymous Users = Vollzugriff
Web Applications = Vollzugriff

Bereits versucht habe ich, mich als IUSR am Rechner anzumelden und ihn so
laufen zu lassen. Ohne Erfolg.
Überprüft habe ich auch die Besitzverhältnisse (d.h. wer hat die Datei
erstellt). Nichts.
IIS-Lockdown (incl. URL-Scan) habe ich rückgängig gemacht.

System: Windows 2000 advanced ServerFileSystemObject mit allen Patches,
Updates und SPs
Programm: Excel 2000 Professional


WER KANN MIR SAGEN, WARUM DAS SCRIPT BEIM SENDEN DES FILES ZUM CLIENT
UND/ODER BEIM LÖSCHEN BLOCKIERT?


Besten Dank!


Oliver



-----------------------------
Verwendeter Code 1:


<% @ Language="VBScript" %>
<% 
Response.Buffer=True
Response.Clear

Dim xlApp,xlBook,xlSheet,objConn,objRS,iRow
Dim objFileCache,bXlsFile,strFileName
iRow = 4
strFileName = "MyExcelBook.xls"
Set xlApp = Server.CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets(1)

xlApp.Application.Visible = False

With xlApp.ActiveSheet.Cells(1,1)
        .Value = "Overall Product Sales 2000"
        .Font.Bold = True
        .Font.Name = "Tahoma"
        .Font.Size = 16
End With

With xlApp.ActiveSheet.Cells(3,1)
        .Value = "Product Name"
        .Font.Italic = True
        .Font.Name = "Tahoma"
        .Font.Size = 13
        .MergeCells = True
End With

With xlApp.ActiveSheet.Cells(3,2)
        .Value = "Product Income"
        .Font.Italic = True
        .Font.Name = "Tahoma"
        .Font.Size = 13
        .MergeCells = True
End With

xlApp.ActiveSheet.Cells(3,1).Value = "Feld1"
xlApp.ActiveSheet.Cells(3,2).Value = "Feld 2"
xlApp.ActiveSheet.Cells(3,3).Value = now()

xlSheet.SaveAs Server.MapPath(strFileName)

xlApp.Application.Quit

Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing

Set objFileCache = Server.CreateObject("Softwing.FileCache.1")
bXlsFile = objFileCache.InitFromFile(strFileName, False)
objFileCache.MimeType = "application/octet-stream"
bXlsFile = objFileCache.Write()

'Response.End
%>


-----------------------------
Verwendeter Code 2:

<%
dim filesys
Set filesys = CreateObject("Scripting.FileSystemObject")

If filesys.FileExists(server.MapPath("MyExcelBook.xls")) = true Then
   Response.Write("Will File löschen. ")
   filesys.DeleteFile server.MapPath("MyExcelBook.xls")
   Response.Write("File weg...")
Else
   Response.Write("Kein File da.")
End If
%>


~~~~~~~~~~~~~~~~~~~~~~~~~~~sponsored by United Planet~~~~~~~~~~~~~~~~~
Ein flexibles CMS für lau?
ATTACK! Download Intrexx CRM-Studio Now!   http://www.intrexx.com
_______________________________________________
Advanced.asp mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/advanced.asp

Antwort per Email an