Страница: 1 | 2 | 3 |
Вопрос: Помогите разобраться.
Добавлено: 15.02.10 09:01
Автор вопроса:
F@got | Web-сайт:
Доброго времени суток форумчане!
Проблема в следующем, пишу текстовый редактор :)
При перетаскивании файла в мой открытый блокнот, файл открывается не полностью. Т.Е. Если мы берем к примеру .exe файл весом 200 Кб. и Открываем его например в обычном "виндовом" блокноте то этот файл открывается в нем например на 300 строк, а в моем только на 40 :(
К слову сказать если открывать файл в моем блокноте через COMMANDDIALOG т.е через "открыть файл" (не посредством Drag&Drop) то все открывается полностью.
Ниже привожу код открытия через так называемый Drag&Drop
через который не полностью открывается файл.
Заранее благодарю за ответы, и участие в моем вопросе.
Private Sub RichTextBox1_OLEDragDrop(Data As RichTextLib.DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
On Error Resume Next
Dim i As Integer
Do
DoEvents
i = i + 1
FileToRichTextBox1 Data.Files.Item(i)
Loop Until Len(Data.Files.Item(i)) < 1
End Sub
Private Sub Form_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
On Error Resume Next
Dim i As Integer
Do
DoEvents
i = i + 1
FileToRichTextBox1 Data.Files.Item(i)
Loop Until Len(Data.Files.Item(i)) < 1
End Sub
Private Sub FileToRichTextBox1(sFilePath As String)
Dim FileNum As Integer
Dim txt As String
Dim alltxt As String
FileNum = FreeFile
'Открываем файл в режиме чтения
Open sFilePath For Input As FileNum
'цикл выполняется, пока конец файла не достигнут
Do Until EOF(FileNum)
'записывает в переменную txt
Line Input #FileNum, txt
'каждая строка с новой строки
alltxt = alltxt + txt + vbCrLf
Loop
RichTextBox1.Text = alltxt
End Sub
Ответы
Всего ответов: 34
Номер ответа: 1
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #1
Добавлено: 15.02.10 09:35
F@got
Привет! А ты уже с утра начал программировать? )))
может лучше я скину тебе исходники блакнотов? шучу!
хотя у меня вроде валялся неплохой пример... )))
Номер ответа: 2
Автор ответа: F@got
ICQ: 209371
Вопросов: 4
Ответов: 39
Web-сайт:
Профиль | | #2
Добавлено: 15.02.10 09:53
Здравствуй Just
Да ни дня без кодинга
Вот по твоему примеру открытия файла при перетаскивании в открытый блокнот через драг эн дроп, маленькая трабла. Мне кажется ноги ростут именно в этом отрезке кода.
Номер ответа: 3
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #3
Добавлено: 15.02.10 10:05
AWP
dim FS as string
FS=space(filelen(FileName))
open FileName for binary as #1
get #1,1,FS
close #1
RichTextBox1.text=FS
Кстати лучше.
кстати он прав )
Номер ответа: 4
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #4
Добавлено: 15.02.10 10:06
вот его пример под твой код
Номер ответа: 5
Автор ответа: F@got
ICQ: 209371
Вопросов: 4
Ответов: 39
Web-сайт:
Профиль | | #5
Добавлено: 15.02.10 10:39
To Just
Just спасибо тебе дружище за помощь!
Все работает супер!
PS. Будут проблемы с вредоносными программами пиши, всегда помогу!
Номер ответа: 6
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #6
Добавлено: 15.02.10 10:46
спс большое! но пока проблем таких не намечалось... но я учту! ))
кстати пару месяцев назад написал скрипт (задолбался по друзьям ходить и настраивать вручную) для очиски xp после вируса
http://narod.ru/disk/15518709000/Restore_XP_after_virus.vbs.html
будет интересно - взгляни как я поизвращался на vbs )
Номер ответа: 7
Автор ответа: F@got
ICQ: 209371
Вопросов: 4
Ответов: 39
Web-сайт:
Профиль | | #7
Добавлено: 15.02.10 11:41
To Just
Я просмотрел твой скрипт, да полезная вещь.
Очень рекомендую включить в твой скрипт перезапись следующих ключей реестра
так как многие вредоносные программы создают свою запись в реестре на автозапуск в этих ветках реестра,
и если вредоносная программа удалена а запись реестра осталась, то при старте системы выдается ошибка о том
что система не нашла указанный файл для запуска.
Пример вредоносной программы записавшейся в ключ реестра для запуска вместе с ситемой
после Explorer.exe прописалась на запуск вредоносная программа.
Аналогичный пример со второй веткой реестра.
Дополнения рекомендуемые для внесения в скрипт лечения системы:
Номер ответа: 8
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #8
Добавлено: 15.02.10 11:52
спс! можешь неверить но я уже это добавил в свой код )
просто перезалить немогу обновление (ссылка др будет)
но все равно спасибо
p.s. правда я с эксплорером побоялся без пути записывать (определяю папку винды)
Номер ответа: 9
Автор ответа: F@got
ICQ: 209371
Вопросов: 4
Ответов: 39
Web-сайт:
Профиль | | #9
Добавлено: 15.02.10 11:56
To Just
По поводу эксплорера можешь не боятся, винда использует в любом случае путь по умолчанию.
Поэтому эксплорер можешь писать в скрипте без пути.
Номер ответа: 10
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #10
Добавлено: 15.02.10 12:10
могу предложить альтернативу кода открытия файла... )
попытался решить некоторые проблемы:
- возможность остановки загрузки
- предупреждать если файл слишком большой (винда может надолго повиснуть)
- и если все же загрузка большого файла начата то загружать частями,так хоть прога поживей выглядит )
BlockSize ставь на свое усмотрение, на разных компах - будет разное поведение (в том числе из-за скорости)
Номер ответа: 11
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #11
Добавлено: 15.02.10 12:13
забыл...
Номер ответа: 12
Автор ответа: F@got
ICQ: 209371
Вопросов: 4
Ответов: 39
Web-сайт:
Профиль | | #12
Добавлено: 15.02.10 12:38
To Just
К сожалению и с первым и со вторым кодом, файлы начиная уже примерно с 500 кб, загрузка зависает намертво, вот сижу уже 6 минут. А вот файлы менее этого веса, загружаются нормально.
Может подождать минут 20? тогда загрузит? В любом случае с мелкософтным по загрузке файлов ему пока не сравнится
Все равно спасибо !
Номер ответа: 13
Автор ответа: F@got
ICQ: 209371
Вопросов: 4
Ответов: 39
Web-сайт:
Профиль | | #13
Добавлено: 15.02.10 12:45
Первый код зависал намертво, второй листниг очень даже хорош!! Справился все таки он с барьером в 600 кб. ! правда по времени минут 10 но справился! Будем повышать барьер!
Номер ответа: 14
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #14
Добавлено: 15.02.10 12:51
у меня с последним кодом exe-файл 1,14 МБ грузился мин 2
я вручную счетал так как комп висел )))
Номер ответа: 15
Автор ответа: Just
Вопросов: 4
Ответов: 330
Профиль | | #15
Добавлено: 15.02.10 12:55
попробуй поэксперементируй с BlockSize
в любом случае мы делаем примитивную загрузку файлов до мб
для загрузки файлов больших размеров я подозреваю нада будет еще 2 блокнота написать )