Метка: delphi

Cпособ защиты программы от несанкционированного копирования

Дробим прогу на exe и несколько DLL-ей, функциям в DLL-ях даем одинаковые public’и, а названия DLL-ям даем длинные, притом начальные части названий должны совпадать, так, чтобы короткие имена отличались только числом после тильды. Вот по коротким-то именам мы их вызывать и будем. А число после тильды, как известно, зависит от порядка копирования файлов на диск, при стирании файлов с «промежуточными» номерами не меняется и при копировании не воспроизводится.

Подробнее

Запустить на выполнение файл от имени любого пользователя

unit HSAdvApi;

interface

uses

Windows;

procedure MyCreateProcess(ConstCommandLine: string);

function CreateProcessWithLogonW(const lpUsername: PWideChar;

const lpDomain: PWideChar; const lpPassword: PWideChar;

dwLogonFlags: DWORD; const lpApplicationName: PWideChar;

lpCommandLine: PWideChar; dwCreationFlags: DWORD;

lpEnvironment: Pointer; const lpCurrentDirectory: PWideChar;

lpStartupInfo: PStartupInfo;

lpProcessInfo: PProcessInformation): Boolean; stdcall;

Подробнее

Bitmap без формы

Как мне загрузить изображение (BMP) и отобразить это на рабочем столе без использования формы? (Я хочу отображать это из DLL).
Существует один способ сделать это: создать холст TCanvas, получить контекст устройства для рабочего стола и назначить его дескриптору холста. После рисования на холсте десктоп отобразит ваше творение. Вот пример:

Подробнее