I have a asmx web service which is just calls a method below KayitKontrol(). That method is using a com object. It works on my local machine but when it try it on server 2008 it stops at creating com object class Kernel.I have same settings on both iis. I couldn't figure out for a week. I profiled it with fiddler it just doesn't respond giving 504 response.
I didn't install application server. Is it something about it?
private void KayitKontrol()
{
using (SqlConnection conn = new SqlConnection("server=" + serverName + ";initial catalog=" +
dataBase + ";integrated security=false;uid=" +
sqlUser + ";password=" + sqlPass + ";"))
{
try
{
foreach (var el in kasalist)
{
try
{
LogYaz("Kasa Kayıt Atılıyor.");
Kernel kernel = new Kernel();//stops right here which is com object.
Sirket sirket = default(Sirket);
Kasa kasa = default(Kasa);
sirket = kernel.yeniSirket(TVTTipi.vtMSSQL,
el.Sirket,
"TEMELSET",
"",
netUser,
netPass,
0);
kasa = kernel.yeniKasa(sirket);
kasa.KsMas_Kod = el.KasaKodu; //Kasa Kodu
kasa.IO = "C";
kasa.Tip = "C";
kasa.Kod = el.CariKodu; //Cari Kodu
kasa.Fisno = el.Fisno;
kasa.CariHareketAciklama = "Avans ödemesi(e-flow)";
kasa.Aciklama = el.Aciklama;
kasa.Tutar = el.TlTutar;
kasa.Plasiyer_Kodu = "3500";
kasa.Tarih = el.Tarih;
kasa.DovizTut = el.DovTutar;
kasa.DovizTipi = el.Dovtipi;
kasa.Islem(TKasaIslem.tkCariOdeme);
Marshal.ReleaseComObject(kasa);
Marshal.ReleaseComObject(sirket);
kernel.FreeNetsisLibrary();
Marshal.ReleaseComObject(kernel);
}
catch (Exception exception)
{
LogYaz(exception.ToString());
}
finally
{
LogYaz("1 kasa kaydı atıldı.");
}
}
}
}
catch (Exception exception)
{
LogYaz(exception.ToString());
}
}
I found the problem. It was about the identity account in iis application pool settings. I set an administrator account there and it is working now. I am a newbie.