Създаване на Com грешка 80004005

Опитвам се да стартирам FoxPro в Windows 2012,

Регистрирах dll с помощта на regsvr32

Когато се опитам да стартирам приложението с помощта на dll, получих това

Грешка: Създаването на екземпляр на COM компонента с CLSID {F6C4F46E-58A4-4774-802F-1CF9E64376B0} от IClassFactory не бе успешно поради следната грешка: 80004005. Проследяване: в Lib.FoxProWrapper..ctor(String ODBC, String Acct, String Pswd) в App.Processor..ctor(String SrvType, String ServiceName) в App.App.startApp()


person ConfusedUser    schedule 07.05.2015    source източник
comment
Все още извежда същата грешка...   -  person ConfusedUser    schedule 08.05.2015
comment
@MattMcNabb Не, 0x80004005 е E_FAIL Неопределена грешка. Вие мислите за 0x80070005 E_ACCESSDENIED   -  person Igor Tandetnik    schedule 08.05.2015
comment
@IgorTandetnik о, да. IIRC 80040005 е това, което получавате, когато COM обектът се сблъска с грешка по време на създаване (което може да се дължи на това, че не може да зареди зависимост)   -  person M.M    schedule 08.05.2015


Отговори (1)


Предполагам, че тук говорите за COM DLL, създаден с Visual FoxPro и по всичко личи, че се опитвате да го инстанциирате в C#.

Уверете се, че имате правилно инсталирани времена за изпълнение. Можете да ги изтеглите тук.

person Alan B    schedule 08.05.2015
comment
Runtimes коригира проблема, аз го поправих, като стартирах инсталатора на prereq от foxpro. - person ConfusedUser; 08.05.2015
comment
Алън, искаш ли да уточниш как всичко е свързано? Опитвам се да разбера това под капака - person ConfusedUser; 08.05.2015
comment
Е, можете да погледнете това Wiki: fox.wikis.com/wc .dll?Wiki~VFP9RuntimeFiles~VFP Това предполага VFP9, има подобни страници за по-ранни версии. Можете да видите там съответните VFP DLL файлове и техните зависимости. Предполагам, че ти липсва едно от тях. - person Alan B; 08.05.2015