Запись файла в побайтовом режиме из программы.

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
фикс
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 30.03.2010 (Вт) 12:12

Запись файла в побайтовом режиме из программы.

Сообщение фикс » 30.03.2010 (Вт) 12:19

Доброго времени суток. Помогите плз с ситуацией.

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

Как хочу сделать: запускается программа, в ее памяти находится массив байт и при нажатии кнопки программа записывает данный массив байт на диск. Т.е. программа сама должна записывать файл на жесткий диск в режиме Binary из того массива байт, который находится внутри памяти. Этот файл, который должен записываться на диск, у меня есть. Я успешно открываю его в режиме Binary, но не понимаю как его сохранить в памяти в виде массива.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Запись файла в побайтовом режиме из программы.

Сообщение Денис » 30.03.2010 (Вт) 12:33

Код: Выделить всё
dim bArr() as Byte

Open "file1.bin" for binary as #1
    get #1, ,bArr
Close #1

Open "file2.bin" for binary as #1
    put #1, ,bArr
Close #1
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

фикс
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 30.03.2010 (Вт) 12:12

Re: Запись файла в побайтовом режиме из программы.

Сообщение фикс » 30.03.2010 (Вт) 13:56

Спасибо за помощь, нашел решение. Единственное, что пока не получается - как организовать постоянное хранение в памяти программы массива байт, из которого будет создан впоследствие файл. То есть первоначального файла уже не существует, но в программе находится массив байт, который по нажатию кнопки будет преобразован в файл на жестком диске. Встретил пока не разрешимую трудность - Visual Basic не позволяет хранить в памяти огромные массивы данных...

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Запись файла в побайтовом режиме из программы.

Сообщение Antonariy » 30.03.2010 (Вт) 14:03

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

Встретил пока не разрешимую трудность - Visual Basic не позволяет хранить в памяти огромные массивы данных...
И слава богу.
Лучший способ понять что-то самому — объяснить это другому.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Запись файла в побайтовом режиме из программы.

Сообщение Денис » 30.03.2010 (Вт) 16:14

фикс писал(а):Встретил пока не разрешимую трудность - Visual Basic не позволяет хранить в памяти огромные массивы данных...

Для огромных массивов данных существуют базы данных (ну или чтение-запись блоками определенного, не слишком большого размера). Объясните нам, зачем Вам хранить такие огромные объемы данных единовременно? Или мы не сможем ничего дельного посоветовать.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Запись файла в побайтовом режиме из программы.

Сообщение Хакер » 30.03.2010 (Вт) 16:54

Visual Basic не позволяет хранить в памяти огромные массивы данных...

Звучит как «стул не позволяет петь ирландские песни, сидя на нём». Да стулу вообще пофигу. Он пассивен.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1667
Зарегистрирован: 17.06.2006 (Сб) 15:11

Re: Запись файла в побайтовом режиме из программы.

Сообщение Debugger » 30.03.2010 (Вт) 18:33

Денис писал(а):
фикс писал(а):Встретил пока не разрешимую трудность - Visual Basic не позволяет хранить в памяти огромные массивы данных...

Для огромных массивов данных существуют базы данных (ну или чтение-запись блоками определенного, не слишком большого размера). Объясните нам, зачем Вам хранить такие огромные объемы данных единовременно? Или мы не сможем ничего дельного посоветовать.

Недавно была такая тема.
В итоге решили, что достаточно создавать файл и читать\писать в него данные.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Запись файла в побайтовом режиме из программы.

Сообщение Денис » 30.03.2010 (Вт) 21:09

Debugger писал(а):Недавно была такая тема.
В итоге решили, что достаточно создавать файл и читать\писать в него данные.

... блоками.
Тот пример (классический пример), что я дал выше, хорош для небольших файлов.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

фикс
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 30.03.2010 (Вт) 12:12

Re: Запись файла в побайтовом режиме из программы.

Сообщение фикс » 31.03.2010 (Ср) 14:35

Денис писал(а):
фикс писал(а):Встретил пока не разрешимую трудность - Visual Basic не позволяет хранить в памяти огромные массивы данных...

Для огромных массивов данных существуют базы данных (ну или чтение-запись блоками определенного, не слишком большого размера). Объясните нам, зачем Вам хранить такие огромные объемы данных единовременно? Или мы не сможем ничего дельного посоветовать.


Мне нужно, чтобы Visual Basic по вводу ключевого слова создал в папке некую программу. Потом с помощью этой программы осуществлялись бы дальнейшие операции. Важным условием является то, что до ввода ключевого слова нельзя обнаружить факт существования этой программы, нужно чтобы она "из программы" создавалась, как бы "из ничего".

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Запись файла в побайтовом режиме из программы.

Сообщение Antonariy » 31.03.2010 (Ср) 14:40

Этот файл, который должен записываться на диск, у меня есть.

нельзя обнаружить факт существования этой программы

Автор пытается написать дроппер трояна?
Лучший способ понять что-то самому — объяснить это другому.

hclubmk
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 240
Зарегистрирован: 19.06.2009 (Пт) 14:23
Откуда: От-туда

Re: Запись файла в побайтовом режиме из программы.

Сообщение hclubmk » 31.03.2010 (Ср) 15:02

Что мешает использовать ресурсы?
Научились ли Вы радоваться трудностям?

фикс
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 30.03.2010 (Вт) 12:12

Re: Запись файла в побайтовом режиме из программы.

Сообщение фикс » 31.03.2010 (Ср) 20:23

Antonariy писал(а):
Этот файл, который должен записываться на диск, у меня есть.

нельзя обнаружить факт существования этой программы

Автор пытается написать дроппер трояна?


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

Diamock
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 388
Зарегистрирован: 26.10.2009 (Пн) 4:19
Откуда: Кемерово

Re: Запись файла в побайтовом режиме из программы.

Сообщение Diamock » 01.04.2010 (Чт) 4:55

hclubmk писал(а):Что мешает использовать ресурсы?

Фикс, не знаю, почему ты проигнорировал ответ hclubmk. Но, по моему, это оптимальный способ. :wink:
С уважением...
In der Beschrankung zeigt sich erst der Meister
Графоманю...


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Google-бот, SemrushBot и гости: 142

    TopList