Форум программистов, компьютерный форум, киберфорум
The trick
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
Старый
Рейтинг: 5.00. Голосов: 1.
Генератор сигналов с визуализацией спектра
Запись от The trick размещена 12.02.2020 в 09:36
Показов 10829 Комментарии 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
Показов 6515 Комментарии 7
Метки vb



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

Всем привет.

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

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


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

Всем привет.

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

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

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


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

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

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


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

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

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

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

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

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


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

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

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

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

Всем привет. Создавая музыку, я видел много разных виртуальных инструментов и эффектов. Одним из интереснейших эффектов является вокодер, который позволяет промодулировать голос и сделать его например похожим на голос робота или что-то в этом духе. Вокодер изначально...
Модератор
Старый
Рейтинг: 5.00. Голосов: 1.
Драйвер на VB6
Запись от The trick размещена 15.11.2014 в 21:59
Показов 8449 Комментарии 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
Показов 8549 Комментарии 5
Метки hash, vb

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

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

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

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

Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 886
Размер:	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
Показов 3291 Комментарии 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
Показов 10459 Комментарии 4
Метки async, vb

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

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

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

TrickButton

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



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

Разработал класс с помощью которого можно работать с сабклассингом. Класс имеет событие WndProc, которое вызывается при получении окном сообщения. Также имеется возможность поставить сабклассинг на класс окон. Имеются методы...
Модератор
Новые блоги и статьи
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru