[Gelöst] Keine COM-Instanzen nach einer Zeitspanne (RTC)

13. Oktober 2015 12:16

Hallo zusammen,
wir führen über den NAV-Web-Service ein paar Logiken in bestimmten Intervalen aus. Die ersten 2-3 Versuche klappen wunderbar. Irigendwann geht es aber auf einmal nicht mehr und es können keine Instanzen mehr von COM-Objekten erstellt werden. Es kommen dann folgende Fehlermeldungen:

Unable to create an instance of Automation Server System.__ComObject with CLSID = bcfdf354-728d-4584-b3a2-1aaf84e64943 Retrieving the COM class factory for component with CLSID {BCFDF354-728D-4584-B3A2-1AAF84E64943} failed due to the following error: 800703fa..
Unable to create an instance of Automation Server System.__ComObject with CLSID = 5b79e1ec-d452-4c0a-a62a-ba529490d983 Retrieving the COM class factory for component with CLSID {5B79E1EC-D452-4C0A-A62A-BA529490D983} failed due to the following error: 800703fa..
Unable to create an instance of Automation Server System.__ComObject with CLSID = 6df5e86b-6a73-4de3-b4ca-4332201cd773 Retrieving the COM class factory for component with CLSID {6DF5E86B-6A73-4DE3-B4CA-4332201CD773} failed due to the following error: 800703fa..


usw..

Es sieht so aus, dass der Service Tier nach einen gewissen Zeit keine Instanzen mehr von COM-DDL's erstellen kann. Nach den dem Neustart der NST-Windows Dienste geht es erstmal. Hat jemand eine Idee was sein kann?

Hier noch ein paar Versionsinformationen:
NAV Version: NAV 2009 SP1
Betriebssystem (Service Tier Host): Windows Server 2012 R2 Standard
Zuletzt geändert von f.ritz am 15. Oktober 2015 08:58, insgesamt 1-mal geändert.

Re: Keine COM-Instanzen nach einer Zeitspanne (RTC)

15. Oktober 2015 08:58

Hallo,
falls es interessant sein sollte - wir haben das Problem gelöst indem wir den NST-Diensten Domain-User hinterlegt und die benötigten SPN's gesetzt haben.

Was wir aber noch nicht gelöst haben ist, dass der Service Tier in den Ereignisslog folgende Meldung schreibt:
Type: System.IO.IOException
Message: The process cannot access the file '__TEMP__06520AFF66934A459ACE038781CC2578.tmp' because it is being used by another process.
StackTrace:
at System.IO.Directory.DeleteHelper(String fullPath, String userPath, Boolean recursive)
at System.IO.Directory.Delete(String fullPath, String userPath, Boolean recursive)
at System.IO.Directory.Delete(String path, Boolean recursive)
at Microsoft.Dynamics.Nav.Runtime.TempPathHelper.RemovePath(String path)
Source: mscorlib


...sonst läuft es aber.