[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
ChkDskGui (PureBasic) Исходник + EXE, v4.2 (x86, x64)Скачать yadi.sk upload.eeвременная версия


Последний раз редактировалось: AZJIO (2023-01-25 16:21), всего редактировалось 43 раз(а)

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
loban_ser, ладно, как нибудь 7-ку LiveCD скачаю и в ней прям буду кодить и пробовать, иначе долго, надо делать вывод данных в консоль чтобы отследить потерю.
gera_serg, что бы не случилось (например прога не реагирует), всегда можно посмотреть строку состояния, там указаны ключи и выбранный диск, а потом выполнить следующее:
cmd.exe /c (chkdsk.exe C: /F /X & Pause)
диск укажи свой
Я кстати хотел на строку состояния прикрутить клик, чтобы копировать ком-строку, но в PureBasic не реагирует на TextGadget, а если его сменить на что-то другое, то он уже выглядит не так как хотелось бы. Может попробовать HyperLinkGadget, будет как ссылка, в принципе серый а при наведении синий, тогда любой поймёт что это не просто так, ну и подсказку добавить типа кликни, получишь текст в буфер обмена (хотел написать кратко).

[Цитировать]

    gera_serg
  • 1171
  • Стаж: 8 лет 9 месяцев
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
AZJIO,
ок, спасибо
за "автоитовым" гуем такого пристрастия не наблюдал...
хз, может и они разные с одинаковым именем

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
loban_ser, скачай ещё раз, я придумал временный выход (возможно навсегда) - если результат пусто, то сделать ход конём, запустить консоль как через Win+R.
Я уже потестил элемент "Строка состояния" как ссылка, работает отлично.
Обновил


Последний раз редактировалось: AZJIO (2019-02-24 18:34), всего редактировалось 1 раз

[Цитировать]

    loban_ser
  • 17796
  • Стаж: 6 лет 2 месяца
  • Сообщений: 578
  • Репутация:24

    [+] [-]
AZJIO,


Последний раз редактировалось: loban_ser (2019-02-24 18:40), всего редактировалось 1 раз

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
Обновил, ссылка вечная, я просто кидаю файл в яндекс.диск.
loban_ser, ну и ладно. Исправил проблему хелпа и строка состояния - ссылка для клика в буфер обмена.
Можно пойти дальше, сделать контекстное меню с пунктами например
"Вставить краткую ком-строку в окно Выполнить"
"Вставить полную ком-строку в окно Выполнить"
Краткую, потому что я пробовал получить строку для нескольких дисков и она была такая длинная что обрезалась в окне "Выполнить".
Вставить - подразумевается вызвать окно и вставить строку, то есть больше автоматизации.
Добавил меню вместо кнопки справки. В меню добавил:
1. посмотреть BootExecute в реестре
2. запуск eventvwr.exe для просмотра лога
3. копирование ком-строки для Win+R, но не так кратко как в строке состояния.
Добавил:
Вызов справки для ChkDskGu
Wininit в буфер, чтобы сразу сделать поиск, при использовании eventvwr.exe.
Ком-строку для bat-файла.
В справку добавил раздел "ключи".


Последний раз редактировалось: AZJIO (2019-02-25 15:05), всего редактировалось 1 раз

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
ChkDskGui.exe не может найти chkdsk.exe
Обновил по этому пункту. Надо тестить. У функции RunProgram добавил в 3-й параметр GetPathPart(ProgramFilename()), то есть указал текущей директорией папку программы, теоритически теперь при вызове RunProgram будет обсматриваться текущая папка в том числе для поиска chkdsk.
Добавил автоматизацию окна "выполнить". То есть при нажатии копировать ком-строку появляется окно и вставляется ком-строка. Имя пунктов пока не менял.

[Цитировать]

    gera_serg
  • 1171
  • Стаж: 8 лет 9 месяцев
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
62649Обновил по этому пункту. Надо тестить.

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
gera_serg, ладно, осталось одно подозрение, что прога запускает через cmd.exe, то есть рабочий каталог становиться SysWOW64. Скачаю сейчас "2k10 Live 7.20", потестю всё что можно. А может на Win7 проблема с пустой справкой тоже была связана с проблемой доступа к chkdsk? Если бы была проблема кодировки, то всё равно что-то бы да было, но не пустое окно.

[Цитировать]

    gera_serg
  • 1171
  • Стаж: 8 лет 9 месяцев
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
Компакт Хемома1 скачай - он = мелкий и 86/64 ядра

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
gera_serg, обновил
Я сейчас в LiveCD, проблема запуска связана как я и говорил что прога x86 ищет в своей SysWOW64 в ОС x64, а там chkdsk нет, остаётся скопировать его туда. Сам wim содержит одну копию файла с тоже хешсуммой, так что размер wim не увеличится. Это первое решение, но я уже добавил проверку cmd64.exe, если он существует, то версия проги x86 будет использовать cmd64.exe для своих команд и проблема решена.
Вставка в окно "Выполнить" не работает, потому что в LiveCD оно называется "Запуск программы".
Запуск с RunScanner пишет что повреждена база реестра.
Registry Access Error, ret=1009:
База данных реестра повреждена.
Добавлено "Создать ini"

[Цитировать]

    gera_serg
  • 1171
  • Стаж: 8 лет 9 месяцев
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
AZJIO,
...Добавил импорт в реестр...
Можно подробнее - с какой целью что-то туда импортировать?
Если это так важно, может из-под PE стоит указывать OC на диске, а то получится импорт на текущий сеанс PE?

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
gera_serg, если Windows грузится, то можно импортировать в нём, чтобы не тратить время на LiveCD (не у всех он есть), допустим подозрение, что что-то не так с ФС. Если в LiveCD, то нет смысла это использовать, потому что диски доступны и можешь их проверять сейчас (в загруженной системный не доступен и только через реестр и перезагрузку). Но на всякий случай я оставил как вариант через RunScanner, в теории RunScanner даёт тебе выбор системы и пользователя. Ну а то что чел не знает в какой реестр он вводит это уже не моя проблема, я в справке указал. Можно заблокировать для PE, но зачем обрезать возможность пробы через RunScanner?

[Цитировать]

    gera_serg
  • 1171
  • Стаж: 8 лет 9 месяцев
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
Допустим появилось подозрение, что что-то не так с ФС, в реестр данным GUI было когда-то импортировано.
Развеять подозрение - гружу LiveCD и проверяю из под него - обычный способ.
Чем поможет и на каком этапе эта запись в реестр, если не будет под рукой LiveCD PE?

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 6 лет 2 месяца
  • Сообщений: 1286
  • Репутация:127

    [+] [-]
Чем поможет и на каком этапе
В шлейфе плохой контакт, при работе системы диск то появляется доступ то нет, повисло пару прог, файрфокс повредил базу, Notepad++ говорит что не может сохранить файл. Выключаешь с кнопки, чистишь контакты шлейфа, далее две ветви событий: а)грузишь систему и пользуешься будто нечего не случилось, фигня что файрфокс что-то там насилует жёсткий, что иногда всё падает опять, главное работает и можно что-то сделать на компе, и второй вариант б) загружаешься включаешь чекдиск, вносишь в реестр запись о проверке, перезагружаешь, проверяется, чувствуешь себя спокойно. На диске "С" обнаруживаешь типа "found.000", смотришь их либо удаляешь, если при падении поломался файл, который ты правил то смотришь found.000, а если смотрел кино, то вероятно в found.000 какие нибудь системные поломанные файлы, например кеш кино из браузера.
Когда система обращается к ФС у неё есть стандартизированная информация для иерархической базы данных, а если при обращении к папке система не может понять что происходит это в итоге опять ведёт к падению, пока не исправишь, это как в чате если читал диск вешает всю систему потому что не может получить от него ответа.

[Цитировать]

    gera_serg
  • 1171
  • Стаж: 8 лет 9 месяцев
  • Сообщений: 1421
  • Репутация:9

    [+] [-]
т.е. эта запись в реестре заставит Систему запустить chkdsk при следующей загрузке?

Страница 14 из 34


Показать сообщения:    

Текущее время: 28-Апр 17:33

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы