Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
Тут на форуме не раз возникали замечания на тему, что в NeoBook не хватает тех или иных мелких, но иногда полезных функций. Мне думается, что следует попытаться исправить эту ситуацию с помощью плагина, т.к. VB или Java знают далеко не все необукеры, к тому же, на мой взгляд, плагин намного более эффективное средство нежели чем, например, тот же VBS. С учетом последнего вопроса об анимации внешних необушных окон, решил реанимировать свой самый первый плагин, который давно-давно делал.
В архиве (см.прикрепление) находятся две версии плагина (Design и Runtime), подобие справки, и демка.
27.02.2011
Мышь и клавиатура
zmShowMousePointer - Показать/Скрыть указатель мыши. zmSetMouseMonitor - Установить монитор мыши. zmConfigMouseMonitor - Конфигурирование монитора мыши. zmDelMouseMonitor - Удалить монитор мыши. zmKBChangeLayout - Изменить раскладку клавиатуры для текущего активного окна. zmKBGetLayout - Определить раскладку клавиатуры для текущего активного окна.
zmColorBox - Отобразить диалог выбора цвета. zmFontBox - Отобразить диалог выбора шрифта. zmTrayIcon - Создать в системном лотке значок приложения. zmTrayBalloon - Отобразить сообщение в системном лотке. zmDeleteTrayIcon - Удалить значок из системного лотка. zmExitWindows - Завершение работы: выключение компьютера / перезагрузка /завершение сессии.
Окна
zmFindWindow - Найти окно по заголовку и имени класса. zmGetWindowHandle - Получить дескриптор (HWND) окна по заголовку. zmGetWindowTitle - Получить имя класса и/или текст заголовка окна. zmSetWindowTitle - Установить новый текст заголовка окна. zmShowWindow - Скрыть/Показать/Свернуть/Развернуть/Закрыть окно. zmSetWindowPos - Установить положение окна. zmSetWindowTransparent - Установить уровень прозрачности окна (Windows 2000 и выше). zmCancelWindowTransparency - Отменить свойство прозрачности окна и сделать его непрозрачным (W2k и выше). zmIsWindow - Определить состояние окна (видимость, свернуто, развернуто, и т.п.). zmEnableWindow - Сделать активным неактивное окно. zmDisableWindow - Сделать неактивным окно. zmGetWindowRectangle - Получить положение и размер окна. zmGetForegroundWindow - Получить дескриптор (HWND) верхнего окна в системе. zmSetForegroundWindow - Сделать верхним в системе и активизировать указанное (по дескриптору) окно. zmGetExeNameByHandle - Получить имя файла приложения по дескриптору окна. zmGetDesktopRectangle - Получить координаты области рабочего стола, не скрытой панелью задач.
Окна NeoBook
zmSetCustomWindowPos - Установить положение и размеры внешнего окна (CustomWindow) NeoBook . zmShowCustomWindow - Скрыть/Показать/Свернуть/Развернуть/Закрыть внешнее окно NeoBook. zmIsCustomWindow - Определить состояние внешнего окна NeoBook (видимость, свернуто, развернуто, и т.п.). zmEnableCustomWindow - Сделать активным неактивное внешнее окно NeoBook. zmDisableCustomWindow - Сделать неактивным внешнее окно NeoBook. zmSetCustomWindowTransparent - Установить уровень прозрачности внешнего окна NeoBook (W2k и выше). zmCancelCustomWindowTransparency - Отменить свойство прозрачности внешнего окна NeoBook и сделать его непрозрачным (W2k и выше). zmAnimateCustomWindow - Скрыть/Показать с анимационным эффектом внешнее окно (CustomWindow) NeoBook. zmSetCustomWindowMask - Наложить маску на внешнее окно (CustomWindow) NeoBook. zmShowInRectangle - Отобразить внешнее окно (Custom Window) в объекте прямоугольник
Главное окно
zmSetOnMoveSize - Назначить подпрограмму для события перемещения и/или изменения размера главного окна.
Файлы и папки
zmFolderSize - Определить размер в байтах указанного каталога (папки). zmDeleteFolder - Удалить папку (в т.ч. и непустую). zmOpenWithDefault - Открыть файл в программе "по умолчанию". zmCreateLink - Создать ярлык. zmFileGetAtrribute - Получить указанный атрибут файла или папки. zmFileSetAtrribute - Установить/Снять указанный атрибут файлу или папке. zmClearIECache - Очистить временную папку Internet Explorer.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Прмени вместо zmGetWindowHandle команду zmFindWindow, и все встанет на свои места.
И все встало на свои места. А зачем тогда zmGetWindowHandle? Если можно обойтись zmFindWindow.
Quote (Peter)
Правда, с тонкостями отображения окон может возникнуть куча вопросов
Ага, и ни одного слова в справке.
Quote (Peter)
Я чуток дополню свойства команды zmShowWindow
Мож и добавишь в плагин раскладку клавы? Что б два плагина не таскать. А то глянь как "выключился" я, про тот плагин совсем забыл что он отдельно. Я с час наверно эту команду искал, и старые версии поднял, нету. И хелп весь перерыл, даже сендкейс в хелпе нашел, правда функции не нашел. Не хочешь читать хелп?
1. Команда zmGetFileHash модифицирована и теперь позволяет получать три вида контрольной суммы файла: MD5, CRC и CRC32. 2. Появилась команда zmGetStringHash, позволяющая получить хэш-сумму MD5 строки.
Peter, возможно ли добавить получение CRC32 из строки ?
Чуток обновил плагин: добавилась команда поиска файлов по дереву папок zmFindFiles. Обновленный архив, как обычно, в первом сообщении темы. Все подробности в подобии файла справки и в демке.
Убедительная просьба: потестить команду на стабильность работы, т.к. команда оная пока находится в стадии "разработки", и, возможно, будет подвержена изименениям/дополнениям, а может даже и полной переработке.
Quote (Snow_Irbis)
возможно ли добавить получение CRC32 из строки
Да, это возможно. Maybe next update.
Только я тоже не очень врубаюсь зачем нужна именно CRC32 строки, т.к. подобную вещь используют крайне редко.
Quote (mishem)
Ага, и ни одного слова в справке.
Ну это не совсем так, кое-что все-таки есть там по этой теме. Я же неоднократно подчеркивал, что к "подобию плагина" прилагается "подобие справки", а не справка! Когда сумею привести плагин в соответствие с моим "представлением о прекрасном", тогда и справка нормальная будет, а пока это не плагин, а его подобие.
Quote (mishem)
Мож и добавишь в плагин раскладку клавы?
Ну, наверное можно тоже... - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
но можно ли как то по быстрее это реализовать в плагине
Реализовать это в пллагине - в общей сложности полчаса работы (вместе с "обкаткой"), и я думал это сделать сегодня. Но, Snow_Irbis, поскольку вас устроила VB- функция, то реализация через плагин отменяется.
Тема почищена от "лишних" сообщений!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
для файлов кроме crc32/md5 еще sha-1/sha256/sha512 надо бы
Я взял на заметку.
P.S. Что-то новенькое - сообщения, непосредственно относящиеся к теме плагина, теперь прячут под спойлер, а все остальное ("левое") оставляется на виду.
Надо наводить порядок в танковых частях...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Просто на мелких задачах это может быть незаметным.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
[timed] = 9869, т.е. в среднем 101 хэш/сек, для 25000 строк ориентировочно займет 4мин. Но мне сдается, лимитирующий фактор тут вовсе не скорость вычисления хэша, а скорость цикла в нб. Подозреваю что вариант с плагином тоже будет измеряться минутами. Ну кому интересно может сравнить на примере md5 хэша строки, есть вариант в плагине и функции, и сообщить о результатах забега (но для чистоты эксперимента, сам алгоритм должен быть реализован одинаково в функции и плагине конечно же, ну это частности, интересен конечный итог. Алгоритм crc32 более прост чем md5, и соотв-но более быстр, в функции это будет более заметно, там каждая строчка имеет значение, изза траты времени на обработку).
да, 25000 строк md5 за 4093мс, клево! Видимо цикл и остальное это мелочи. Вот чем отличается компилируемый код от интерпретируемого при массивах операций.
Добавлено (04 Ноябрь 2010, 14:34) --------------------------------------------- 6100 хэш/сек
А если учесть что md5 определяется сложнее чем CRC32 то видимое еще быстрее будет обработка , я правильно понимаю
Какая наф разница, и то и другое математические вычисления, и при современных скоростях разница не существенна. Вы че то меряете, непонятно что, абсолютно не понимая что к чему, да еще и в нб Это не столько время на вычисление, сколь просто замер непроворотливости интерпритатора, плюс заморочки винды.
да нам тут и не надо понимать что меряем, мы производим относительный замер. нам важен конечный выхлоп всего этого в виде степени "заторможенности" конечного продукта, которую можно косвенно оценить затратами мс на требуемую операцию, да и дело не в точных измерениях а сравнении между собой двух методов получения конечного выхлопа, и при одинаковых условиях испытаний (непроворотливость интерпритатора, плюс заморочки винды) вывод вполне логичен и практически обоснован. Как задавать вопросы
Справедливо! А для VBS следует ещё прибавить неповортливость его интерпретатора, которая (как-то раз мы уже имели возможность убедиться), может быть даже больше, чем неповоротливость необушного. Не думаю, что скорость вычисления MD5 для строки будет "визуально" меньше, чем для CRC32. Подобные вычисления для машинного кода - семечки!
А если загнать в функцию плагина сразу целиком массив строк, то будет ещё быстрее. Правда, плагин пока умеет работать только "построчно"...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Snow_Irbis, поскольку вас устроила VB- функция, то реализация через плагин отменяется.
Я "снял с повестки дня" этот вопрос. В любом случае, сегодня обновлений не будет, т.к. нету сил сегодня этим заниматься. Денек выдался, к сожалению, не ах... "Выходной"... Засыпаю перед компом...
Quote (Вадим)
спасибище за это чудо!!!!
Не за что! Получилось как-то не так, как представлялось... Корявато...
Добавлено (04 Ноябрь 2010, 22:59) --------------------------------------------- Добавлю все же в функцию CRC32... Но, если так подходить, то надо дублировать все функции Дембеля. Однократно можно...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Вопрос можно, только не бейте А наф вам нужны энти срц и мд5? Что такого суть полезного вы от них получите? С срц я работал только как вычисление контрольной суммы, при передаче данных в некоторых протоколах обмена, и то считаю их излишними, можно с успехом пользовать хотя бы xor.
С срц я работал только как вычисление контрольной суммы, при передаче данных в некоторых протоколах обмена,
А я с ними ВООБЩЕ НИ РАЗУ ещё не работал!
Обрати внимание сколько внимания/вынимания, и сколько постов на форуме, УЖЕ посвящено, её величеству - ЗАЩИТЕ!
Защите несуществующих или никому ненужных программ, данных... Думаю, продолжать не стОит...
Ну ладно, ещё можно понять MD5, но нахрена нужны SHA1-512? Полнейшая загадка....
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
да они нужны не нам, мы вынуждены их применять, вон Snow_Irbis ковыряет базу данных сайта своего, а там данные хэшированы crc32, и все в том же духе. Если б дело было в личном использовании, md5 хватило бы за глаза...
Quote (Peter)
Но, если так подходить, то надо дублировать все функции Дембеля.
продублируй, чего такого, в случае массивов операций когда важна скорость, плаг лучший выбор. Я уже и сам стараюсь выбрать операции для засовывания их в функцию которые вряд ли потребуют массового выполнения (получить системные св-ва какие-нибудь например), тем кто не хочет таскать с собой плагин всегда смогут ими воспользоваться, ну предварительно оценив обстановку в сравнении с плагом, пусть будет выбор. Тут все упирается в твое желание и наличие времени, чего и желаю тебе побольше.
Добавил в плагин подсчет CRC32 для строки, а также SHA1 для файлов. Обновленный вариант в прикреплении к первому сообщению темы.
Функция подсчета SHA1 получилась, к сожалению, какой-то не очень поворотливой (фирменные утиллиты считают быстрее), и я прихожу к выводу, что надо применять в плагине какие-то сторонние готовые компоненты, а не заниматься кустарщиной.
И вообще, плаг превращается в какую-то солянку, смесь всего и вся, а ведь задумка была сделать набор простейших мелких функций. Все настойчивее мысль: разбить плаг на несколько "тематических" частей, например, сделать тот же подсчет хэшей отдельным плагом, т.к. нужны они бывают раз в сто лет в обед.
Quote (DEMBEL)
Snow_Irbis ковыряет базу данных сайта своего, а там данные хэшированы crc32,
И все-равно непонятно какой от этого прок? Ну получил он сумму ЧУЖОЙ строки CRC32, а дальше-то что?
Впрочем, у каждого свои заморочки, но беда в том, что на NB пытаются делать вещи, на которые она совсем не рассчитана, и тут возникает (естесственно) проблема- нужен плагин!
Добавлено (05 Ноябрь 2010, 15:11) ---------------------------------------------
Да, забыл сказать по-поводу "дублирования"... Возможно какие-то вещи и будут продублированы, но это будут те вещи, которые интересны и нужны (естесственно) в первую очередь мне самому. Вот, например, SHA256... Ну нахрен она мне сдалась?...
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться