Microsoft visual c runtime library ошибка r6030
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
Solution: Visual C++ Runtime Error: R6030 -CRT not initialized
Solution: Visual C++ Runtime Error: R6030 -CRT not initialized
02-27-2015 09:16 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Email to a Friend
I'm starting this thread as information for others. I had an issue in CVI2013 that I didn't have with CVI8.1:
I have a project that uses NI libraries (vision and imaqdx amongst others) and two 32bit libraries (one is for a USB motion controller and the other for an ethernet motion controller). In CVI8.1, this compiles and runs fine, but in CVI2013, it compiles but when I execute it, I get a Visual C++ Runtime Error: R6030 -CRT not initialized. I uninstalled and re-installed all of the VC++ redistributables from 2005 to 2013 with no luck. I also removed my AVG antivirus and replaced it with MSE with no luck. UAC is off on this machine.
1) I have a small test application with just the ethernet library (and some NI libraries but NOT the vision) and it runs fine in CVI2013
2) If I use just the USB library, my project (which also uses the vision library) works fine
2) If I use just the ethernet library, my project (which also uses the vision library) has the VC++ error
After a lot of searching on the Windows side of things, I realized that I might have the same problem as this thread:
Since I could not rewrite the DLL (supplied by 3rd party), I decided to try a few things. I was initialliy linking the DLL statically by adding the .LIB file to my project so I switched to using dynamic linking with the Windows API (LoadLibrary()). Writting the necessary GetProcAddress() calls for all of the functions is the worst part in going this route, but some headers include those.
This resolved the crash issue in CVI2013 and works in CVI8.1 as well.
09-13-2016 01:08 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Email to a Friend
I'm having an almost identical problem with CVI 2015 (15.0.0).
I added a DLL (test1.dll) to a program thats been working for years and now it throws a C++ Runtime Error: "Runtime Error! . R6030 -CRT not initialized" error every time upon execution, debug and release mode.
I tried including the DLL as the only DLL in a test project and it works fine.
After trying to track this down for a day, I finally noticed that the error occured in the DllMain function of a different DLL (CAN.dll) during the DLL_PROCESS_ATTACH.
CAN.dll called InitCVIRTE(hinstDLL, 0, 0) without a problem. The very next line I had
panelHandle = LoadPanelEx(0, "zzz.uir", PANEL, hinstDLL);
The C++ Runtime Error happened when executing this line.
This method of loading a panelHandle into global memory had worked fine for years, but for some reason with the addition of the test1.dll (the 11th dll in the project) it no longer works.
I went back to a separate test project and added only test1.dll and CAN.dll. Sure enough, those 2 DLL's could not play nicely together for some reason.
The solution was to rewrite the CAN.dll to not call LoadPanelEx from within DllMain. Instead I made a separate initDLL function that must be called first before using any of the others.
Even though it works, I don't really like the solution. If anyone knows why this is a problem or other potential fixes, please respond. I have yet to try the GetProcAddress() solution above since it would be a significant effort in my situation.
Для устранения этой ошибки попробуйте выполнить следующие действия:
- В программном обеспечении для обеспечения безопасности могут присутствовать определенные инструкции по устранению этой проблемы. Дополнительные сведения см. на веб-сайте поставщика программного обеспечения безопасности. Кроме того, можно проверить наличие обновленных версий программного обеспечения безопасности или использовать другое программное обеспечение для обеспечения безопасности.
- используйте страницу приложения и компоненты или программы и компоненты в панель управления , чтобы восстановить или переустановить программу.
- проверьте клиентский компонент Центра обновления Windows в панель управления для обновлений программного обеспечения.
- Проверьте наличие обновленной версии приложения. Если проблема не исчезнет, обратитесь к поставщику приложения.
Сведения для программистов
Эта ошибка возникает, если используется среда выполнения C (CRT), но код запуска CRT не был выполнен. эту ошибку можно получить, если параметр компоновщика /entry используется для переопределения начального адреса по умолчанию, обычно mainCRTStartup, вмаинкртстартуп для консольного exe-файла, винмаинкртстартуп или ввинмаинкртстартуп для Windows exe или _DllMainCRTStartup для библиотеки DLL. Если при запуске не вызывается ни одна из указанных выше функций, среда выполнения C не будет инициализирована. Эти функции запуска обычно вызываются по умолчанию при ссылке на библиотеку времени выполнения C и используют обычные точки входа Main, wmain, WinMainили DllMain .
Эту ошибку также можно получить, когда другая программа использует методы внедрения кода для перехвата определенных вызовов библиотеки DLL. Эта методика используется некоторыми программами безопасности. в версиях Visual C++ до Visual Studio 2015 можно использовать статическую связанную библиотеку CRT для решения этой проблемы, но это не рекомендуется по причинам безопасности и обновлений приложений. Для устранения этой проблемы могут потребоваться действия конечного пользователя.
Пролог Ноутбук с установленной системой Windows 7 Home Basic с большим количеством троянов и вредоносных программ. Антивирус Nod32 с окончившейся лицензией. Ноутбук пролечен AVZ, активирована чистая загрузка (отключены все службы не microsoft, очищена автозагрузка). Восстановлены параметры запуска explorer. По желанию заказчика установлен Kaspersky Internet Security 2013. Со слов клиента несколько месяцев назад перестала работать подпись документов в интернет банке Москомприватбанк. Подпись в данном интернет-банке реализована посредством JAVA апплета. Текущая версия Java была устаревшей. Обновления из консоли по какой то причине не устанавливались. Можно было проанализировать логи java, но быстрее было снести её и поставить актуальный пакет. При установке возникла проблема — после запроса UAC появлялось окно Microsoft Visual C ++ Runtime Library с ошибкой Runtime Error! R6030 — CRT not initialized. После перезагрузки выяснилось, что и skype при старте выдаёт аналогичную ошибку.
Хронология Все рекомендации по ошибке R6030 — CRT not initialized сводились к переустановке пакетов Microsoft Visual C++ 20xx Redistributable Package. После поочередного удаления компонентов Visual C++, java установщик выдавал всё ту же ошибку R6030. На одном из форумов участник описывал внедрение вызовов сторонней библиотеки в процессы системы. После анализа выяснилось, что библиотека cpadvai.dll внедряла в рабочие процессы некорректные функции. На компьютере сдавалась алкогольная декларация, при шифровании соответственно использовался софт КриптоПРО. Указанная выше библиотека принадлежала ему. Возможно, проблемы были в использовании не очень свежей версии КриптоПро. После удаления КриптоПро java установилась. На форуме КриптоПро пишут, что при инсталляции программ необходимо останавливать службу шифрования КриптоПро (в случае с данным ноутбуком это не решило проблему) пришлось удалить КриптоПро.
5 thoughts on “ Ошибка Runtime Error! R6030 — CRT not initialized. ”
Данная ошибка связанна либо вирус либо недостающие библиотеки VIsual Studio.Решение скачать антивирус»Kaspersky»просканировать на полную,если просканировали и ошибка не проходит качаем все Mocrosoft vicusl C++
Если вы читали статью, конечно система была проверенна на предмет вирусов. И пакеты Microsoft Visual C ++ Runtime Library переустанавливались. В статье есть ссылка на статью криптопро с проблемой.
Наконец-то. ура. Спасибо большое. дело действительно оказалось в криптопро… как давно я мучился с этой ерундой..
Рекомендация до сих пор актуальна! не устанавливались acrobat reader и касперский. Переустановка пакетов VC_REDIST ни к чему не привела. Хорошо, что нашел эту заметку. Огромное спасибо!. После удаления криптопро все заработало даже без переустановки vc_redist
Огромное спасибо!
Всё заработало!
Переустановка пакетов VC_REDIST не помогала.
Что ж, если вы недавно обновились до Windows 10 и установили последние обновления, похоже, в Windows 10 все работает хорошо.
Тем не менее, вам не нужно беспокоиться, потому что у нас есть исправление ошибки времени выполнения Visual C ++ в Windows 10, и вы можете продолжить нормальное использование операционной системы после этого.
В большинстве случаев, когда вы получаете ошибку времени выполнения Microsoft Visual C ++ в Windows 10, это происходит из-за конфликта между операционной системой и драйвером видеокарты, или функция Visual C ++ в Windows 10 может быть повреждена или повреждена.
В этом случае мы рекомендуем TweakBit Driver Updater (100% безопасный и протестированный нами), чтобы автоматически загружать все устаревшие драйверы на ваш компьютер.
Ошибка выполнения Microsoft Visual C ++ может быть проблематичной, и, говоря об ошибках, пользователи также сообщали о следующих проблемах:
- Удалить драйвер видеокарты
- Выполните Чистую загрузку
- Переустановите технический предварительный просмотр
- Переустановите распространяемые файлы Microsoft Visual C ++
- Создать новую учетную запись пользователя
- Отключить режим совместимости
- Переустановите проблемное приложение
Решение 1. Удалите драйвер графической карты
.
Драйвер видеокарты часто может вызвать ошибку времени выполнения Microsoft Visual C ++, и для ее исправления необходимо переустановить драйвер видеокарты, выполнив следующие действия:
- В строке поиска введите диспетчер устройств . Выберите Диспетчер устройств в списке результатов.
- Разверните раздел Адаптеры дисплея и щелкните правой кнопкой мыши видеокарту. Выберите в меню Удалить устройство .
- Появится меню подтверждения. Установите флажок Удалить программное обеспечение драйвера для этого устройства и нажмите Удалить .
- Закройте окно Диспетчер устройств и другие открытые вами окна.
- Перезагрузите компьютер с Windows 10.
Windows не может автоматически найти и загрузить новые драйверы? Не волнуйтесь, мы вас обеспечим.
Убедитесь, что вы все еще получаете ошибку времени выполнения Microsoft Visual C ++, а если нет, то это означает, что вам необходимо обновить драйвер графической карты до последней версии, совместимой с вашей версией системы Windows 10.
Чтобы узнать, как обновить драйверы, советуем ознакомиться с нашим руководством по обновлению драйвера видеокарты.
Решение 2 – Выполните Чистую загрузку
Иногда сторонние и запускаемые приложения могут мешать работе вашей системы и вызывать ошибку времени выполнения Microsoft Visual C ++. Чтобы решить эту проблему, вам нужно выполнить чистую загрузку, выполнив следующие действия:
- Нажмите Windows Key + R и введите msconfig . Теперь нажмите Enter или нажмите ОК , чтобы запустить его.
- Теперь перед вами окно Конфигурация системы . Щелкните левой кнопкой мыши или нажмите на вкладку Услуги , расположенную в верхней части этого окна. Установите флажок Скрыть все службы Microsoft . Нажмите левую кнопку мыши или нажмите на кнопку Отключить все .
- Щелкните левой кнопкой мыши или нажмите на вкладку Общие , расположенную в верхней части этого окна. Проверьте функцию Выборочный запуск . Снимите флажок Загружать элементы автозагрузки . Нажмите Применить и ОК , чтобы сохранить изменения.
- Перезагрузите компьютер с Windows 10.
Если вас интересует, как добавлять или удалять загрузочные приложения в Windows 10, ознакомьтесь с этим простым руководством.
Решение 3. Переустановите Windows 10
.
- Вам придется полностью переустановить операционную систему Windows 10, перейдя по ссылке ниже.
- После того, как вы успешно переустановили операционную систему, следуя инструкциям ниже, вам нужно будет убедиться, что вы не обновите свой компьютер, пока Microsoft не исправит проблемы с Visual C ++ Runtime Error.
Epic Guide alert! Переустановите Windows 10 с помощью нескольких быстрых шагов. Все, что вам нужно знать, прямо здесь.
Решение 4. Переустановите распространяемые файлы Microsoft Visual C ++
- Нажмите Windows Key + S и войдите в панель управления . Выберите Панель управления из списка.
- Когда Панель управления запустится, перейдите в раздел Программы и компоненты .
- Когда откроется окно Программы и компоненты , найдите Распространяемый Microsoft Visual C ++ и дважды щелкните его, чтобы удалить его.
Не удается открыть панель управления в Windows 10? Ознакомьтесь с этим пошаговым руководством, чтобы найти решение.
После удаления всех распространяемых файлов их необходимо загрузить с веб-сайта Microsoft. Имейте в виду, что вам придется установить все доступные распространяемые файлы, чтобы решить эту проблему.
Если вы не хотите удалять и загружать все распространяемые файлы, вы можете восстановить установку. Для этого выполните следующие действия:
- Выполните действия, описанные выше, и откройте Программы и компоненты .
- Теперь выберите распространяемый файл, который вы хотите восстановить, и нажмите Изменить .
- Когда появится окно Настройка , нажмите кнопку Восстановить и следуйте инструкциям на экране, чтобы завершить процесс восстановления.
Имейте в виду, что не все Redistributables поддерживают восстановление. Если параметр Изменить из Шаг 2 недоступен, единственный вариант – удалить выбранный распространяемый файл.
Это может быть немного утомительным решением, но многие пользователи сообщают, что переустановка распространяемых файлов Visual C ++ устранила проблему для них, поэтому обязательно попробуйте.
Решение 5 – Создать новую учетную запись пользователя
Если вы получаете Microsoft Visual C ++ Runtime Error, вы можете решить эту проблему, просто создав новую учетную запись пользователя. Для этого выполните следующие простые шаги:
Если у вас возникли проблемы с открытием приложения Настройка, обратитесь к этой статье, чтобы решить эту проблему.
После создания новой учетной записи вам необходимо выйти из текущей учетной записи и переключиться на новую. Если проблема не появляется, это означает, что ваша старая учетная запись повреждена.
Чтобы решить эту проблему, переместите свои личные файлы в новую учетную запись и используйте ее вместо старой.
Windows не позволяет добавить новую учетную запись пользователя? Выполните несколько простых шагов и создайте или добавьте, сколько учетных записей вы хотите!
Решение 6 – отключить режим совместимости
Режим совместимости – полезная функция, которая позволяет запускать старые приложения на вашем компьютере. Однако эта функция может иногда приводить к появлению Microsoft Visual C ++ Runtime Error.
Чтобы устранить проблему, вам нужно отключить режим совместимости, выполнив следующие действия:
- Найдите приложение, которое сообщает об этой ошибке, щелкните его правой кнопкой мыши и выберите в меню Свойства .
- Перейдите на вкладку Совместимость и убедитесь, что Запустить эту программу в режиме совместимости для не включено. Теперь нажмите Применить и ОК , чтобы сохранить изменения.
Решение 7. Переустановите проблемное приложение.
Если вы получаете Microsoft Visual C ++ Runtime Error при попытке запустить определенное приложение, вы можете попробовать переустановить это приложение. Иногда ваши файлы могут быть повреждены, и это может привести к появлению этой ошибки.
Чтобы устранить проблему, просто переустановите приложение, которое вызывает эту проблему, и проверьте, помогает ли это. Чтобы проблема не появлялась снова, обязательно загрузите и установите последнюю версию.
Все готово, приведенные выше шаги исправят вашу ошибку Microsoft Visual C ++ Runtime в кратчайшие сроки, но если у вас возникнут другие проблемы по пути, вы можете написать нам ниже в разделе комментариев на странице, и мы поможем вам в этом вопрос.
Кроме того, оставьте там любые другие предложения или вопросы, которые могут у вас возникнуть.
Репутация: 5
Всего: 50
Код |
--------------------------- Microsoft Visual C++ Runtime Library --------------------------- Runtime Error! Program: c:\myproject\test.exe R6030 - CRT not initialized --------------------------- ОК --------------------------- |
Цитата |
This error occurs if you are using the CRT, but the CRT startup code was not executed. It is possible to get this error if the linker switch /ENTRY is used to override the default starting address, usually mainCRTStartup, wmainCRTStartup for a console EXE, WinMainCRTStartup or wWinMainCRTStartup for a Windows EXE, or _DllMainCRTStartup for a DLL. Unless one of the above functions is called on startup, the C Runtime will not be initialized. |
Репутация: 16
Всего: 39
Цитата |
This error occurs if you are using the CRT, but the CRT startup code was not executed. It is possible to get this error if the linker switch /ENTRY is used to override the default starting address, usually mainCRTStartup, wmainCRTStartup for a console EXE, WinMainCRTStartup or wWinMainCRTStartup for a Windows EXE, or _DllMainCRTStartup for a DLL. Unless one of the above functions is called on startup, the C Runtime will not be initialized. |
Ну примерно так
Цитата |
Эта ошибка возникает если используете CRT (типа RTL -Run Time Library), но CRT код не запускается. Возможное получение этой ошибки если LINKER использует ключ /ENTRY который заменяет стандартный адрес входа, обычно используется mainCRTStartup, wmainCRTStartup для консольных приложений, WinMainCRTStartup или wWinMainCRTStartup для виндовс приложений или _DllMainCRTStartup для DLL. Пока из одной вышеуказанной функции не будет вызвана, рунтайм не будет проинициализирован. |
Похоже у тебя в проекте переопределена точка входа в программу возможно если у линкера стоит ключ /ENTRY то у тебя переопределена точка входа в программу.
В коде это примерно задается так
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
Репутация: 99
Всего: 106
по-моему, все гораздо проще:
Alca, видимо ты создал консольный проект в котором пытаешься определить WinMain вместо main (заменил main на WinMain и успокоился), хотя проект уже требует main (but the CRT startup code was not executed).
решение: создай Win32 проект (не консольный)
Репутация: 7
Всего: 118
Репутация: 5
Всего: 50
Репутация: 99
Всего: 106
с этого, в принципе, и надо было начать
если что-либо валится при попытке освободить/распределить ресурс, значит ресурс был использован некорректно, т.е. банально, запись за пределами блока, код ошибки тут уже не имеет значения
Репутация: 5
Всего: 50
Цитата |
Linker -> Advanced ->Entry Point: WinMainCRTStartup |
P.S.
Приложение многопоточное, использую CreateThread.
Репутация: 5
Всего: 50
У меня этот проект был первоначально консольный.
Что я сделал?
Я взял шаблонное приложение Win32 и в него перенес мой проект.
Проблема решена!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
[ Время генерации скрипта: 0.1310 ] [ Использовано запросов: 21 ] [ GZIP включён ]
Читайте также: