Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


Ivan_009,
почему именно Inno Fairy?
есть ведь isgsg.dll#
________________
вот наполовину готово
текущее разрешение поставил ) (при каком разрешении монитора запускают то и будет)
только не используй тк скрипт почистить нужно
А как растянуть хз
читать дальше »
Код: Выделить весь код
//Пример работы с fairy.dll. Через c .jpg

#include "fairy.iss"

[Setup]
AppName=fairy
AppVerName=fairy Ver 2.0
DefaultDirName={pf}\fairy
DefaultGroupName=fairy
OutputDir=.
SolidCompression=yes

[Files]
Source: miku.jpg; Flags: dontcopy

[  code]
///////// начало
function DeleteDC(hDC: Integer): Integer;
external 'DeleteDC@GDI32 stdcall';

function CreateDC(lpDriverName, lpDeviceName, lpOutput: String; lpInitData: Integer): Integer;
external 'CreateDCA@GDI32 stdcall';

function GetDeviceCaps(hDC, nIndex: Integer): Integer;
external 'GetDeviceCaps@GDI32 stdcall';



Const
    HORZRES = 8;    //horizontal resolution
    VERTRES = 10;   //vertical resolution
    BITSPIXEL = 12; //bits per pixel
    PLANES = 14;    //number of planes (color depth=bits_per_pixel*number_of_planes)
////////// конец

function GetSysColor(nIndex: Integer): DWORD; external 'GetSysColor@user32.dll stdcall';
function GetWindowLong(hWnd, nIndex: Integer): Longint; external 'GetWindowLongA@user32.dll';

var
  GifFrameCount: Integer;

function ColorToRGB(Color: TColor): Longint;
begin
  if Color < 0 then
    Result := GetSysColor(Color and $000000FF)
  else
    Result := Color;
end;

procedure InitializeWizard();
var
  Btn: TNewButton;
  ImgFile: AnsiString;
  S: AnsiString;
  x, y: Integer;
  BAlpha, TransparentColor: Integer;
  ///////// начало
  xres, yres, bpp, pl, tmp: Integer;
  hDC: Integer;
  ////////// конец
begin
///////// начало
    //get resolution & BPP
    hDC := CreateDC('DISPLAY', '', '', 0);
    pl := GetDeviceCaps(hDC, PLANES);
    bpp := GetDeviceCaps(hDC, BITSPIXEL);
    xres := GetDeviceCaps(hDC, HORZRES); //horizontal resolution
    yres := GetDeviceCaps(hDC, VERTRES); //vertical resolution

////////// конец
  InitFairy(GetWindowLong(MainForm.Handle, -8), 0, 20);
  ImgFile := 'miku.jpg';
  ExtractTemporaryFile(ImgFile);
  x := -xres div 2;  // Расположение изображения (горизонталь [X]). По умолчанию -1280.
  y := -yres div 2;   // Расположение изображения (Вертикаль [Y]). По умолчанию -960.
  BAlpha := 255;     // Прозрачность изображения. По умолчанию 255.
  TransparentColor := ColorToRGB(clNone);
  AddImgToList(x, y, BAlpha, TransparentColor, ExpandConstant('{tmp}\'+ImgFile))
  ShowFairyEx(0);
end;

procedure DeinitializeSetup();
begin
  HideFairy;
  WizardForm.Hide;
  UninitFairy;
end;

Последний раз редактировалось Johny777, 23-04-2012 в 20:16.

Это сообщение посчитали полезным следующие участники:

Отправлено: 20:06, 23-04-2012 | #1635