Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Офф-топ

Страница: 1 |

 

  Вопрос: Вин Блокнот? Добавлено: 06.04.06 16:23  

Автор вопроса:  Billi Gates | ICQ: 242-026-281 
Здравствуйте! Помойму все видели стандартный виндосовский блокнот! Так вот, если попытаться открыть через него программу а не текст, то в блокноте появляется зашифрованный код! А самому такой блокнот сделать нельзя? Пытался просто открывать файл в текст бокс и в рич текст бокс! Всё зря! В текст бокс ваще не открываетси! а в рич текст бокс открывается одна бредовая строка, как правило не больше 15 символов!
Вот код которым я воспользовался
Private Sub Command1_Click()
cd.Filter = "All Files|*.*"
cd.ShowOpen
Dim txt As String
Open cd.FileName For Input As #1
Do While Not EOF(1)
Line Input #1, txt
text1.Text = txt
Loop
Close #1
End Sub
Таким способом ваще не открывается!:
Private Sub Command1_Click()
f = FreeFile
Open "c:\1.exe" For Input As f
text1.Text = Input(LOF(f), f)
Close f
End Sub

Ответить

  Ответы Всего ответов: 11  

Номер ответа: 1
Автор ответа:
 Страшный Сон



Вопросов: 46
Ответов: 848
 Профиль | | #1 Добавлено: 06.04.06 16:27
Во-первых, используй не For Input, а For Binary, а во-вторых, придется тебе свой текстбокс делать, так как стандартный не поддерживает нулевые символы. Виндовозовский блокнот тоже их не поддерживает. Он их на пробелы заменяет.

Ответить

Номер ответа: 2
Автор ответа:
 Billi Gates



ICQ: 242-026-281 

Вопросов: 25
Ответов: 57
 Профиль | | #2 Добавлено: 06.04.06 16:54
мне не лень сделать новый текст бокс, на чтобы время не тратить не подскажете ссылочку?

Ответить

Номер ответа: 3
Автор ответа:
 Billi Gates



ICQ: 242-026-281 

Вопросов: 25
Ответов: 57
 Профиль | | #3 Добавлено: 06.04.06 16:55
а с Binary не прёт! Виснет программа. Или может я нето делаю?
Private Sub Command1_Click()
cd.Filter = "All Files|*.*"
cd.ShowOpen
Dim txt As String
Open cd.FileName For Binary As #1
Do While Not EOF(1)
Line Input #1, txt
text1.Text = txt
Loop
Close #1
End Sub

Ответить

Номер ответа: 4
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #4 Добавлено: 06.04.06 18:08
Читай как байтовый массив, а не как строки.
Когда прочтешь, замени все нечитаемые символы в массиве на Chr(1). Так поступает блокнот (отображает квадратики вместо нечитаемых).
Если выводить в тектсбокс - будут выводиться жирные вертикальные черточки

Ответить

Номер ответа: 5
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #5 Добавлено: 06.04.06 18:16
поправка: у квадратика код 127

Ответить

Номер ответа: 6
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #6 Добавлено: 06.04.06 18:29
а в байтовый массив это типа чтобы быстрее, да? :)


Public Function LoadTextFile(path As String) As String
'Загрузка файла в переменную
 Dim l As Long
 Dim s As String
 n = FreeFile
 Open path For Binary As #n
 l = LOF(n)
 s = String(l, vbNullChar)
 Get n, , s
 Close #n
 LoadTextFile = s
End Function

Private Sub Form_Load()
    Dim tmp As String
    tmp = LoadTextFile("C:\windows\notepad.exe";)
    
    'tmp = Replace(tmp, "", "";) '< влом искать какие там печатаются...
    
    Text1 = tmp
End Sub

Ответить

Номер ответа: 7
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #7 Добавлено: 06.04.06 18:38
Да, чтобы быстрее.
Проверять и заменять значительно быстрее, чем через Replace.

Ответить

Номер ответа: 8
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #8 Добавлено: 06.04.06 18:49
На сорцах конкурс был по замене виндовых прог на свои. Там и блокнот писали, и поинт тоже и много что другого.

Ответить

Номер ответа: 9
Автор ответа:
 Billi Gates



ICQ: 242-026-281 

Вопросов: 25
Ответов: 57
 Профиль | | #9 Добавлено: 06.04.06 18:53
спасибо! работает! Вопрос исчерпан! Обидно было что блокнот так умеет, а текст бокс нет! :)

Ответить

Номер ответа: 10
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #10 Добавлено: 06.04.06 19:16
бгагаа
Обидно было что блокнот так умеет, а текст бокс нет! :)


похоже все наши старания в пустую :)

Ответить

Номер ответа: 11
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #11 Добавлено: 07.04.06 16:50
Вопрос:

 Помойму все видели стандартный виндосовский блокнот! Так вот, если попытаться открыть через него программу а не текст, то в блокноте появляется зашифрованный код! А самому такой блокнот сделать нельзя? Пытался просто открывать файл в текст бокс и в рич текст бокс! Всё зря!


Объяснили:

Когда прочтешь, замени все нечитаемые символы в массиве на Chr(1). Так поступает блокнот (отображает квадратики вместо нечитаемых).


Объяснили как сделать и как делает виндоый блокнот!

и после этого...

спасибо! работает! Вопрос исчерпан! Обидно было что блокнот так умеет, а текст бокс нет! :)

т.е. толкование Хулигана не пошло на пользу... Теперь понимаешь почему
бгагаа похоже все наши старания в пустую :)


P.S.
Просто в человек попросил в асе меня объяснить мою реакцию... :)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам