Сообщение #241

Ок, .exe и .config лежат в одной папке и точно существуют!
Нашёл несколько AppCrash_ISTAGUI.exe в programdata\microsoft\WER\ReportArchive.
 

Сообщение #242

Ок, .exe и .config лежат в одной папке и точно существуют!
Нашёл несколько AppCrash_ISTAGUI.exe в programdata\microsoft\WER\ReportArchive.

Вот это как раз и нужно. Загружать весь файл не надо, достаточно открыть его и посмотреть код ошибки.

1. Найдите Error Code
1. Перейдите в папку: ProgramData\Microsoft\WER\ReportArchive
2. Откройте каталог, который соответствует последнему сбою.
3. Найдите файл Report.wer и откройте его через Notepad.
4. Найдите строку Sig[3].Value (Fault Module Name) или Sig[4].Value (Fault Module Version).
5. Также найдите ExceptionCode, обычно он ближе к нижней части файла.

Типовые коды и что они значат:
  • 0xe0434352: это .NET error. Обычно означает, что у вас битый ISTAGUI.exe.config или не хватает .NET Framework 4.8.
  • 0xc0000005: Access Violation. Обычно значит, что SQLite.Interop.dll не той версии или заблокирован antivirus.
  • System.IO.FileNotFound: путь в registry не совпадает с реальной структурой папок.

2. Ещё раз проверьте структуру папок (очень важно)
Путь, который вы упоминали раньше, \testerGUI\bin\release, выглядит подозрительно. У нормальной Standalone-установки структура обычно должна быть "расплющенной".

Пожалуйста, посмотрите, у вас сейчас Structure A или Structure B:

Structure A (правильная Standalone):
  • C:\ISTA\ISTAGUI.exe
  • C:\ISTA\ISTAGUI.exe.config
  • C:\ISTA\SQLiteDBs\ (папка)
  • C:\ISTA\PSdZ\ (папка)

Structure B (грязная / developer build):
  • C:\ISTA\TesterGUI\bin\Release\ISTAGUI.exe
  • C:\ISTA\SQLiteDBs\

Если у вас Structure B, то reg-fix с путём C:\ISTA может не сработать, потому что .exe сидит слишком глубоко.

Что делать, если у вас Structure B:
Скопируйте всё из папки \TesterGUI\bin\Release\ и вставьте это в основную папку C:\ISTA\.
Нужно, чтобы ISTAGUI.exe лежал в одной папке с SQLiteDBs.

Как только .exe окажется рядом с SQLiteDBs, снова запустите Registry Fix и попробуйте стартовать программу.
 

Сообщение #243

Ок, рядом с Sig.3 и 4 у меня вот что:

Sig[3].Value=System.Data.SQLite
Sig[4].Value=1.0.111.0

Но ExceptionCode там нет.....

И это вариант A, но .exe и .config лежат в tester-папке, как я уже писал раньше.
 

Сообщение #244

Ок, рядом с Sig.3 и 4 у меня вот что:

Sig[3].Value=System.Data.SQLite
Sig[4].Value=1.0.111.0

Но ExceptionCode там нет.....

И это вариант A, но .exe и .config лежат в tester-папке, как я уже писал раньше.

Ошибка Sig.Value=System.Data.SQLite как раз и подтверждает, где проблема. Программа падает, потому что не может нормально связаться с движком базы данных.

Это происходит из-за разорванной структуры папок.
У вас Databases лежат в корне, например C:\ISTA\SQLiteDBs, а Executable сидит глубоко внутри, например C:\ISTA\testerGUI\bin\release\ISTAGUI.exe.

ISTA не умеет подниматься "наверх" через три папки, чтобы найти свои базы. Она ожидает, что будет лежать прямо рядом с ними.

Решение (расплющить структуру папки):

1. Перейдите в C:\ISTA\testerGUI\bin\release\
2. Выделите ВСЕ файлы в этой папке (Ctrl+A).
3. Вырежьте их (Ctrl+X).
4. Перейдите в основную папку C:\ISTA\
5. Вставьте их туда (Ctrl+V).

После этого папка C:\ISTA должна выглядеть так:
  • C:\ISTA\ISTAGUI.exe
  • C:\ISTA\ISTAGUI.exe.config
  • C:\ISTA\SQLite.Interop.dll (та, которую вы уже копировали раньше)
  • C:\ISTA\SQLiteDBs\ (папка)
  • C:\ISTA\PSdZ\ (папка)

Финальный шаг:
Когда переместите файлы, ещё раз запустите Registry Fix, чтобы он точно указывал на C:\ISTA.

После этого запускайте ISTAGUI.exe уже из основной папки C:\ISTA. Теперь она должна стартовать нормально.
 

Сообщение #245

Мммм, всё равно это окно с ошибкой опять выскакивает, grrrrr.
 

Сообщение #246

мммм, снова появляется окно с ошибкой, грррр

Поскольку ошибка по-прежнему указывает на System.Data.SQLite, мы уже очень близко. Программа пытается загрузить движок базы данных, но Windows или отсутствующая зависимость этому мешает.

Пожалуйста, по порядку выполните эти 3 конкретные проверки:

1. Разблокируйте DLL-файлы
Windows часто блокирует DLL-файлы, извлечённые из скачанных архивов, из соображений безопасности.
  • Перейдите в папку C:\ISTA.
  • Щёлкните правой кнопкой мыши по SQLite.Interop.dll и выберите Свойства.
  • Внизу вкладки «Общие» найдите флажок или кнопку Разблокировать.
  • Если он есть, отметьте его и нажмите OK.
  • Сделайте то же самое для System.Data.SQLite.dll (если он там есть) и ISTAGUI.exe.

2. Установите Visual C++ Redistributables (обязательно)
Для движка SQLite требуется распространяемый пакет Microsoft Visual C++ 2015-2019 (x86). Даже если у вас 64-битный компьютер, ISTA — это 32-битная программа, и ей нужна именно x86-версия.
  • Откройте в Windows «Установка и удаление программ».
  • Найдите «Visual C++».
  • Убедитесь, что у вас есть «Microsoft Visual C++ 2015-2022 Redistributable (x86)».
  • Если его нет, скачайте и установите его с сайта Microsoft.

3. Проверьте версию config-файла
В ошибке упоминалась версия 1.0.111.0. Нужно убедиться, что config-файл не принудительно задаёт другую версию.
  • Откройте ISTAGUI.exe.config в Блокноте.
  • Нажмите Ctrl+F и найдите newVersion.
  • Проверьте, есть ли строки такого вида:
Код:
<bindingRedirect oldVersion="0.0.0.0-1.0.111.0" newVersion="1.0.111.0" />
Если номер newVersion в файле отличается от версии DLL, которая у вас установлена, произойдёт сбой.

Итог:
Скорее всего, проблема в шаге 2. Если отсутствуют x86-библиотеки C++, SQLite.Interop.dll не сможет загрузиться, и это вызовет именно тот сбой, который вы видите.
 

Сообщение #247

Вот что у меня по этим пунктам:
  • At the bottom of the General tab, look for a checkbox or button that says Unblock.
  • If you see it, check it and click OK.
  • Do the same for System.Data.SQLite.dll (if it exists there) and ISTAGUI.exe
У меня там можно только ставить или снимать галочки hidden и read-only.....

x86 переустановил, предварительно удалив обе версии.

Нашёл строку, но она отличается от той, что вы приводили:
<bindingRedirect oldVersion="4.121.0.0 - 4.65535.65535.65535" newVersion="4.122.23.1" />
 

Сообщение #248

on both files:

At the bottom of the General tab, look for a checkbox or button that says Unblock.
...

Строка, которую вы нашли (newVersion="4.122.23.1"), относится к драйверу Oracle. Это нормально, но не она вызывает сбой.

Ошибка Sig.Value=System.Data.SQLite означает, что проблема именно в файлах SQLite.

Поскольку библиотеки C++ у вас уже установлены, остаётся один главный подозреваемый: несовпадение архитектуры (x86 vs x64).

ISTA — это 32-битная (x86) программа. Она обязательно должна использовать 32-битную версию SQLite.Interop.dll.
Если вы скопировали 64-битную (x64) версию этого файла, ISTA сразу аварийно завершится именно с той ошибкой, которую вы видите.

Пожалуйста, сделайте это конкретное исправление:

1. Найдите папку x86
Посмотрите в скачанных файлах (или внутри папки TesterGUI\bin, если она у вас ещё есть).
Там должны быть папки x86 и x64.
2. Скопируйте правильный файл
Откройте папку x86.
Скопируйте SQLite.Interop.dll.
3. Замените файл
Вставьте его в основную папку C:\ISTA (рядом с ISTAGUI.exe).
Разрешите заменить существующий файл.

Также проверьте, что в C:\ISTA есть ОБА файла:
1. System.Data.SQLite.dll (управляемый модуль)
2. SQLite.Interop.dll (движок — обязательно x86-версия)

После того как убедитесь, что используется именно DLL из x86, попробуйте снова запустить ISTA.
 

Сообщение #249

Всё равно выскакивает то же самое окно!
 

Сообщение #250

ошибка всё равно появляется в том же окне!

Поскольку ошибка сохраняется и указывает на System.Data.SQLite, нам нужно снова посмотреть на конфигурационный файл. Строку Oracle вы уже проверяли ранее, но теперь нужно найти именно строку для SQLite.

Если config-файл заставляет ISTA искать версию X, а в папке лежит версия Y, произойдёт тихий сбой.

1. Проверьте binding SQLite в config
1. Откройте ISTAGUI.exe.config в Блокноте.
2. Нажмите Ctrl+F и найдите: System.Data.SQLite
3. Вы должны увидеть блок такого вида:
Код:
xml
    <dependentAssembly>
      <assemblyIdentity name="System.Data.SQLite" publicKeyToken="db937bc2d44ff139" culture="neutral" />
      <bindingRedirect oldVersion="0.0.0.0-1.0.111.0" newVersion="1.0.111.0" />
    </dependentAssembly>
4. Проверьте номер newVersion.
* Указано 1.0.111.0?
* Или указано что-то другое, например 1.0.112.0?

2. Проверьте версию DLL
1. Перейдите в папку C:\ISTA.
2. Щёлкните правой кнопкой мыши по System.Data.SQLite.dll -> Свойства -> вкладка Подробно.
3. Посмотрите на версию продукта.

Исправление:
Номер newVersion в config-файле обязательно должен точно совпадать с версией продукта DLL.
  • Если в config указано 1.0.112.0, а DLL имеет версию 1.0.111.0, измените config так, чтобы он соответствовал DLL (1.0.111.0).
  • Сохраните файл и попробуйте запустить ISTA.

3. Последняя проверка (отсутствующий файл)
Пожалуйста, убедитесь, что ОБА этих файла присутствуют в C:\ISTA:
  • System.Data.SQLite.dll (управляемый драйвер)
  • SQLite.Interop.dll (нативный движок)

Если System.Data.SQLite.dll отсутствует, скопируйте его из того же места, откуда вы брали остальные файлы. ISTA не сможет работать только с файлом Interop.
 

Сообщение #251

Этого конкретного текста в config вообще нет......
 

Сообщение #252

этого конкретного текста в config нет......

Если этот раздел отсутствует, это почти наверняка и есть проблема. Программа пытается загрузить драйвер базы данных SQLite, но без этой инструкции в config-файле она не понимает, какую версию нужно принимать, поэтому и происходит сбой.

Нам нужно вручную добавить этот блок кода в ваш config-файл.

1. Сделайте резервную копию файла
Сделайте копию ISTAGUI.exe.config и назовите её ISTAGUI.exe.config.bak на всякий случай.

2. Отредактируйте config
Open ISTAGUI.exe.config with Notepad.
Press Ctrl+F and search for: <assemblyBinding

You will see a line that looks something like this:
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">

Сразу после этой строки вставьте следующий блок кода без изменений:

XML:
      <dependentAssembly>
        <assemblyIdentity name="System.Data.SQLite" publicKeyToken="db937bc2d44ff139" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-1.0.111.0" newVersion="1.0.111.0" />
      </dependentAssembly>

3. Проверьте структуру
После этого должно получиться так:

XML:
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Data.SQLite" publicKeyToken="db937bc2d44ff139" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-1.0.111.0" newVersion="1.0.111.0" />
      </dependentAssembly>
      <!-- Other dependentAssembly blocks might be here -->
    </assemblyBinding>

4. Сохраните и запустите
Сохраните файл в Блокноте.
Попробуйте снова запустить ISTAGUI.exe.

Важно:
Это исправление предполагает, что ваш файл System.Data.SQLite.dll имеет версию 1.0.111.0.
Если программа всё ещё завершается с ошибкой, снова проверьте вкладку Details у этого DLL-файла. Если там указано 1.0.112.0 (или выше), измените числа в коде выше так, чтобы они точно совпадали.
 

Сообщение #253

сделал, но всё равно, и теперь оно запускается, но экран остаётся пустым
 

Сообщение #254

сделал, но всё равно, и теперь оно запускается, но экран остаётся пустым

То, что программа запускается (пусть даже с чистым/пустым экраном), это хорошая новость. Сбой исправлен.

Пустой экран обычно означает, что ISTA успешно стартовала, но не может найти файлы базы данных, чтобы показать текст и меню. Поскольку вы вручную перенесли файлы в C:\ISTA, реестр Windows, скорее всего, всё ещё указывает на старый путь (...testerGUI\bin\release).

Нужно обновить реестр, чтобы указать ISTA, где теперь находятся файлы.

Шаг 1: Исправьте путь в реестре
  1. Нажмите Windows Key + R, введите regedit и нажмите Enter.
  2. Перейдите точно по этому пути:
    HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\BMWGroup\ISPI\Rheingold
  3. Найдите справа значение InstallPath.
  4. Дважды щёлкните по нему.
  5. Измените значение на: C:\ISTA
    (убедитесь, что в конце нет обратной косой черты \).
  6. Нажмите OK.

Шаг 2: Проверьте содержимое базы данных
Перейдите в папку C:\ISTA\SQLiteDBs.
Откройте её и убедитесь, что она не пустая. Внутри должно быть несколько файлов (например, streamdataprimitive_... и xmlvalueprimitive_...).

Шаг 3: Запустите от имени администратора
Щёлкните правой кнопкой мыши по ISTAGUI.exe и выберите Run as Administrator.

После этого меню должно загрузиться корректно.
 

Сообщение #255

Это не чёрный экран: после стартового окна полоса загрузки проходит примерно 3 см, а потом всё исчезает, и больше ничего нет.
Также попробовал перейти в раздел HKEY, но там нет ничего, что указывало бы на installpath.
 

Сообщение #256

Это не чёрный экран: после стартового окна полоса загрузки проходит примерно 3 см, а потом всё исчезает, и больше ничего нет.

Если ключи реестра отсутствуют, ISTA запускается, пытается найти путь к своим файлам, не находит его и сразу закрывается. Это как раз объясняет, почему полоска загрузки останавливается, а программа исчезает.

Раз вы не можете найти эти ключи для редактирования, нам нужно создать их.

Пожалуйста, выполните следующие шаги, чтобы создать файл исправления реестра:

Шаг 1: Создайте файл реестра
1. Откройте Блокнот.
2. Скопируйте приведённый ниже блок кода ТОЧНО и вставьте его в Блокнот.

Код:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\BMWGroup\ISPI\Rheingold]
"InstallPath"="C:\\ISTA"
"BMW.Rheingold.Programming.ExpertMode"="Enabled"
"BMW.Rheingold.Programming.Enabled"="True"
"BMW.Rheingold.Online.Mode"="False"

3. Нажмите File -> Save As.
4. Назовите файл: FixISTA.reg
5. Важно: измените "Save as type" на **All Files (.)** (иначе файл сохранится как .txt).
6. Сохраните его на рабочий стол.

Шаг 2: Примените исправление
1. Перейдите на рабочий стол.
2. Дважды щёлкните по FixISTA.reg.
3. Windows спросит, хотите ли вы добавить эту информацию в реестр. Нажмите Yes.
4. Должно появиться сообщение "Successfully added...".

Шаг 3: Проверьте базы данных
Перед запуском ISTA проверьте ещё один момент. Программа завершится с ошибкой, если папка базы данных пуста.
1. Перейдите в C:\ISTA\SQLiteDBs
2. Видите ли вы внутри файлы вроде streamdataprimitive_ENGB.sqlite?
3. Если эта папка пуста, вам нужно скопировать файлы базы данных (SQLiteDBs) из скачанного архива в эту папку.

После применения исправления реестра и проверки наличия баз данных попробуйте снова запустить ISTAGUI.exe.
 

Сообщение #257

Если ключи реестра отсутствуют, ISTA запускается, пытается найти путь к своим файлам, не находит его и сразу закрывается. Это как раз объясняет, почему полоска загрузки останавливается, а программа исчезает.

Раз вы не можете найти эти ключи для редактирования, нам нужно создать их.

Пожалуйста, выполните следующие шаги, чтобы создать файл исправления реестра:

Шаг 1: Создайте файл реестра
1. Откройте Блокнот.
2. Скопируйте приведённый ниже блок кода ТОЧНО и вставьте его в Блокнот.

Код:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\BMWGroup\ISPI\Rheingold]
"InstallPath"="C:\\ISTA"
"BMW.Rheingold.Programming.ExpertMode"="Enabled"
"BMW.Rheingold.Programming.Enabled"="True"
"BMW.Rheingold.Online.Mode"="False"

3. Нажмите File -> Save As.
4. Назовите файл: FixISTA.reg
5. Важно: измените "Save as type" на **All Files (.)** (иначе файл сохранится как .txt).
6. Сохраните его на рабочий стол.

Шаг 2: Примените исправление
1. Перейдите на рабочий стол.
2. Дважды щёлкните по FixISTA.reg.
3. Windows спросит, хотите ли вы добавить эту информацию в реестр. Нажмите Yes.
4. Должно появиться сообщение "Successfully added...".

Шаг 3: Проверьте базы данных
Перед запуском ISTA проверьте ещё один момент. Программа завершится с ошибкой, если папка базы данных пуста.
1. Перейдите в C:\ISTA\SQLiteDBs
2. Видите ли вы внутри файлы вроде streamdataprimitive_ENGB.sqlite?
3. Если эта папка пуста, вам нужно скопировать файлы базы данных (SQLiteDBs) из скачанного архива в эту папку.

После применения исправления реестра и проверки наличия баз данных попробуйте снова запустить ISTAGUI.exe.
Сделал fixreg и проверил, что файлы находятся в нужной папке, как в шаге 3. Всё верно.
Но попробовал запустить, и, к сожалению, ничего не изменилось: снова появляется окно с ошибкой.
 

Сообщение #258

Сделал fixreg и проверил, что файлы находятся в нужной папке, как в шаге 3. Всё верно.
Н...

Прошу прощения, я допустил ошибку в предыдущем коде реестра. Я пропустил путь заголовка, поэтому созданный вами файл не знал, *куда* сохранять параметры. Именно поэтому реестр всё ещё был пустым, а ISTA завершалась во время полосы загрузки: она пытается найти путь, не находит его и аварийно закрывается.

Пожалуйста, создайте файл заново, используя этот ПРАВИЛЬНЫЙ код.

1. Создайте правильный файл исправления реестра
1. Откройте Блокнот.
2. Скопируйте приведённый ниже код ТОЧНО (обязательно включите строку, начинающуюся с [HKEY...):

Код:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\BMWGroup\ISPI\Rheingold]
"InstallPath"="C:\\ISTA"
"BMW.Rheingold.Programming.ExpertMode"="Enabled"
"BMW.Rheingold.Programming.Enabled"="True"
"BMW.Rheingold.Online.Mode"="False"

3. Сохраните как FixISTA_v2.reg.
4. Важно: в окне сохранения выберите для типа файла "All Files".
5. Запустите файл и нажмите Yes для подтверждения.

2. Проверьте исправление
1. Нажмите Windows Key + R, введите regedit.
2. Перейдите в HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\BMWGroup\ISPI\Rheingold.
3. Теперь справа должно отображаться InstallPath, указывающее на C:\ISTA.

3. Проверьте логи (если всё ещё падает)
Если после исправления реестра программа всё ещё завершается:
1. Перейдите в C:\ISTA\Logs.
2. Удалите все файлы внутри (чтобы очистить старые ошибки).
3. Снова запустите ISTAGUI.exe и дождитесь сбоя.
4. Откройте новый лог-файл в этой папке.
5. Прокрутите в самый низ и вставьте сюда последние 5-10 строк. Это точно покажет, почему она останавливается.
 

Сообщение #259

сделал, и installpath теперь там есть. Раньше его не было. Но после перезапуска проверил папку, а каталога LOGS нет...
и окно с ошибкой всё равно появляется!
 

Сообщение #260

сделал, и installpath теперь там есть. Раньше его не было. Но после перезапуска проверил папку, а каталога LOGS нет...

Поскольку папка Logs вообще не создаётся, приложение падает ещё до того, как успевает начать записывать собственный журнал. Это подтверждает низкоуровневый системный сбой, обычно связанный с .NET или Windows.

Поскольку вы вручную редактировали файл ISTAGUI.exe.config, есть высокая вероятность, что была нарушена структура файла (некорректный XML) или всё ещё присутствует несовпадение версии.

Пожалуйста, выполните следующие шаги, чтобы найти реальную причину с помощью средств Windows:

1. Проверьте Windows Event Viewer
Раз ISTA не создаёт логи, Windows фиксирует сбой сама.
1. Щёлкните правой кнопкой мыши по кнопке Start и выберите Event Viewer.
2. Слева раскройте Windows Logs -> Application.
3. Найдите в самом верху списка обычный значок Error (красный круг с !) с отметкой времени, совпадающей с последней попыткой запуска.
4. Щёлкните по нему.
5. В нижнем окне найдите Exception Info или Faulting Module Name.
* Указано KERNELBASE.dll?
* Указано System.Data.SQLite.dll?
* Есть упоминание "Configuration system failed to initialize"?

2. Проверьте синтаксис config-файла
Если вы вставили блок кода не в то место, например внутрь другого тега или обрезали закрывающий тег, программа мгновенно завершится на полосе загрузки.

Снова откройте ISTAGUI.exe.config.
Убедитесь, что структура выглядит точно так же (упрощённый вид):

XML:
<configuration>
   <!-- Other settings -->
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <!-- The block you added MUST be inside assemblyBinding -->
         <dependentAssembly>
            <assemblyIdentity name="System.Data.SQLite" publicKeyToken="db937bc2d44ff139" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-1.0.111.0" newVersion="1.0.111.0" />
         </dependentAssembly>
      </assemblyBinding>
   </runtime>
   <!-- Other settings -->
</configuration>
Критическая проверка:
  • Вы случайно не удалили </configuration> в конце?
  • Вы не вставили код *outside* of <runtime> or <assemblyBinding>?

3. Верните оригинал (если не уверены)
Если вы не уверены, что файл правильный:
1. Удалите ISTAGUI.exe.config.
2. Переименуйте резервную копию ISTAGUI.exe.config.bak обратно в ISTAGUI.exe.config.
3. Попробуйте запустить программу. Если она снова выдаст исходную ошибку SQLite, значит именно правка config-файла вызвала "мгновенное закрытие".

Напишите результат: что в Event Viewer указано как "Faulting Module"? Это ключ к решению проблемы.
 
Активность
Пока здесь никого нет