Forum
Merhaba,
WindowsFormsApp ile Excel dosyası oluşturup mail gönderiyorum.
Aynı kodlar ile Windows Service oluşturduğumda hata alıyorum.
CLSID değerine bileşen için COM sınıfı fabrikasını alma, yandaki hata nedeniyle başarısız oldu. 80080005 Sunucu çalıştırması başarısız (HRESULT özel durum döndürdü: 0x80080005 (CO_E_SERVER_EXEC_FAILURE).
DCOM Microsoft Excel Application Kimlik kısmında Etkileşimli Kullanıcı ve Başlatan Kullanıcı seçenekleri denendi ama sonuç aynı. Yardımlarınız için şimdiden teşekkür ederim.
Not : Denemeler SERVER değilde, Pc üzerinde yapılmaktadır.
Kodlar
Microsoft.Office.Interop.Excel.Application Excel = new Microsoft.Office.Interop.Excel.Application();
Excel.Application.Workbooks.Add(Type.Missing);
Excel.Columns.NumberFormat = "@";
for (int i = 0; i < Dt.Columns.Count; i++)
{
Excel.Cells[1, i + 1] = Dt.Columns[i].ColumnName.ToString();
}
for (int i = 0; i < Dt.Rows.Count; i++)
{
for (int j = 0; j < Dt.Columns.Count; j++)
{
Excel.Cells[i + 2, j + 1] = Dt.Rows[i][j].ToString();
}
}
Excel.Columns.AutoFit();
Excel.DisplayAlerts = false;
string path = @"D:\XXXXX_" + DateTime.Now.Day.ToString() + "-" + DateTime.Now.Month.ToString() + "-" + DateTime.Now.Year.ToString();
Excel.ActiveWorkbook.SaveAs(path, Microsoft.Office.Interop.Excel.XlFileFormat.xlOpenXMLWorkbook,
Type.Missing, Type.Missing, false, false, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Microsoft.Office.Interop.Excel.XlSaveConflictResolution.xlUserResolution, true, Type.Missing, Type.Missing, Type.Missing);
Excel.ActiveWorkbook.Close(Type.Missing, Type.Missing, Type.Missing);
Excel.Quit();
İyi çalışmalar.