Форум программистов, компьютерный форум, киберфорум
The trick
Войти
Регистрация
Восстановить пароль
Старый
Рейтинг: 5.00. Голосов: 1.
Генератор сигналов с визуализацией спектра
Запись от The trick размещена 12.02.2020 в 09:36
Показов 10874 Комментарии 0
Метки vb

Всем привет!

В данном проекте реализован простой генератор нескольких звуковых сигналов с визуализацией их спектра. Список сигналов включает в себя:
  1. Белый шум;
  2. Розовый шум;
  3. Коричневый/красный шум;
  4. Синий шум;
  5. Фиолетовый шум;
  6. Синусоида с изменяющейся частотой;
  7. Прямоугольная волна (нечетные гармоники убывающие на 6db/oct);
  8. Пилообразная
...
Модератор
Старый
Рейтинг: 5.00. Голосов: 2.
PNG/ICO/CUR/ANI изображения в стандартных контролах VB6.
Запись от The trick размещена 23.01.2019 в 23:55
Показов 6576 Комментарии 7
Метки vb



ОПИСАНИЕ УСТАРЕЛО. АКТУАЛЬНОЕ ОПИСАНИЕ НА GITHUB.

Всем привет.

Как известно встроенные средства Visual Basic 6.0 не поддерживают возможности работы с PNG изображениями, т.е. к примеру нельзя ипользовать Png картинку в качестве свойства Form.Picture. Я представляю небольшую библиотеку и Add-in которые позволяют обойти эти ограничения. Данная библиотека позволяет...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Модуль для работы с многопоточностью на VB6
Запись от The trick размещена 12.06.2018 в 20:12
Показов 7291 Комментарии 13
Метки vb

Всем привет!
Представляю модуль для работы с многопоточностью на VB6 для Standard EXE проектов. Данный модуль разработан на основе этого решения в котором исправлены некоторые баги и добавлен дополнительный функционал. Модуль не требует никаких дополнительных зависимостей и библиотек типов, работает как в IDE (все функции работают в главном потоке) так и в скомпилированном виде.


Для начала работы с модулем нужно вызывать функцию Initialize, которая...
Модератор
Старый
Direct2D, DirectWrite, WIC
Запись от The trick размещена 26.05.2018 в 11:35
Показов 6584 Комментарии 2
Метки vb

Всем привет.

Представляю библиотеки типов для работы с Direct2D, DirectWrite и Windows Imaging Component. Также в архиве содержатся вспомогательные модули и примеры работы с данными библиотеками типов. Библиотеки довольно "сырые" поэтому будут дополнятся (новые сущности доступные в Win8 и позже, вспомогательные функции и т.д.) и исправляться различные баги.
Для работы некоторых методов и интерфейсов необходимо подключить библиотеку OLEEXP.

Нажмите на изображение для увеличения
Название: b9ec1c30dcf49cb6423b8d74ecef7112.png
Просмотров: 2006
Размер:	19.5 Кб
ID:	4827Нажмите на изображение для увеличения
Название: 77b5fc308794a6a4ddd6228c9771bcfc.png
Просмотров: 1319
Размер:	116.9 Кб
ID:	4828Нажмите на изображение для увеличения
Название: 9742efcf1e884b6b6395ba5e195d4712.png
Просмотров: 1144
Размер:	11.6 Кб
ID:	4829Нажмите на изображение для увеличения
Название: b41b563f25e1aafee8da59caa468f132.png
Просмотров: 1188
Размер:	48.3 Кб
ID:	4830...
Модератор
Старый
Рейтинг: 5.00. Голосов: 3.
"Hello world" в машинных кодах.
Запись от The trick размещена 09.12.2016 в 04:47
Показов 25720 Комментарии 5

Всем привет. Как известно большинство из нас создают программы используя языки высокого уровня, некоторые также используют ассемблер. Сегодня мы с вами напишем программу используя только HEX редактор. Подразумевается что читатель знает строение исполняемых файлов хотя бы...
Модератор
Старый
Создаем VST эффект на ассемблере
Запись от The trick размещена 27.11.2016 в 03:08
Показов 6654 Комментарии 4
Метки asm, assembler, fasm, vst


Всем привет, сегодня я хотел бы рассказать как написать простейший VST плагин на ассемблере. Те кто создает музыку на компьютере, или занимается обработкой звука хорошо знакомы с этими плагинами и часто используют их как для генерации звука так и для обработки. Основное...
Модератор
Старый
Trick Advanced Tools.
Запись от The trick размещена 28.09.2016 в 11:03
Показов 7461 Комментарии 2

Всем привет!
Представляю вашему вниманию небольшую разработку - Add-in который позволяет в некоторой степени облегчить отладку некоторых программ, а также расширяет возможности компиляции. Все исходные коды прилагаются.
Данный Add-in имеет следующие возможности:
  • Исправляет баг с Not Not Array после которого часто выскакивала ошибка "Expression too complex" если начать работать с вещественными числами;
  • Позволяет использовать
...
Модератор
Старый
Загрузчик, шеллкод, без рантайма... (часть 2)
Запись от The trick размещена 14.09.2016 в 19:28
Показов 4827 Комментарии 0
Метки vb

Первая часть ->.
После извлечения файлов вызывается функция ExecuteProcess которая запускает выполнение команд используя функцию ShellExecuteEx:
Visual Basic
1
2
3
4
5
6
' // Execution command process
Function ExecuteProcess() As Boolean
    Dim index       As Long:                Dim bItem       As BinExecListItem
    Dim pPath       As Long:                Dim pErrMsg     As Long
    Dim shInfo      As SHELLEXECUTEINFO:    Dim pTempString As Long
    Dim pItem
...
Модератор
Старый
Загрузчик, шеллкод, без рантайма... (часть 1)
Запись от The trick размещена 14.09.2016 в 19:20
Показов 6451 Комментарии 0
Метки vb

Всем привет! Когда-то давно я исследовал PE-формат, в особенности EXE. Я решил создать простой загрузчик исполняемых файлов специально для VB6-скомпилированных приложений. Этот загрузчик, по моим задумкам, должен загружать любое VB6-скомпилированное приложение из памяти,...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Компьютер сочиняет музыку
Запись от The trick размещена 27.01.2016 в 13:10
Показов 8047 Комментарии 13
Метки vb


Кликните здесь для просмотра всего текста

Кликните здесь для просмотра всего текста

Всем привет. Как-то давно я делал виртуального композитора для создания 8-бит музыки, но в итоге забросил это дело. Я даже писал об этом и выкладывал демки (вот и вот). На днях я немного доработал его + добавил свои синтезаторы (вот и вот) в него + банки пресетов к ним.
Кстати там же можете добавлять новые пресеты и сохранять их.
Конечно музыкой...
Модератор
Старый
Рейтинг: 5.00. Голосов: 2.
Inline assembler
Запись от The trick размещена 11.01.2016 в 16:38
Показов 4376 Комментарии 3
Метки asm, vb

Всем привет.
Бывают ситуации когда в VB нужно использовать ассемблер. Обычно для этого используют предварительно скомпилированный код размещенный в памяти и запускают его одним из миллиона способов. Очевидным недостатком этого метода является то, что любая модификация...
Модератор
Старый
Стеганография в WAVE файлах.
Запись от The trick размещена 26.12.2015 в 22:43
Показов 5108 Комментарии 4
Метки vb

Всем привет!
Сегодня я хотел бы поговорить о криптографии. Я сделал пример использования специальной криптографии - стеганографии. Этот метод скрывает сам факт шифрования данных. Существует множество видов стеганографии. Я бы хотел поговорить о LBS-методе, в котором...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
DirectSound в VB6.
Запись от The trick размещена 27.07.2015 в 13:46
Показов 3943 Комментарии 1
Метки vb

Параллельно с Direct3D9 я делал библиотеку типов и модуль с вспомогательными функциями для DirectSound. В архиве библиотека типов dsvb.tlb и модуль DS_Functions.bas. В дальнейшем добавлю модуль класса для поддержки асинхронных уведомлений, пока можно пользоваться этим.
В модуле DS_Functions содержатся следующие функции:
  • DSCreateSoundBufferFromFile - создает объект с интерфейсом IDirectSoundBuffer8 из файла. Поддерживаются только WAVE и MP3 файлы. MP3 файлы
...
Модератор
Старый
Direct3D9 в VB6
Запись от The trick размещена 27.07.2015 в 13:42
Показов 6685 Комментарии 0
Метки direct3d, vb

Всем привет.
Уже довольно давно занимаюсь созданием библиотеки типов Direct3D9 и вспомогательных функций D3DX для VB6.
Итак в архиве содержится библиотека типов "DirectX 9 for Visual Basic 6.0 type library by The trick" (dx9vb.tlb) содержащая описание следующих интерфейсов:
  • IDirect3D9;
  • IDirect3DDevice9;
  • IDirect3DSurface9;
  • IDirect3DResource9;
  • IDirect3DSwapChain9;
  • IDirect3DTexture9;
  • IDirect3DBaseTexture9;
  • IDirect3DVolumeTexture9;
  • IDirect3DVolume9;
  • IDirect3DCubeTexture9;
  • IDirect3DVertexBuffer9;
  • IDirect3DIndexBuffer9;
  • IDirect3DStateBlock9;
  • IDirect3DVertexDeclaration9;
  • IDirect3DVertexShader9;
  • IDirect3DPixelShader9;
  • IDirect3DQuery9;
...
Модератор
Старый
Использование COM/ActiveX библиотек без регистрации в реестре.
Запись от The trick размещена 25.05.2015 в 22:15
Показов 6416 Комментарии 5
Метки activex, com, vb

Привет всем. Выкладываю модуль для работы с COM-Dll без регистрации в реестре.
Модуль имеет несколько функций:
  1. GetAllCoclasses - возвращает список имен классов вместе с идентификаторами извлеченными из библиотеки типов.
  2. CreateIDispatch - создает реализацию IDispatch на основе объекта и имени интерфейса.
  3. CreateObjectEx2 - создает объект по имени.
  4. CreateObjectEx - создает объект по CLSID.
  5. UnloadLibrary - Выгружает библиотеку, если та не используется.

Visual Basic
1
' The module modTrickUnregCOM.bas
...
Модератор
Старый
Рейтинг: 4.50. Голосов: 2.
Класс - MP3 проигрыватель из памяти.
Запись от The trick размещена 26.04.2015 в 22:10
Показов 5528 Комментарии 2
Метки vb

Всем привет. Я разработал класс для асинхронного воспроизведения MP3 файлов в памяти. Например это может пригодится для воспроизведения фоновой музыки из ресурсов или из сети минуя запись в файл. Воспроизводить можно несколько файлов одновременно, но некоторые параметры воспроизведения...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Многопоточность в VB6 часть 4 - многопоточность в Standart EXE.
Запись от The trick размещена 17.02.2015 в 01:07
Показов 8519 Комментарии 1
Метки multithreading, vb


Всем привет. Сейчас у меня мало времени, поэтому я уже не так часто уделяю внимание бейсику и реже появляюсь на форумах. Сегодня я опять буду говорить о многопоточности, на этот раз в Standart EXE. Сразу скажу что все о чем я пишу является моим личным исследованием и может в чем-то не соответствовать действительности; также из-за моего недостатка...
Модератор
Старый
Рейтинг: 4.50. Голосов: 2.
3D елка на рабочий стол
Запись от The trick размещена 04.01.2015 в 16:33
Показов 8359 Комментарии 15
Метки new year, vb

Я как-то уже делал такую, но в этот раз я добавил возможность регулировки параметров создания.
Для работы нужна dx8vb.dll (внутри архива, положить в папку с программой). Выход по двойному клику. С новым годом!

10.02.2015 - исправлена ошибка начального положения окна.
Модератор
Старый
Вокодер на VB6 часть 2
Запись от The trick размещена 01.12.2014 в 19:09
Показов 4145 Комментарии 0
Метки vb

Первая часть.
Итак, исходный сигнал и модулирующий мы имеем. Теперь следующим этапом является фильтрация. Можно пойти несколькими путями: использовать банк фильтров (БИХ, КИХ), либо использовать БПФ (FFT, быстрое преобразование Фурье) или Вейвлет-преобразование. Для своей задачи...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Вокодер на VB6 часть 1
Запись от The trick размещена 01.12.2014 в 19:08
Показов 5047 Комментарии 0
Метки vb

Всем привет. Создавая музыку, я видел много разных виртуальных инструментов и эффектов. Одним из интереснейших эффектов является вокодер, который позволяет промодулировать голос и сделать его например похожим на голос робота или что-то в этом духе. Вокодер изначально...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Драйвер на VB6
Запись от The trick размещена 15.11.2014 в 21:59
Показов 8494 Комментарии 4
Метки driver, vb


Всем привет. Появилось время и решил написать что-то необычное на VB6, а именно попытаться написать драйвер. Сразу скажу до этого я никогда не писал драйвера и не имею никакого опыта программирования в режиме ядра. Драйвер, по моим задумкам, должен будет читать память недоступную в пользовательском режиме, а именно в диапазоне 0x80000000 - 0xffffffff (в режиме по-умолчанию, без IMAGE_FILE_LARGE_ADDRESS_AWARE). Сразу приведу исходный код драйвера который получился:
Visual Basic
1
' modTrickMemReader.bas
...
Модератор
Старый
Рейтинг: 4.00. Голосов: 1.
Хеш - таблица VB6
Запись от The trick размещена 08.11.2014 в 03:43
Показов 8590 Комментарии 5
Метки hash, vb

Как-то я уже делал реализацию простой хеш-таблицы для демонстрации использования IEnumVariant интерфейса для перечисления в цикле For Each. Представляю автономный класс реализующий хеш-таблицу, который во многих случаях может стать заменой словаря (Dictionary) из Scripting runtime. Реализованы все те же методы что и у словаря, а также добавлены новые.
Включена поддержка перечисления через For Each, также можно задавать режим перечисления ключи/значения,...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Многопоточность в VB6 часть 3 - внедрение в чужой процесс.
Запись от The trick размещена 12.10.2014 в 14:03
Показов 6571 Комментарии 0
Метки injection, multithreading, vb

В прошлой части я написал о возможности создания потока в DLL, и о методе создания нативной DLL на VB6. Также я написал о том, что такая DLL будет работать в любом приложении, но примера не привел. В этой части мы напишем DLL которая будет выполняться в чужом 32-разрядном процессе...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Многопоточность в VB6 часть 2 - создание Native DLL и вызов экспортируемой функции в другом потоке.
Запись от The trick размещена 11.10.2014 в 23:13
Показов 9055 Комментарии 0
Метки multithreading, vb

Сегодня я расскажу о еще одном методе написания многопоточных программ на VB6, а именно создание потока в Native DLL. В принципе здесь нет ничего сложного, передаем в CreateThread адрес экспортируемой функции и она будет исполнена в другом потоке. Все бы хорошо, но стандартными, документированными возможностями VB6 не позволяет создавать нативные...
Модератор
Старый
Многопоточность в VB6 часть 1 - создание объекта в другом потоке и подписка на события.
Запись от The trick размещена 02.10.2014 в 18:07
Показов 10224 Комментарии 1
Метки multithreading, vb

Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 826
Размер:	6.8 Кб
ID:	2758
Многие интересуются вопросами многопоточности программ, написанных на VB6. Писать многопоточные программы на VB6 вполне реально, у меня есть множество примеров которые я также публиковал в своем блоге, но существуют ограничения, которые так или иначе можно обойти....
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
DirectX слоеное окно
Запись от The trick размещена 28.09.2014 в 23:57
Показов 7365 Комментарии 15
Метки directx, vb

Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 892
Размер:	202.0 Кб
ID:	2744
По просьбе Pro_grammer'а написал пример слоеного Direct3D окна. В окне отображается 3D модель, используется мультитекстурирование, в качестве отражения используется интерактивный скриншот экрана. Используется DirectX8.
Для работы нужна библиотека dx8vb.dll. Вращение по оси Х - правой кнопкой.

Visual Basic
1
2
' Класс frmDXWindow - слоеное окно Direct3D
' © Кривоус Анатолий Анатольевич (The trick), 2014
...
Модератор
Старый
Смещения методов объектов.
Запись от The trick размещена 14.09.2014 в 02:20
Показов 3323 Комментарии 0
Метки vb

Здесь я буду публиковать смещения методов в VTABLE, для различных интерфейсов.
VB.Form (_Form)
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
&H48     Name_Get
&H50     Caption_Get
&H54     Caption_Set
&H58     hWnd_Get
&H60     BackColor_Get
&H64     BackColor_Set
&H68     ForeColor_Get
&H6C     ForeColor_Set
&H70     Left_Get
&H74     Left_Set
&H78     Top_Get
&H7C     Top_Set
&H80     Width_Get
...
Модератор
Старый
Класс для асинхронного ожидания объектов ядра
Запись от The trick размещена 07.09.2014 в 00:54
Показов 10502 Комментарии 4
Метки async, vb

ОПИСАНИЕ УСТАРЕЛО. АКТУАЛЬНОЕ ОПИСАНИЕ НА GITHUB.

Разработал класс для асинхронного ожидания объектов ядра. Класс генерирует событие при установке объекта в сигнальное состояние или при таймауте. Работает с любыми объектами.
Класс имеет 3 метода vbWaitForSingleObject, vbWaitForMultipleObjects, IsActive, Abort. Первые два аналогичны вызову одноименных API функций без префикса "vb" и запускают ожидание...
Модератор
Старый
Рейтинг: 5.00. Голосов: 4.
TrickControls
Запись от The trick размещена 03.09.2014 в 04:54
Показов 9920 Комментарии 8
Метки vb

Всем привет.
Здесь я буду собирать библиотеку контролов (OCX) вместе с исходными кодами по мере свободного времени. Все контролы поддерживают юникод.
PS. Особо тестировать у меня времени нет, так что буду рад если кто-то будет сообщать о багах мне.

TrickButton

Контрол - кнопка. Поддерживает полупрозрачность а также 32 битные иконки.
В качестве темы используется картинка с 10 состояниям кнопки. Последовательность состояний следующая:
  1. Нормальное
...
Модератор
Старый
Класс для сабклассинга окон и классов.
Запись от The trick размещена 16.06.2014 в 00:58
Показов 6130 Комментарии 7
Метки vb



ОПИСАНИЕ УСТАРЕЛО. АКТУАЛЬНОЕ ОПИСАНИЕ НА GITHUB.

Разработал класс с помощью которого можно работать с сабклассингом. Класс имеет событие WndProc, которое вызывается при получении окном сообщения. Также имеется возможность поставить сабклассинг на класс окон. Имеются методы...
Модератор
Новые блоги и статьи
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru