Последние записи
- Рандомное слайдшоу
- Событие для произвольной области внутри TImage
- Удаление папки с файлами
- Распечатка файла
- Преобразовать массив байт в вещественное число (single)
- TChromium (CEF3), сохранение изображений
- Как в Delphi XE обнулить таймер?
- Изменить цвет шрифта TextBox на форме
- Ресайз PNG без потери прозрачности
- Вывод на печать графического файла
Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk
Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - ttps://clck.ru/fCrQw
7th
Апр
Как сделать прозрачной картинку в delphi
Возьмите bmp, весь “ненужный” фон закрасьте розовым (R:FF G:0 B:FF) потом загрузите эту картинку в tBitMap и нарисуйте сделайте ему следующие “ампутации”:
Код:
Bit.Transparent:=TRUE;
Bit.TransparentColor:=$FF00FF;
Потом нарисуйте его на канве картинки.
Если не устраивает – возьмите компонент TPngImage
7th
Создание аудио плеера на bass.dll
Участник форума просит пошаговое создание аудиоплеера. Но, как заметил профессионал форума BOBAH13, к глубочайшему сожалению в нашем мире нет пошаговых инструкций, к тем продуктам, которые Вы/мы хотите создать Приходиться самим выкручиваться.
И вот другие профессионалы выкручиваются и дают советы, помагают в этом деле.
Очень интересная тема, предлагаю присоединиться к обсуждению на форуме.
3rd
Апр
Реализация самобалансирующегося (красно-черного или АВЛ, не суть важно) дерева на Delphi
Нашел библиотеку для Delphi где есть ассоциативные массивы на базе красно-черного дерева. Прикрутил, работает, то что надо, быстрее раз в 20 стало. Тут >>> есть описание, там и другие библиотеки упоминаются, но я сделал на той, о к-рой статья, там много чего еще в ней есть, практически реализация STL для Delphi.
Во вложении адаптированный для D2009 главный модуль библиотеки (к статье приложена версия адаптированная для D7), еще я там отключил пул, в начале юнита директива, с ним программа вываливалась с исключением. Насчет остальных модулей не знаю, мне они не понадобились, только этот и еще один (mwFixedRecSort.pas), но там без изменений.
2nd
Апр
Что делать если притормаживает при передвижении окон приложений?
Установил Windows XP sp3.
Немного притормаживает когда окна приложений передвигаю или в интернете по лифту страницу просматриваю… у меня мало опер.памяти, 265(ddr-dimm). Мне надо ещё одну планку поставить? (важно ли производитель памяти или можно любую ddr-dimm)
mihali4:
Скорее всего, причина в дровах для видюхи (если они вообще установлены).
2nd
Игра antiPackman
Posted by Chas under Топик-обзор
Вот, на днях такая идея в голову пришла.
Может быть она не оригинальная, но мне почему то показалось, что я такой фичи нигде не видел.
Программа тестировалась на ОС WindowsXP SP3. в режимах 1024*768, 800*600 и 1280*1024. Работоспособность на других ОС-ах не гарантируется, хотя особенно веских причин для отказа на других виндах не вижу.
Максимальная загрузка четвёртого пентиума 3 GHz составила 9%.
Это важно:
1. Безусловный выход из программы – ESC.
2. Перед запуском программа попытается свернуть все окна.
1st
Апр
Рассылка. Выпуск 52
От ведущего.
Здравствуйте товарищи. Как и обещали, теперь рассылка будет выходить каждую неделю. Вот наступил четверг и новый номер рассылки готов. За такой короткий срок произошло не мало интересных событий в нашем клубе программистов. Был выпущен первый номер журнала “ПРОграммист”. Подведены итоги конкурса на создание лучшего бота для игры “Fortress” и многое другое читайте в сегодняшнем выпуске.
31st
Мар
Функция для удаления любого процесса, в котором включается привилегия доступа SE_DEBUG_NAME
{
bool Co;
HANDLE FS;
HANDLE hProcess = NULL;
DWORD dwError;
int result;
FS = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
ProcEntry.dwSize = sizeof(ProcEntry);
Co = Process32First(FS, &ProcEntry);
while (Co)
{
if ( ProcEntry.szExeFile == ExeFileName )
{
hProcess = OpenProcess(PROCESS_TERMINATE, false, ProcEntry.th32ProcessID);
if (hProcess == NULL)
{
if (GetLastError() != ERROR_ACCESS_DENIED)
return FALSE;
OSVERSIONINFO osvi;
// определяем версию операционной системы
osvi.dwOSVersionInfoSize = sizeof(osvi);
GetVersionEx(&osvi);
// мы больше ничего не можем сделать, если это не Windows NT
if (osvi.dwPlatformId != VER_PLATFORM_WIN32_NT)
return SetLastError(ERROR_ACCESS_DENIED), FALSE;
// включим привилегию SE_DEBUG_NAME и попробуем еще раз
TOKEN_PRIVILEGES Priv, PrivOld;
DWORD cbPriv = sizeof(PrivOld);
HANDLE hToken;
// получаем токен текущего потока
if (!OpenThreadToken(GetCurrentThread(),
TOKEN_QUERY|TOKEN_ADJUST_PRIVILEGES,
FALSE, &hToken))
{
if (GetLastError() != ERROR_NO_TOKEN)
return FALSE;
// используем токен процесса, если потоку не назначено
// никакого токена
if (!OpenProcessToken(GetCurrentProcess(),
TOKEN_QUERY|TOKEN_ADJUST_PRIVILEGES,
&hToken))
return FALSE;
}
_ASSERTE(ANYSIZE_ARRAY > 0);
Priv.PrivilegeCount = 1;
Priv.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
LookupPrivilegeValue(NULL, SE_DEBUG_NAME, &Priv.Privileges[0].Luid);
// попробуем включить привилегию
if (!AdjustTokenPrivileges(hToken, FALSE, &Priv, sizeof(Priv),
&PrivOld, &cbPriv))
{
dwError = GetLastError();
CloseHandle(hToken);
return SetLastError(dwError), FALSE;
}
if (GetLastError() == ERROR_NOT_ALL_ASSIGNED)
{
// привилегия SE_DEBUG_NAME отсутствует в токене
// вызывающего
CloseHandle(hToken);
return SetLastError(ERROR_ACCESS_DENIED), FALSE;
}
// попробуем открыть описатель процесса еще раз
hProcess = OpenProcess(PROCESS_TERMINATE, FALSE, ProcEntry.th32ProcessID);
dwError = GetLastError();
// восстанавливаем исходное состояние привилегии
AdjustTokenPrivileges(hToken, FALSE, &PrivOld, sizeof(PrivOld),
NULL, NULL);
CloseHandle(hToken);
if (hProcess == NULL)
return SetLastError(FALSE), NULL;
}
// пытаемся завершить процесс
if (!TerminateProcess(hProcess, (UINT)-1))
{
dwError = GetLastError();
CloseHandle(hProcess);
return SetLastError(dwError), FALSE;
}
}
Co = Process32Next(FS, &ProcEntry);
}
CloseHandle(FS);
CloseHandle(hProcess);
return TRUE;
}
31st
Зачем делать ADOQuery1.Close перед изменением SQL запроса?
Вам никогда не приходилось обращаться к встроенной в Дельфи справке?
Ну, тогда приведу пример из нее:
Delphi Object and Component Reference
SQL, ExecSQL example
______________________________________________________
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add(’Delete from Country where Name = ”Argentina”’);
Query1.ExecSQL;
По-простому, попытка любого изменения SQL без этого – сродни попытке замены поршневых колец на работающем двигателе… ©mihali4
30th
Мар
Как отловить капчу вконтакте и потом передать текст с нее опять на сайт?
Был предложен такой вариант:
На сколько мне припоминается то когда капчу можно отловить в исходном коде(то что прийдёт от Get/Post запроса) приходит что то вроди такого:
{"ok":-2,"captcha_sid":"703109533263","text":"Enter code"}
Парсим значение “captcha_sid”, в данном случае это “703109533263″, далее подставляем в ссылку вида http://vkontakte.ru/captcha.php?s=1&sid=******* (как вы догадались заместь ******* подставляем значение captcha_sid которые мы ранее спарсили) и получаем прямую ссылку на картинку каптчи!
Что бы потом текст картинки отослать ВК нужно сделать следующее:
1) Добавить в конец пост запроса(при логине, отправке сообщения и тд) значение captcha_sid.
2) Непосредственно добавить сам текст с картинки: в параметре captcha_key.
Например: я расмотрю на примере когда каптча “вылазит” при авторизации на сайт, для этого нам нужно отослать пост запрос с таким содержимым:
op=a_login_attempt
captcha_sid=captcha_sid
captcha_key=captcha_key
captcha_sid = ранье спарсенное значение
captcha_key = сам текст с картинки
Более подробно о пост запросе вы можете узнать в любом HTTP снифере(HTTPAnalyzer и прочие аналоги)
Облако меток
css реестр ассемблер timer SaveToFile ShellExecute программы массив советы word MySQL SQL ListView pos random компоненты дата LoadFromFile form база данных сеть html php RichEdit indy строки Win Api tstringlist Image мысли макросы Edit ListBox office C/C++ memo графика StringGrid canvas поиск файл Pascal форма Файлы интернет Microsoft Office Excel excel winapi журнал ПРОграммист DelphiКупить рекламу на сайте за 1000 руб
пишите сюда - alarforum@yandex.ru
Да и по любым другим вопросам пишите на почту
пеллетные котлы
Пеллетный котел Emtas
Наши форумы по программированию:
- Форум Web программирование (веб)
- Delphi форумы
- Форумы C (Си)
- Форум .NET Frameworks (точка нет фреймворки)
- Форум Java (джава)
- Форум низкоуровневое программирование
- Форум VBA (вба)
- Форум OpenGL
- Форум DirectX
- Форум CAD проектирование
- Форум по операционным системам
- Форум Software (Софт)
- Форум Hardware (Компьютерное железо)