LOBJECTT.DLL -Retrieving the COM class factory for component with CLSID.. hatası

Başlatan cengiz_ozdemir, 30.09.2014, 12:46

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

cengiz_ozdemir

LOBJECJT.DLL  WCF kullanarak IIS üzerinden bağlanmak istiyorum.

UnityObjects.UnityApplication UnityApp = new UnityObjects.UnityApplication();  // satırırında hata veriyor.

HATA:

Retrieving the COM class factory for component with CLSID {72DB412A-6BF5-4920-A002-2AAC679951DF}
failed due to the following error: 80070005 Erişim engellendi. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)).

ByBirol®


A.Memmedov

IIS servere 64 bit oldukda bu hata verir.LObjects 32 bitdir. 32 bit dll register etmek icin IIS parametrelerende bazi seyler deyismelidir

vedatg

Sn Memmedov,

Bizde aynı sorunu yaşamaktayız,

Acaba IIS 'te nelerin değişmesi gerekiyor ?

yousemeti


sezerkupeli

Merhaba,
Server değişikliğine gittik ve 32 bit olan server yerine yeni 64 bit server kuruldu. Server kurulduktan sonra Logo üzerinde malzeme kartı açtıran programın kod bloğundaki ilk satır olan
"malz = Uapp.NewDataObject(DataObjectType.doMaterial); " satırında "System.Runtime.InteropServices.COMException: 'Çok zararlı hata'" hatası meydana gelmeye başladı. Bu işlemi visual basic ile gerçekleştirebilirken C#'da gerçekleştirememiş olmam ISS ile bir bağlantısı olup olmadığı konusunda şüpheler uyandırdı. Referansları her şeyi kontrol ettim ancak visual basic ile arasında bir fark da yok. Hata nereden kaynaklanıyor olabilir acaba?


ByBirol®


sezerkupeli

Alıntı yapılan: ByBirol® - 15.12.2017, 19:29
projenizi debug edip nerde takıldığına bakınız

Birol bey "malz = Uapp.NewDataObject(DataObjectType.doMaterial); " satırında takılıyor. Yeni bir malzeme fişi oluşturma işleminin başladığı satır.

ByBirol®

           En basit şekilde ;

            UnityObjects.Data Itm = Global.UnityApp.NewDataObject(UnityObjects.DataObjectType.doMaterial);
            Itm.New();
            Itm.DataFields.FieldByName("CARD_TYPE").Value = 1;
            Itm.DataFields.FieldByName("CODE").Value = "MALZEME.771";
            Itm.DataFields.FieldByName("NAME").Value = "Logo Objects Sample Item";
            Itm.DataFields.FieldByName("AUXIL_CODE").Value = "SPECODE";
            Itm.DataFields.FieldByName("USEF_PURCHASING").Value = 1;
            Itm.DataFields.FieldByName("USEF_SALES").Value = 1;
            Itm.DataFields.FieldByName("USEF_MM").Value = 1;
            Itm.DataFields.FieldByName("UNITSET_CODE").Value = "05";
            Itm.DataFields.FieldByName("SELVAT").Value = 18;
            Itm.DataFields.FieldByName("RETURNVAT").Value = 18;

            if (!Itm.Post())
            {
                ErrorControl(Itm);
            }