Итак, наш программист покинул гнездо, и мы перешли к решению Win2012. Веб-сайт работает нормально, все хорошо, за исключением Excel, и, в частности, только одна строка кода дает сбой.
Мы запускаем ASP classic для веб-сайта в IIS, объект Excel создается отлично, диаграмма сохраняется вправильная папка, но при попадании:
wb.SaveAs "D: \ WEBSITES \ test.xls"
страница выдается с ошибкой 500, а затем оставляет в памяти Excel в диспетчере задач,Если я удаляю сохранение в XLS, JPG прекрасно сохраняет данные с графика, а код продолжает работать и корректно закрывается. Поскольку код между сервером 2003 года и этим сервером 2012 года не изменился, я немного озадачен тем, почему он решает потерпеть неудачу сейчас.
Любая помощь с этим будет наиболее ценной, я не знаю, занимаюсь веб-вещами и когда я делаюЭто нормально, чтобы разобраться с проблемами COM, и так как он работает, это просто серьезная проблема, что этот бит не работает. Заранее спасибо ! :)
<%
Dim xlapp ' Our Excel App
Dim wb ' Our Workbook within the Excel App
Dim ws ' Our Worksheet within the Workbook
Dim crt ' The chart object
Dim SourceRange ' The Source Range for the chart object
Const xlWorkSheet = -4167
Const xlLineMarkers = 65
Set xlapp = CreateObject("Excel.Application")
Set wb = xlapp.Workbooks.Add(xlWorksheet)
Set ws = wb.Worksheets(1)
xlapp.DisplayAlerts = false
Set SourceRange = ws.Range("A3:B6")
Set crt = ws.ChartObjects.Add(0, 0, 480, 383)
crt.Chart.ChartWizard SourceRange, 3, , 2, 1, 0, 2, "Virgin Chaser Report " & formatdatetime(now(),2)
crt.Chart.ChartType = 51
crt.Chart.HasTitle = True
crt.Chart.ChartTitle.Text = "Virgin Chaser Report " & formatdatetime(now(),2)
crt.Chart.ChartTitle.AutoScaleFont = false
crt.Chart.ChartTitle.font.Name = "Arial"
crt.Chart.ChartTitle.font.Size = 12
crt.Chart.ChartTitle.font.Strikethrough = False
crt.Chart.ChartTitle.font.Superscript = False
crt.Chart.ChartTitle.font.Subscript = False
crt.Chart.ChartTitle.font.OutlineFont = False
crt.Chart.ChartTitle.font.Shadow = False
crt.Chart.Export "D:\WEBSITES\test.jpg"
wb.SaveAs "D:\WEBSITES\test.xls"
wb.Saved = True
Set crt = Nothing
Set wb = Nothing
xlapp.Quit
Set xlapp = Nothing
response.end()
%>