Snote (Аналог блокнота с возможностью шифрования)

Обсуждение проектов наших жителей.
Вы можете выставить проект на тест или найти помощников для его реализации.

Модератор: BV

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Snote (Аналог блокнота с возможностью шифрования)

Сообщение VKS » 27.12.2007 (Чт) 14:05

Использует ключ доступа при сохранении и открытии документа (симметричное шифрование)
Пароль/ключ терять не рекомендую, т.к. даже я не смогу помочь вскрыть файл (универсальных ключей/паролей не существует и существовать не может).
При открытии криптованого файла дешифрованные файлы (временные) в системе не создаются
Подбор пароля/ключа ограничен

Скорость открытия файлов ограничена исключительно компонентом RICHTX32.OCX

Отличия от Microsoft Notepad:
1) функция шифрования текста
2) возможность использовать любой файл в качестве ключа
3) возможность редактировать (шифровать) "бинарные" файлы (к примеру поправить текст в exe файле =))
4) возможность открытия фрагмента файла
5) возможность запоминать последние файлы (опционально)
6) открытие последнего файла при помощи F9
7) открытие любого файла программой через 'контекстное меню=>Отправить=>Snote'
8 ) открытие активной (рабочей) папки
9) возможность конвертирования текста из UniCode / в UniCode
10) возможность конвертирования текста из DOS / в DOS, транслит, работа с регистром
11) возможность конвертирования текста ASCII в HEX и наоборот (яю => %FF%FE)
12) возможность просмотра код ASCII выделенного символа
13) вставка символа по коду ASCII
14) вывод таблицы ASCII
15) возможность отображения программы поверх всех окон
16) возможность автоматического закрытия/сворачивания при "простое" программы
17) возможность очистки буфера обмена Windows при выходе из программы
18 ) настройка "прозрачности" окна программы для затруднения чтения посторонним набираемого/читаемого текта со стороны ("изза плеча")
19) детальная информация о тексте/файле
20) подсчет слов
21) вывод CRC32 текста
22) вставка подписи - имя пользователя (имя компьютера)
23) регистрация произвольного типа файла для открытия программой
24) довольно часто на разных компьютерах мне встречался глюк
когда при копировании текста (кириллица {1251}) через буфер обмена
появлялись "краказябры"... Здесь встроен модуль, который может облегчить вам жизнь.
25) поиск обновлений в Internet
26) возможность копирования произвольного фрагмента файла в новый файл (Ctrl+F2)
27) возможность объединить файлы (фрагменты) в 1 файл
28 ) HEX-редактор (By Herman Liu + my upgrade)
29) возможность быстрого просмотра файлов до 2 ГБ + функция поиска по контексту 'контекстное меню=>Отправить=>Просмотреть файл'


В остальном это тотже notepad.. Вирусы и тому подобные всякие "пакости" в архив не встроены=))) (в exe тоже).

На вопрос зачем нужно было "изобретать велосипед" когда куча подобного софта есть в интернете отвечу:
1) я уверен в своей программе, так как знаю как она работает на 100%
2) никакие данные в интернет не отправляются и не сохраняются в системе для возможной их отправки трояном=)
3) так мне захотелось=)

p.s. никаких универсальных паролей не существует и существовать не может

О предложениях/замечаниях или при возникновении проблем с программой пишите пожалуйста
Secure Notepad

ОБНОВЛЕНО 19.07.2008

Изображение
http://vksoft.mtu-saturn.ru/
Последний раз редактировалось VKS 19.07.2008 (Сб) 19:10, всего редактировалось 48 раз(а).

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

Сообщение Antonariy » 27.12.2007 (Чт) 14:23

Ох, защитники... А что помешает программе-шпиону скопировать расшифрованный текст из окна редактирования?

Какой алгоритм шифрования используется?
Лучший способ понять что-то самому — объяснить это другому.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Сообщение Twister » 27.12.2007 (Чт) 14:37

А что помешает программе-шпиону скопировать расшифрованный текст из окна редактирования?
А что сможет от этого защитить? :wink:
А я все практикую лечение травами...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Snote (Аналог блокнота с возможностью шифрования)

Сообщение alibek » 27.12.2007 (Чт) 14:38

VKS писал(а):2) никакие данные в интернет не отправляются и не хешируются в системе для возможной их отправки трояном=)

Ты понимаешь смысл выделенного?
Lasciate ogni speranza, voi ch'entrate.

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

Сообщение Денис » 27.12.2007 (Чт) 14:39

Обоснуй, чем твой алгоритм лучше этого?
http://www.pgpru.com/
http://ru.wikipedia.org/wiki/PGP
Варианты "я сам писал и знаю на 100 процентов" не катят, так как есть декомпиляторы, деобфускаторы, и т.д. и т.п. и в конце концов "метод утюга"
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 27.12.2007 (Чт) 14:40

Twister писал(а):А что сможет от этого защитить? :wink:

Ну... Например самодельное текстовое поле.
Lasciate ogni speranza, voi ch'entrate.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Сообщение Twister » 27.12.2007 (Чт) 14:47

Например самодельное текстовое поле
Самодельное текстовое поле где хранит текст? :wink:

Я к тому, что против целенаправленной атаки (неуниверсальных методов) ни что не спасет. Так что не надо городить огород с защитой текстового поля от копирования и, тем более, не стоит мучаться над самодельным полем.
А я все практикую лечение травами...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 27.12.2007 (Чт) 14:52

Я имел ввиду, что с самодельного текстового поля программа-шпион не сможет скопировать текст.
Если ты намекаешь на то, что шпион будет копировать текст из памяти процесса, то я с этим не спорю. Но в принципе никто не мешает хранить в памяти шифрованный текст, который расшивровывается по символу непосредственно при рендере символа.
Lasciate ogni speranza, voi ch'entrate.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Сообщение Twister » 27.12.2007 (Чт) 14:57

Но в принципе никто не мешает хранить в памяти шифрованный текст, который расшивровывается по символу непосредственно при рендере символа.
Это вариант. Наверно единственный, из более или менее надежных. Хотя попахивает паранойей... :)
А я все практикую лечение травами...

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Сообщение jangle » 27.12.2007 (Чт) 15:26

Денис писал(а):Обоснуй, чем твой алгоритм лучше этого?
http://www.pgpru.com/
http://ru.wikipedia.org/wiki/PGP
Варианты "я сам писал и знаю на 100 процентов" не катят, так как есть декомпиляторы, деобфускаторы, и т.д. и т.п. и в конце концов "метод утюга"


Денис - сначала сам прочитай приведенные тобой ссылки, и осознай отличия криптографии с открытым и закрытым ключом. Наводка - почему в WinRAR не применяется PGP?

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

Сообщение Денис » 27.12.2007 (Чт) 15:36

jangle

VKS писал(а):Привет! Я очень рад, что мы можем с тобой переписываться? не опасаясь, что нас могут прослушивать


что первое приходит в голову при прочтении этих строк?
правильно - переписка по электронке.
А теперь осознай, почему в The Bat! используется PGP. :lol:

З.Ы. Впрочем, ВКСу и до реализации AES-128 так же далеко.
Последний раз редактировалось Денис 27.12.2007 (Чт) 15:44, всего редактировалось 1 раз.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

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

Сообщение Antonariy » 27.12.2007 (Чт) 15:40

Twister писал(а):
Но в принципе никто не мешает хранить в памяти шифрованный текст, который расшивровывается по символу непосредственно при рендере символа.
Это вариант. Наверно единственный, из более или менее надежных. Хотя попахивает паранойей... :)
Вы таки хотите паранойи? Ее есть у нас. Все это можно выводить не в hdc, а в окно типа как у видеоплееров, которое не принтскринится. 8)
Лучший способ понять что-то самому — объяснить это другому.

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

Сообщение Денис » 27.12.2007 (Чт) 15:57

Antonariy
О это круто! но я слыхал, что есть проги для снятия принтскринов, которые принтскринят и эти (осмелюсь предположить, оверлейные) экраны. гг, ярчайший пример - VMWare. дело за малым - скрыть от атакуемого юзера факт наличия на его машине VMWare и факта его работы в ней! %)

А автору топика рекомендую заценить AkelPad и возможность написания шифрующего плагина к нему.
Последний раз редактировалось Денис 28.12.2007 (Пт) 0:02, всего редактировалось 1 раз.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 27.12.2007 (Чт) 20:12

Денис
ИМХО большую эффективность, а заодно и зрелищность имеет не "метод утюга" а метод терморектального криптоанализа.

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

Сообщение Денис » 27.12.2007 (Чт) 23:57

Lumen
Ну да, коллега! Как заметил наш уважаемый шеф - метод утюга - линейный метод, а криптотермальныйанальный, или как еготам, это уже тригонометрия :P
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Сообщение Twister » 28.12.2007 (Пт) 11:14

Все это можно выводить не в hdc, а в окно типа как у видеоплееров, которое не принтскринится.
Все, что на экране - все лежит в видеобуфере. При желании, можно вытащить от туда. Но это пахнет уже не паранойей, а преждевременным гемороем... :)
А я все практикую лечение травами...

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 29.12.2007 (Сб) 20:32

Добрый день/вечер всем и с Наступающим Новым Годом!!!

Огромное спасибо всем за предоставленное внимание моему топику.
Я постараюсь ответить по максимуму..
Во первых я бы очень не хотел (и не хочу) что бы моя программа какимто образом была навязана - и никому, тем более вам, она не обязана устанавливаться.
Во вторых я разместил эту программу с одной целью - этот портал один из самых уважаемых в рунете, и для меня (можно сказать не профессионала - я не считаю себя программистом) чрезвычайно важна ваша критика и рекомендации..
Тем более я убеждён что каждый из Вас способен нарисовать подобное в течение часа (у меня ушло (в свободное время от работы)
6 часов - примерно по 2 на 3 дня)

а эту программу меня навеяла командировка в.... =) Минск. Почему? оч долго объяснять - лучше сделаю это тогда когда буду выставлять пиво с водкой за взлом криптованного файла..

И так...

Antonariy писал(а):Ох, защитники... А что помешает программе-шпиону скопировать расшифрованный текст из окна редактирования?


Скажем так - защитник своего=) Ничто не помешает программе-шпиону скопировать расшифрованный текст из окна редактирования. Смысл в другом. Я понял что сделал грубейшую ошибку в приведенном примере в JPG. Затея была в невозможности перехвата и последуютего прочтения текта на уровне провайдеров... слово "прослушивать" я подразумевал немного по иному, т.е. если комп инфицирован - то это проблема уже неосторожного человека и я недумаю что есть возможность АБСОЛЮТНОЙ защиты от всего и всея.. конечно за исключением разработки своей ос несовместимой вообще нискаким софтом =)) ИМХО

alibek писал(а):
VKS писал(а):2) никакие данные в интернет не отправляются и не хешируются в системе для возможной их отправки трояном=)

Ты понимаешь смысл выделенного?

если честно то да.. возможно я не совсем теми словами изложил свою мысль, но если я когото "подвесил" на этом предложении - искренне прошу прощения

Денис писал(а):Обоснуй, чем твой алгоритм лучше этого?
http://www.pgpru.com/
http://ru.wikipedia.org/wiki/PGP
Варианты "я сам писал и знаю на 100 процентов" не катят, так как есть декомпиляторы, деобфускаторы, и т.д. и т.п. и в конце концов "метод утюга"


ничем. а никто не говорил что он лучше... разве что не на очень много хуже=) При создании программы я не забыл ни на 1 сек о декомпиляторах.. и т.д. и. т.п. я не думаю что "метод утюга" сможет реально помочь

Денис писал(а):jangle
З.Ы. Впрочем, ВКСу и до реализации AES-128 так же далеко.


Ну зачем так грубо отвечать? Конечно мне очень далеко - я и не спорю.. Но я же не тыкаю тебя носом что тебе до Lanos так же далеко как до моего Lexus.. Не нужно переходить на личности - ты меня не знаешь.. я тебя. И этот топик не посвящён размерам у кого какой... ты силён в своём - я в своём.. я выложил программу - обсуждай и критикуй её - меня не трогай. Если тебе не далеко до AES-128 - что тебе мешает выпить со мной водки? Вперёд!


Ещё раз хочу всех поздравить с НАСТУПАЮЩИМ НОВЫМ ГОДОМ и пожелать всем большей удачи в следующем, по отношению к этому, году.

Спасибо!

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 30.12.2007 (Вс) 22:35

VKS, заметил один баг. Запустил SNote из архива (распаковка, понятное дело, прошла во временную папку, которая потом удалится). Твой редактор мало того что решил проассоциировать себя с текстовыми файлами (меня не спросив!), так еще и сделал это весьма странно: теперь вместо типа файла "Текстовый документ" - "Snote", но открывает его "Блокнот". Чудеса... Или это так и задумано? (UPD: Посмотрел реестр. Склоняюсь к версии "так задумано". Хотя, имхо, неудобно задумано).
Моду создают модоки, а распространяют модозвоны.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 31.12.2007 (Пн) 13:09

Задумка была в следующем:
формат *.snote, *.sno "привязывется" к программе. Но для себя я делал чтобы формат txt по умолчанию открывался notepadом и чтобы из контекстного меню можно было быстро открыть при помощи snote, т.к. многие "тяжёлые" файлы открываются несколько быстрее чем в нотпаде.

Но я согласен что это можно отнести к разряду ГЛЮК, т.к. принудительное изменение ассоциаций не совсем хорошо. Я так понимаю что удобнее будет, как минимум, спрашивать разрешение на замену ассоциаций форматов отличных от snote..

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 31.12.2007 (Пн) 16:19

Именно так.
Моду создают модоки, а распространяют модозвоны.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 31.12.2007 (Пн) 17:15

hCORe писал(а):Именно так.

Спасибо за рекомендацию - сделаем! С НАСТУПАЮЩИМ!!!=)

Secure Notepad исправил
У вас нет доступа для просмотра вложений в этом сообщении.
Последний раз редактировалось VKS 19.07.2008 (Сб) 19:11, всего редактировалось 39 раз(а).

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 30.01.2008 (Ср) 19:49

Привет ещё раз властелинам VB (и не только)

Во время создания сей программы я наткнулся на несколько вопросов. Естественно я нашёл способ их решения.
Но я считаю что есть (вероятнее всего) решения которые как минимум не менее "продуктивные" чем мои:

Итак

1) Первый вопрос касается компонента RICHTX32.OCX
Во время реализации программы Snote при попытке в программе переключить объект на режим "Перенос по словам" (или на оборот) возникала ошибка вроде как "Properties is read only" (точно не помню но чтото в этом роде). Что не так?

2) При открытия файла через контекстное меню (или *.snote на прямую программой) на некоторых компьютерах (от OS независит) появлялся какойто странный глюк, который проявлялся какимто странным хешированим имени файла. Т.е. имя в Command приходит не как к примеру 'Вот такой вот себе файл.snote' а как 'FEB9A4~1.sno'. В чём проблема? На нескольки компах стоит одна и таже OS, но на одном всё ок - на другом не очень. По этому я и говорю что не в OS дело (всмысле не в релизе)

3) Глюк который меня совсем утомил.. Команда PUT
Декларирую к примеру byteA() as Byte
в итоге в ней находится 10 байт (от ByteA(0) до ByteA(9))
Хочу массив скинуть в файл. Открываю в бинарном режиме (естественно файла с таким именем на диске нет). Скидываю при помощи PUT в файл. На выходе получаю вместо 10 байт - 104! Почему? При том что даже похожего в сохранённом нет от требуемого. Может причина в том что ByteA объявлена как Global? Но помоему это бред... (во всяком случае мне нужно только глобал)

И последнее - это не проблема, которая у меня возникла, а скорее вопрос который хотелось бы прояснить:

к примеру дано:

function func0(какая фигня которая вам нафиг не нужна)
...
код
...
a=func1(b)
...
end function

Function func1(param1)
...
code
...
end func..

вопрос:
при пересылке из func0 в func1 значение b в param1 (к примеру String) требует ли дополнительного выделения памяти или использует одно пространство (передаётся только ссылка на блок памяти или вель блок в памяти дублируется)



Спасибо за ответы!

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 31.01.2008 (Чт) 8:37

1. Сие свойство только для чтения, о чем тебе и сообщает текст ошибки.
2. Есть такая штука, да. Бороться можно функцией GetLongPathName.
3. И на что тут ответить, если ты не приводишь код?
4. Зацени разницу между ByVal и ByRef. Причем для некоторых типов данных есть нюансы.
Весь мир матрица, а мы в нем потоки байтов!

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 31.01.2008 (Чт) 11:41

Viper писал(а):1. Сие свойство только для чтения, о чем тебе и сообщает текст ошибки.

Я прекрасно знаю ка это переводится. Я и не просил чтобы мне объяснили что это значит.. всётаки это форум не по лингвистике.
Повторю - неужели вообще никак нельзя переключить в RICHTX32.OCX свойство ScrollBars без исключения Property is read-only?
Мне пришлось извратиться методом создания двух объектов с разными ScrollBars и при необходимости между ними переключаться.. но помоему это очень тупо..

Viper писал(а):2. Есть такая штука, да. Бороться можно функцией GetLongPathName.

спасибо. а то я совсем какимто сложным путём пошёл...

Viper писал(а):3. И на что тут ответить, если ты не приводишь код?

а что я неясного написал в описании

Viper писал(а):4. Зацени разницу между ByVal и ByRef. Причем для некоторых типов данных есть нюансы.

вот я тебе в 4-м пункте привёл пример кода - и опять ты не понял. Я знаю разницу между ByVal и ByRef. Но если ты смотрей "код" внимательно - должен был обратить внимание что ни ByVal ни ByRef там нет. Вот и вопрос был в следующем: "по умолчанию" при передаче параметра как поведёт себя программа? И меня интересует тип данных String.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Сообщение jangle » 31.01.2008 (Чт) 12:10

VKS - в твоей программе есть неприятный баг. Во первых в контекстном меню проводника, пункт "Создать текстовый файл", оказался заменен на "Snote", а я об этом совсем не просил. И второе, после удаления твоей программы, пункт "Snote" так и остался в меню Explorera.
Теперь прийдется чистить реестр :?

Изображение

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 31.01.2008 (Чт) 12:21

1. Да, бороться можно используя два RTB. :( Печально, но факт.
3. Как ты используешь Put, вот в чем вопрос.
4. По умолчанию в VB используется ByRef, т.е. в функцию передается ссылка на аргумент, который следовательно можно изменить. Со строкой будет тоже самое. Пример:
Код: Выделить всё
Sub Main()
Dim s1 As String, s2 As String
s1 = "Слон"
s2 = s1
FByVal s1
FByRef s2
Debug.Print s1
Debug.Print s2
End Sub
Sub FByVal( ByVal s As String)
s = "Муха"
End Sub
Sub FByRef( ByRef s As String)
s = "Муха"
End Sub
Весь мир матрица, а мы в нем потоки байтов!

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

Сообщение Antonariy » 31.01.2008 (Чт) 12:41

3. А так же как открываешь файл.
4. Viper немного невнятно ответил. При ByRef передается указатель на область памяти, занимаемую данными переменной. При ByVal создается локальная копия.
Лучший способ понять что-то самому — объяснить это другому.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 31.01.2008 (Чт) 13:04

[quote="jangle"]VKS - в твоей программе есть неприятный баг. Во первых в контекстном меню проводника, пункт "Создать текстовый файл", оказался заменен на "Snote", а я об этом совсем не просил. И второе, после удаления твоей программы, пункт "Snote" так и остался в меню Explorera.
Теперь прийдется чистить реестр :?

А ты в декабре скачал прогу? Потому что 31.12 я исправил этот баг (программа перед тем как трогать расширение TXT спрашивает у пользователя нужно ли это делать, а принудительно только ассоциирует формат *.snote)

Согласен - баг не приятный. Мне бы тоже не понравилось если бы *.exe или *.bat отерывались бы какойто хренью. Но к сожалению возможность отката (отмены) есть только в функции Настройки=>Применения кодовой страницы.

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 31.01.2008 (Чт) 13:09

Viper писал(а):1. Да, бороться можно используя два RTB. :( Печально, но факт.

ясно - спасибо

Viper писал(а):3. Как ты используешь Put, вот в чем вопрос.

Open file_For Binary As #2
Put #2, , ByteA()
Close #2

Viper писал(а):4. По умолчанию в VB используется ByRef, т.е. в функцию передается ссылка на аргумент, который следовательно можно изменить. Со строкой будет тоже самое. Пример:
Код: Выделить всё
Sub Main()
Dim s1 As String, s2 As String
s1 = "Слон"
s2 = s1
FByVal s1
FByRef s2
Debug.Print s1
Debug.Print s2
End Sub
Sub FByVal( ByVal s As String)
s = "Муха"
End Sub
Sub FByRef( ByRef s As String)
s = "Муха"
End Sub


спасибо - я на это надеялся =)

VKS
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 80
Зарегистрирован: 30.11.2006 (Чт) 15:40

Сообщение VKS » 31.01.2008 (Чт) 13:11

Antonariy писал(а):3. А так же как открываешь файл.
4. Viper немного невнятно ответил. При ByRef передается указатель на область памяти, занимаемую данными переменной. При ByVal создается локальная копия.


Open file_ For Binary As #2

ну я Viper понял. я тоже иногда могу не правильно спросить :wink:

След.

Вернуться в Наши проекты

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22

    TopList