I have created an Excel template with with over 18,000 lines of VBA code, about 100 modules/classes/forms, 31 DLL declarations, and one reference to an addin I also created. This template has worked fine for many years, for many users, in
two different companies.
About a week ago one user had one of his computers upgraded from WinXP to Win 7 and Office 2007. He also has another computer with WinXP and Office 2007. He used to be able to use the template on the first computer, but now can’t.
So he tried to use the workbook on the other computer. He cannot use the workbook on either computer now. He can open Excel and the addin that is referenced by the offending template, but when he opens the template (or workbook created from the
template) he gets the following error message:
«System Error &H80040111 (-2147221231) ClassFactory cannot supply requested class»
after he clears the error message the VBA IDE opens up and an ‘Out of Memory’ message appears. If he tries to close the editor he gets a message stating ‘This will stop the debugger..». If he clicks Continue he gets the ‘Out of Memory’ message
again. This repeats about four times and then he can exit the editor.
I cannot check the Tools/References to see if he is missing a reference because it is greyed out. I did check to make sure he had the referenced dll’s (in Windows/System32) that were not in the addin referenced above.
What could be causing this problem?
Thanks.
terger |
||||
1 |
||||
23.04.2010, 22:09. Показов 15429. Ответов 1 Метки нет (Все метки)
Всем Здравствуйте!
после запуска в командной строке написали что копирование прошло успешно и теперь при запуске Exel с макросом пишет http://peltiertech.com/WordPre… ing-error/ здесь что-то есть. но на англ ( может кто знает как это исправить? |
1605 / 1337 / 291 Регистрация: 25.10.2009 Сообщений: 3,487 Записей в блоге: 2 |
|
24.04.2010, 01:27 |
2 |
«I have tried a wide range of remedies. A few involve chicken’s blood at full moon, but most…» — улыбнуло))) Попытка повторной регистрации RedEdit.dll не помогает, а также её копия с более новой версии 2.Недавно я обнаружил, что почти все случаи ошибок в Excel 2003 обнаруживаются и исправляются при помощи «Help menu» . 2007 Excel — Excel Options > Resources > Run Microsoft Office Diagnostics > Diagnose (бла бла бла,иногда помогает) И дальше статья как починять ексель
0 |
Ошибка
- при вызове расчётного блока программы УПРЗА Эколог из программы ПДВ-Эколог
или
- при формировании файла с расширением *.int
"Требуемый класс отсутствует в classFactory"
Способы решения
то для её разрешения рекомендуем выполнить ручную регистрацию системной библиотеки, введя следующую команду:
- для Windows 2000:
c:winntsystem32regsvr32 c:windowssystem32ecoint.dll
- для 32-bit Windows XP, Windows Vista и Windows 7:
c:windowssystem32regsvr32 c:windowssystem32ecoint.dll
- для 64-bit Windows Vista и Windows 7:
c:windowssysWOW64regsvr32 "c:windowssysWOW64ecoint.dll"
Например, Вы можете нажать кнопку «Пуск», выбрать из меню команду «Выполнить» и набрать или вставить указанный выше текст.
Примечание
Пути к файлам (c:windowssystem и пр.) указаны выше для случая установки операционной системы Windows по умолчанию. Если система установлена на Вашем компьютере не на диск C или в другой каталог, Вам придется соответственным образом изменить текст команды.
В случае успешного выполнения команды на экране должно появиться сообщение вида:
DllRegisterServer in c:windowssystem32ecoint.dll succeeded
Using Visual Studio 2008 I first encountered this when trying to open a standard save file dialog box in visual basic. So far I’ve worked around it after fruitless searching. Now I find that any action which would cause a save/open dialog (eg. ctrl-O) also fails. I’ve searched more and still don’t know how to fix it.
Stuff I do know:
It’s not a Visual Studio error, it apparently can occur in any number of other applications (which is why searching for it is annoying)
It’s either .NET or COM related, I tried reinstalling all of .NET with no luck, and I’ve never mucked around with COM ever, I don’t really even know what it is.
Something is missing, misplaced, or it could be DLL version issues.
I really don’t want to deal with uninstalling VS2008, or MS Office (as one result I found suggested) or any other big application.
Jim Counts
12.4k9 gold badges45 silver badges63 bronze badges
asked Mar 9, 2009 at 1:15
2
The underlying problem here is that a CoCreateInstance is failing. Without attaching a debugger and breaking in CoCreateInstance it’s going to be fairly difficult to track down what the problem is. And even if you spend the time to do this, it’s unlikely that you’ll be able to fix the error.
I agree that a re-install is a last resort. But an in-between step is to attempt to repair the install. If you re-insert the VS Setup Disk, one of the options will be to «Repair» the installation. You may have to go through Add/Remove Programs to get this option.
A Repair is much faster than uninstall/reinstall and will very likely fix this particular issue.
EDIT
OP reported repair succeeded but did not fix the error. Can you check the event log and see if a more specific error is being generated for this failure?
answered Mar 9, 2009 at 2:51
JaredParJaredPar
727k147 gold badges1232 silver badges1450 bronze badges
2
So, somebody, somewhere is trying to CoCreate some object that it (thinks) it needs to do its job. This may or may not be a Visual Studio object. Since it manifests in the Save / Open dialog it could very well be a shell object.
The most likely explanation is the registry entry for the object has been corrupted in some way, or the dll that exports the object is corrupted in some way. For the latter it could be missing completely, or just in a bad state for some reason.
One thing you can try doing is running regsvr32 on likely candidate DLLs, but that’s just shooting in the dark.
Another, more advanced option is to attach a debugger (such as ntsd or windbg) to the Visual Studio process it self and set a breakpoint on CoCreateInstance() in the system dll (make sure to look up its exact signature in the header file—it may be #defined to something else). Then get the GUID for the object that it is passing as the argument to CoCreateInstance(). Looking this up in your registry (or a friends registry that doesn’t have this issue) should give you a good idea of what DLL you need to go mess with.
answered Mar 9, 2009 at 1:23
i_am_jorfi_am_jorf
53.4k15 gold badges130 silver badges221 bronze badges
6
I’ve faced similar issue with VS 2008 and luckily it got solved with the below solution. Try this!!
Locate devenv.exe.
Right click >Properties > Uncheck Disable Visual Themes Option
answered Mar 1, 2010 at 10:03
Unchecking Disable Visual Themes
didn’t work for me, but running in xp compatibility mode fixed it. I’m assuming the problem is a missing dll.
answered Apr 28, 2010 at 18:42
- Remove From My Forums
-
Question
-
HI all I am getting above error in macro enabled excel files. How to resolve it . Can anyone please help.
Thanks
Want to add MVP with my name.
Answers
-
I solved it by installing office 2010
Want to add MVP with my name.
-
Marked as answer by
Calvin_Gao
Tuesday, June 7, 2011 8:28 AM
-
Marked as answer by
All replies
-
-
Proposed as answer by
System Error and H80040111 (-2147221231) Class fac
Sunday, April 14, 2019 8:55 AM
-
Proposed as answer by
-
0x8 errors are normally read/write permission errors. I also seen recently that a memory stack error where a person was only sending 6 parameters to a function that had a parameter list of 5 parameters also caused a 0x8 error. Another
possiblity is you are in an endless loop an keep on calling the same function recursively would over flow the stack and may cause this type error. Also check your Public and Private variables/functions. You may have a error with your code accessing private
data outside the class.
jdweng
-
Proposed as answer by
System Error and H80040111 (-2147221231) Class fac
Sunday, April 14, 2019 8:47 AM
-
Proposed as answer by
-
Hi sir thanks .
But I am not able to view macro code when I am opening View->Open Macro ( list of macro is opened ) and also error prompt comes up. I have to click 8 times to hide it . again when I click on any of the macro in the list same prompt comes up
and again to hide it I have to click 8 times. If I press (ctrl + s) in the template same error occurs.Thanks
Want to add MVP with my name.
-
You may have a virus on your computer or spyware on your PC. Sometimes just clearing out your IE history removes the cookies which are causing problems like this. I’m not sure why just trying to view the macros is causing error messages
to appear. This is not normal.Do you get errors in compiling from VBA menu — Debug — Compile Project? What line of code is causing the compiling errors if you have any.
0x8 are run time errors but it seems like you can’t even view the macros. You may have some addin which needs to be disabled from VBA menu «addins». The try compiling/executing again.
jdweng
-
I solved it by installing office 2010
Want to add MVP with my name.
-
Marked as answer by
Calvin_Gao
Tuesday, June 7, 2011 8:28 AM
-
Marked as answer by