2

Мы используем Microsoft Help Help Workshop, в частности hhc.exe, для сборки файла CHM, содержащего документацию в формате HTML. Официально нет никаких ограничений на размер файла CHM, но, поскольку наш набор документов увеличился в размере, мы получаем все больше и больше сбоев сборки. Сообщения об ошибках невелики, но, похоже, у нас заканчивается память; Однако увеличение памяти не имеет значения. (В последние недели набор документов увеличился примерно на 25%; мы попытались удвоить память.)

Наш файл CHM имеет размер 12 МБ, что не кажется большим. Можем ли мы настроить это, или мы достигли неофициальных пределов возможностей этого инструмента, по крайней мере, на 32-битной машине?

Отредактировано, чтобы добавить:

Полученная ошибка - это всплывающее окно со следующим текстом:

hhc.exe - Application Error
[X] The instruction at "0x453217d8" referenced memory at "0x########".  The
memory could not be "read".
Click on OK to terminate the program.
Click on CANCEL to debug the program.
[OK] [Cancel]

Мы запускаем это из автоматической сборки, которая вызывает цель Ant, которая использует <exec> для вызова hhc.exe. Машина для сборки работает под управлением Windows Server 2003 и имеет 4 ГБ памяти.

Мета-вопрос: мой первоначальный вопрос о размере файла был дан ответ; что я должен сделать с этим продолжением, которое явилось результатом комментариев? Повторите вопрос? Принять ответ на оригинальный вопрос? Как вы можете видеть из моего представителя, я новичок здесь.

3 ответа3

2

У меня была похожая проблема, так как HTML Help Workshop не смог скомпилировать мой CHM, и мой CHM также занимал около 12 МБ. Это было сообщение об ошибке:

HTML Help Workshop: hhw.exe - Fatal Application Exit [X]
There is not enough memory available for this task. Quit one or more programs to increase available memory, and then try again.
[OK]

Я проверял зарегистрированный вывод для процесса сборки и увидел, что в моем индексном файле слишком много тем, назначенных одному ключевому слову.

В этом случае сборка работала, когда с конкретным ключевым словом было связано 7132 темы, но сборка не удалась, когда этому же ключевому слову было назначено 7140 тем.

Я удалил ключевое слово из индекса, и мой CHM успешно скомпилирован. Это означает, что, похоже, существует ограничение на количество тем, которые могут быть связаны с ключевым словом - я не нашел в документации никаких ссылок на то, каким может быть это ограничение, но, возможно, мой опыт может помочь другим.

Я понимаю, что присвоение более 1000 тем определенному ключевому слову в любом случае начинает разрушать точку индекса, и это не очень хорошая идея!

2

"Битность" машины не имеет ничего общего с этим процессом. Битность относится к объему памяти, который процессор может адресовать. 32-битные машины могут адресовать 4 ГБ памяти, гораздо больше, чем вам нужно для этого. И даже, если вам нужно больше, машина будет просто страница памяти. Что замедлит процесс, но не помешает ему работать.

Я только что скачал и установил Microsoft Help Help Workshop и смог декомпилировать и перекомпилировать несколько файлов CHM более 15 МБ, включая 25 МБ. Проблема, скорее всего, связана с тем, что вызывает проблемы на компьютере, например, со сканером вирусов. Попробуйте отключить любые антивирусные сканеры перед компиляцией. Вы пробовали компилировать CHM на другой машине? И почему вы думаете, что у вас заканчивается память?

0

Из-за непоследовательного характера ошибки вы исключили возможность установки поврежденного программного обеспечения?

Я бы протестировал код на новой установке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .