На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual Basic: Общие вопросы
Здесь обсуждаются вопросы по языку Visual Basic 1-6 (а так же по схожим языкам, как, например, PowerBASIC).
Вопросы по Visual Basic .NET (это который входит в состав Visual Studio 2002/2003/2005/2008+, для тех, кто не в курсе) обсуждаются в разделе .NET.

Обратите внимание:
1. Прежде чем начать новую тему или отправить сообщение, убедитесь, что Вы не нарушаете правил форума!
2. Обязательно воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали. Полезные ссылки приведены ниже.
3. Темы с просьбой выполнить какую-либо работу за автора в этом разделе не обсуждаются. Студенты, вам сюда: ПОМОЩЬ СТУДЕНТАМ!
4. Используйте теги [ code=vba ] ...текст программы... [ /code ] для выделения текста программы подсветкой.
5. Помните, здесь телепатов нет. Формулируйте свой вопрос максимально грамотно и чётко: Как правильно задавать вопросы
6. Запрещено отвечать в темы месячной (и более) давности, без веских на то причин.

Полезные ссылки:
user posted image FAQ Сайта user posted image FAQ Раздела user posted image Кладовка user posted image Наши Исходники user posted image API-Guide user posted image Поиск по Разделу user posted image MSDN Library Online user posted image Google

Ваше мнение о модераторах: user posted image SCINER, user posted image B.V.
Модераторы: SCINER, B.V.
  
> Убрать лишний [NUL], дописываемый в конец файла. , VB6.
    Каждый раз в конце файла дописывается лишний байт. Надо убрать.
    Прикреплённая картинка
    Прикреплённая картинка
      А где собственно записывающий этот файл код? Не заниматься же фигнёй с усечением файла...
        Код элементарный. Open as bynary с хендлом. Цикличная запись одинаковых данных. CloseFile. Результат - лишний NUL.
          Цитата Сергей85 @
          Цикличная запись одинаковых данных.

          Например, мы байты записываем в Integer переменную.
            Цитата Сергей85 @
            Код элементарный. Open as bynary с хендлом. Цикличная запись одинаковых данных. CloseFile. Результат - лишний NUL.

            Показывайте, показывайте, не жадничайте. Несущественные моменты можно, само собой, опустить. А вот описание переменных, открытие-чтение-запись-движение-закрытие оставьте.
              Цитата Akina @

              ExpandedWrap disabled
                [CODE=vba]    'Создание файла-исходника для многократного копирования в приемник.
                    Handle = FreeFile
                    Open App.Path & "\File.tmp" For Binary As #Handle
                        For dTemp = 1 To Text_Size.Text - 1 'Этот [NUL] в конце зае...
                            Put #Handle, dTemp, iValue
                        Next dTemp
                    Close #Handle
              [/CODE]
                Сергей85, какой тип у переменной iValue?
                  Int, конечно.
                    Так я же выше написал:
                    Цитата
                    Например, мы байты записываем в Integer переменную

                    Объяви iValue As Byte.
                      Int переменная занимает 2 баита. Иамени код:
                      ExpandedWrap disabled
                         
                      For dTemp = 1 To Text_Size.Text * 2 Step 2
                      ExpandedWrap disabled
                         


                      Добавлено
                      А последний NULL - второй байт последней записи. Попробуй записать с iValue > 255.
                        Byte сработало.
                        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                        0 пользователей:


                        Рейтинг@Mail.ru
                        [ Script execution time: 0,0632 ]   [ 18 queries used ]   [ Generated: 16.04.24, 04:05 GMT ]