Последние записи
- Windows 10 сменить администратора
- Рандомное слайдшоу
- Событие для произвольной области внутри 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
15th
Апр
О чтении лицензионного соглашения при установке ПО
дравствуйте.
Однажды от своего знакомого (довольно хорошо дружащего с ПК) услышал (опосредованно, правда), что если при установке ПО не сделать вид, что прочёл лицензию (не просто поставить галочку, о «адекватно» прокрутить лицензию), то программа КРИВО встанет. С тех пор не могу избавиться от этой привычки делать вид каждый раз при установке ПО, хоть до того, когда это услышал, ставил ПО, даже не задумываясь.
Как думаете, это правда? Я, конечно, понимаю, что можно реализовать такую тактику, но всё же… (читать всё…)
14th
Апр
Заполнить значения StringGrid из переменных
На форме лежат StringGrid (1 фиксированная строка + 1 пустая, 3 столбца), 3 Edit’a и Кнопка. По нажатию кнопки в Грид нужно записать содержимое Едитов (соответственно к каждой ячейке свой Эдит). При следующем нажатии, необходимо добавить строку, и записать новые значения из Эдитов, и так далее… Как это можно реализовать ?
DenProx
var x,y : integer;
begin
y := RzStringGrid1.RowCount -1;
x:=0;
RzStringGrid1.Cells[x,y]:= IntToStr(RzStringGrid1.RowCount -1);
inc(x);
RzStringGrid1.Cells[x,y] := Edit1.Text;
inc(x);
RzStringGrid1.Cells[x,y] := Edit2.Text;
RzStringGrid1.RowCount := RzStringGrid1.RowCount + 1;
y:=0;
Корпусная мебель оптом от российского производителя.
14th
Вывод пустых ячеек вместо 0000-00-00
Есть таблица в которой есть поля с датой: ‘datainet’, ‘datamail’, ‘datarereg’;
там, где дата не заполнена при выводе отображается 0000-00-00..
Как избавиться от этого и вместо 0000-00-00 выводить пустую ячейку таблицы или прочерк?? (читать всё…)
13th
Апр
Стереть параметры запуска после запуска
Есть у меня своя программа. И есть некоторая сторонняя программа, которая имеет несколько возможных параметров запуска. Так вот я запускаю эту стороннюю программу через shellexecute и передаю туда нужные параметры запуска.
На самом деле эти параметры запуска «секретные», там пароли, коды и всё такое, которые посторонние люди знать не должны, но люди пользуясь сторонним софтом эти параметры выдирают. Можно ли после запуска программы их стереть, как будто я запускал программу без каких-либо параметров запуска?
Anton911
memoffset = $85004; // смещение указателя на адрес где параметры от kernel32.dll
procedure DetectCode;
var
wBuff: Array[0..350] of Char;
sBuff,tBuff:String;
point_addr, kernelBase:DWORD;
wHandle, ProcessID, pHandle, BytesCount: cardinal;
i:Integer;
begin
Form1.Console.Clear;
pHandle := 0;
wHandle := 0;
kernelBase := GetModuleHandle(PWideChar('Kernel32.dll'));
ShellExecute(0,'Open', PWideChar(ExtractFilePath(ParamStr(0)) + 'proga.exe'),
PWideChar(GetParam), nil, SW_SHOWNORMAL);
while wHandle = 0 do wHandle := IsProgRun;
if wHandle 0 then
begin
GetWindowThreadProcessId(wHandle, @ProcessID);
pHandle := OpenProcess(PROCESS_ALL_ACCESS, FALSE, ProcessID);
if not ReadProcessMemory(pHandle, Pointer(kernelBase + memoffset), @point_addr, sizeof(point_addr), BytesCount) then
Form1.Console.Lines.Add('Не могу получить адресс указателя на смещение');
{}
sBuff := wBuff;
FillChar(wBuff, SizeOf(wBuff), #0);
tBuff := Copy(sBuff, 1, Pos('-password=', sBuff) - 1);
Delete(sBuff, 1, Pos('-password=', sBuff) - 1);
if Pos(' ', sBuff) 0 then
begin
Delete(sBuff,1, Pos(' ', sBuff));
tBuff := tBuff + sBuff;
end;
for i := 0 to Length(tBuff) - 1 do
begin
wBuff := tBuff;
end;
if not WriteProcessMemory(pHandle, Pointer(point_addr), @wBuff, sizeof(wBuff), BytesCount) then
Form1.Console.Lines.Add('Не могу внедриться в программу');
end;
end;
Пеллетные котлы Kostrzewa — автоматические твердотопливные котлы с ёмкостью бункера обеспечивающего непрерывную работу — 1 неделю и больше. Автоматический розжиг и модуляция процесса горения от 20% до 100%.
12th
Запись звука с помощью MediaPlayer
Нужно разработать программу записи звукового файла с использованием TMediaPlayer, помогите с кодом.
misher
Взято из Delphi World
procedure TForm1.btRecordClick(Sender: TObject);
begin
with Media do
begin
{ Set FileName to the test.wav file to }
{ get the recording parameters. }
FileName := 'd:\test.wav';
{ Open the device. }
Open;
{ Start recording. }
Wait := False;
StartRecording;
end;
end;
procedure TForm1.btStopClick(Sender: TObject);
begin
with Media do
begin
{ Stop recording. }
Stop;
{ Change the filename to the new file we want to write. }
FileName := 'd:\new.wav';
{ Save and close the file. }
Save;
Close;
end;
end;
Пост написан при поддержке ooo-bioterm.ru
Сервисный центр по установке отопительного оборудования тут — http://ooo-bioterm.ru
11th
Апр
Передача текстового сообщения между двумя приложениями
Нужен пример передачи текстового сообщения между 2 приложениями, через 2 функции — SendMessage и GetMessage.
stalker1995s
Технология Soket’s стандартный компоненты, находятся в закладке ‘internet’.
ServerSocket,ClientSocket — Название говорит само за себя, не правда ли ?. Начнем.
Для начала, сервер надо включить.
В кнопку, либо при создании формы.
ServerSocket.Active:=True;
ServerSocket.Port:=9999; // Пот по которому будем подключатся.
ServerSocket1.Socke.SendText(Str); // Сама функция отправки сообщения, Str переменная типа String
Прием сообщения. Тут уже на клиенте
Для начала подключимся.
В кнопку, либо при создании формы.
ClientSocket1.Host:=ad; //ваш ip адрес (127.0.0.1 — localhost)
ClientSocket1.Port:=9999; // Тот самый порт что был на сервере
ClientSocket1.Active:=true;
Подключились, теперь и принимать можем.
В закладке Events уClientSocket.
В OnRead;
Massage:=Socket.ReceiveText; // Теперь, переменная Message содержит твое сообщение, можем делать с ним что хочешь.
Растяжки в Москве убирают. Баннеры и прочие билборды. Открыли для себя новый вид рекламы из рук в руки :).
Симпотичные девушки почти студенты распостраняют нашу рекламу недалеко от офиса.
Раздачу листовок заказывал тут
11th
Группировка полей с разделителем в mysql
В базе две таблицы users, category(связь по полю id_user), у пользователя много категорий(заранее не известно сколько пользователь выбирет), мне нужно вывести данные в таблицу построчно(всех пользователей) чтобы в ячейке category были все категории пользователя (читать всё…)
Облако меток
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 (Компьютерное железо)