[ Delphi / Pascal ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 6 May 2007.

Thread Status:
Not open for further replies.
  1. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    delPHi
     
  2. mr1

    mr1 New Member

    Joined:
    17 May 2007
    Messages:
    3
    Likes Received:
    1
    Reputations:
    0
    ты лучшессылку дай а не опечатку исправляй (все равно спасиб ....
     
  3. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    если очень попросите, могу залить на рапиду))
     
  4. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    Качнуть дельфу... LOL *ROFL*
    На борланде поищи. Вес гдето около 350 метров.
    Блин это прям как на башорге:
     
  5. AHTOLLlKA

    AHTOLLlKA Member

    Joined:
    1 Feb 2005
    Messages:
    225
    Likes Received:
    35
    Reputations:
    22
    смысл такой, нужно написать чекер акков на валид, конект идет через Https, если есть примеры то поделитесь
     
    #65 AHTOLLlKA, 22 May 2007
    Last edited: 22 May 2007
  6. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    на борланде она случайно не триальная? :)

    в любом случае, вот: (delphi 7)
    часть 1 101376 KB

    часть 2 21811 KB

    в сумме 120 метров =)

    пасс на оба архива http://netz.ru

    когда-то давно нашел на каком-то сайте=)
     
    #66 Piflit, 22 May 2007
    Last edited: 22 May 2007
  7. Astral_Master

    Astral_Master New Member

    Joined:
    14 May 2007
    Messages:
    8
    Likes Received:
    1
    Reputations:
    0
    Ребята, такой, наверное, самый распространенный вопрос, ответ на который я никак не получу.. уверен, здесь толковых и знающих людей много, поможете..
    В общем, суть проста.. моя программа использует нестандартные шрифты.. я реализовал на данном этапе только то, что встроил их в setup к программе, таким образом они добавляются в папку Windows\Fonts
    Я знаю, что шрифты можно "зашивать" внутрь программы, таким образом установка шрифтов в систему не требуется, отображаются же они в программе корректно. Как это реализовать в делфи?

    Подобный вопрос у меня о курсорах. Как использовать в моей программе курсоры, независящие от системы?.. то есть какие-нибудь свои.. надеюсь, что можно использовать не только cur, но и ani ??

    Спасибо всем, кто откликнется!

    Ник Ример
     
  8. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    2 AHTOLLlKA - могу дасть дать исходник одного чекера. Челал ок номера кредиток. Всё написано на дельфе. Юзается библиотека виндовая, та через которую осел юзает SSL.
    Правдо однопоточная система. Но переделать сможешь. Если что, то стучись в АСЮ.
    ----------

    2 Astral_Master
    1) Курсоры:
    Code:
    const
      MyConst = 100;
    .-.-.-.-.-.
    Screen.Cursors[MyConst] := LoadCursor(hInstance,'MYCURSOR');
    Screen.Cursor := MyConst;
    
    MYCURSOR - имя курсора в ресурсах.

    2) Вот пример работы со шрифтом:
    Code:
    // При создании фотрмы добавить новый шрифт, что хранится в ресурсах
    procedure TForm1.FormCreate(Sender: TObject);
    var
    Res : TResourceStream;
    begin
    Res := TResourceStream.Create(hInstance, 'MY_FONT', Pchar('ANYOL1'));
    Res.SavetoFile('MYFONT.ttf');
    Res.Free;
    AddFontResource(PChar('MYFONT.ttf'));
    SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0);
    end;
    
    // Испольхзование
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Button1.Font.Name := 'MYFONT';
    end;
    
    // Удаление
    procedure TForm1.FormDestroy(Sender: TObject);
    begin
    RemoveFontResource(PChar("MYFONT.ttf"))
    SendMessage(HWND_BROADCAST,WM_FONTCHANGE,0,0);
    end;
    
    
    
    
     
  9. Astral_Master

    Astral_Master New Member

    Joined:
    14 May 2007
    Messages:
    8
    Likes Received:
    1
    Reputations:
    0
    Спасибо большое, завтра попробую обязательно, а то уже в сон клонит..
    У меня теперь вопрос другого плана.. а как пользоваться этими ресурсами? В смысле, как подключить их к юниту делфи и использовать после этого внутри.. знаю стандартную утилиту для создания ресурсного файла.. но, кажется, он не поддерживает закачку шрифтов.. и курсоры только cur.. да и более того, не более 256 цветов для любой картинки... нет ли инструмента помощнее?
    Спасибо откликнувшемуся! Простите, что плюсы не ставлю, так репутация нулевая.. не за что мне ее повышать...

    Ник Ример
     
    1 person likes this.
  10. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    2 Astral_Master
    ДЫк тебе нужно подрубить к проекту файл с ресурсами.
    Мож прям a форму дабавить {$R myres.res}
    Ну файлы с ресурсами можешь создать с какомнить левом редакторе ресурсов.
    К примеру можно заюзать от VC++
    Или еще лучше - юзай RC файлы.
    т.е. это файл в котором описываются ресурсы. потом его можно добавить к ресурсу.
    Мож вырозился не так. Но суть такова. В этом файле прописываешь тип ресурса и его имя и файл от куда берутся данные.
    К примеру чтобы грузануть звук. ТО файл выглядет так:
    -.-.-.-.
    110 WAVE sound1.wav
    120 WAVE sound2.wav
    -.-.-.-.

    Для включения ширта юзай вот такую вот вешь:
    MY_FONT ANYOL1 "Bauhs93.ttf"
    Имя, Тип ресурса, файл где хранятся данные.
    Вот так вот можно засунуть JPEG:
    1 RCDATA "MyPic.jpg"
    И тогда чтобы юзать его. Нужно:
    Code:
    uses jpeg;
    -.-.-.-.-
    procedure LoadJPEGfromEXE;
    var
      MyJPG: TJPEGImage; // Объект - JPEG
      ResStream: TResourceStream; // Объект - поток ресурсов
    begin
      try
        MyJPG := TJPEGImage.Create;
        ResStream := TResourceStream.CreateFromID(HInstance, 1, RT_RCDATA);
        MyJPG.LoadFromStream(ResStream);
        Canvas.Draw(12, 12, MyJPG);
      finally
        MyJPG.Free;
        ResStream.Free;
      end;
    end; // procedure
    
    
    
     
  11. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    Вот пример статьи как юзать ресурсы:
     
  12. Astral_Master

    Astral_Master New Member

    Joined:
    14 May 2007
    Messages:
    8
    Likes Received:
    1
    Reputations:
    0
    Спасибо огромное! Буду сегодня пробовать.. ну вы ребята и умные, я просто фигею :)
    А может кто из вас знает, как работать с архивами из приложения? нередки случаи использования экзешником какого-нибудь ресурса, изначально запакованного в какой-нибудь, например, dat файл, который по сути является простым архивом. Бывают и не стандартные архивные, но тоже компресованные форматы.. как возможно и возможно ли использование таких ресурсов?

    Ник Ример
     
  13. Astral_Master

    Astral_Master New Member

    Joined:
    14 May 2007
    Messages:
    8
    Likes Received:
    1
    Reputations:
    0
    Пробовал найти Resource Workshop, занятие неблагодарное.. можно сказать, что успехом поиски не увенчались, или же не совсем. Я нашел программу версии 4.5, но она, кажися, 16-тиразрядная. При запуске под виндой получаю warning-сообщение типа: "Не найден файл D:\ResWorkshop\workshop.exe или один из его компонентов. Проверьте правильность бла-бла-бла..." с заголовком "Не удается запустить 16-разрядную программу для Wi" (наверное, для Windows?! :) ). Как заставить его работать, если у меня Win2k SP4?? Ставить Borland C++ ради одного малюсенького приложения как-то влом, да и к тому же я потерял где-то диск..
    Хм.. я еще не задолбал вопросами? :)

    P.S. я там на 8-й еще немножко написал.. :rolleyes:
     
    #73 Astral_Master, 23 May 2007
    Last edited: 23 May 2007
  14. hidden

    hidden 7H3 0N3

    Joined:
    23 Apr 2006
    Messages:
    550
    Likes Received:
    332
    Reputations:
    386
    http://www.mininova.org/search/?Delphi+7 - Так никто не искал?
     
  15. Xserg

    Xserg Elder - Старейшина

    Joined:
    9 Dec 2006
    Messages:
    135
    Likes Received:
    127
    Reputations:
    53
    Astral_Master
    Текст в myres.rc
    LORDPE RAR Lordpe.rar
    DATA DAT Data.dat

    Получаем myres.res
    Выполняем brcc32.exe myres.rc
    //brcc32.exe там же, где и Delphi.exe

    Code:
    rar:=TResourceStream.Create(Hinstance,'LORDPE','RAR');
    x:=Dword(rar.Memory); //адрес ресурса в памяти
    y:=int64(rar.Size);   //размер ресурса
    rar:=TResourceStream.Create(Hinstance,'DATA','DAT');
    x:=Dword(rar.Memory); //адрес ресурса в памяти
    y:=int64(rar.Size);   //размер ресурса
    
    rar.SaveToFile('my.rar'); //можно использовать так
    
     
  16. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    2 Astral_Master
    C воркшопом есть один прикол. ТАм в настройках можно ставить 16 бит или 32
     
  17. Astral_Master

    Astral_Master New Member

    Joined:
    14 May 2007
    Messages:
    8
    Likes Received:
    1
    Reputations:
    0
    Да как же попасть к этим настройкам, если программа не запускается-то? По экзешнику щелкаешь, да и ошибка сразу выскакивает, приложение не запускается.. как же это сделать-то? Давай, если удобно, свяжемся сегодня по icq? Я сейчас ухожу, но буду уже через несколько часов дома.. мой номер в профиле указан.

    Ник Ример
     
  18. Colidius

    Colidius New Member

    Joined:
    3 Jul 2006
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    help

    я так понял что вопросы по delphi задавать тут... если нет не обессудьте...
    вообщем вопрос такой я перевожу число(dec) в 16-теричный формат(hex) и мне нужно передать это через UDP(Indy)
    вот допустим перевожу число символов находящихся в мемо:
    Code:
    var  len,hexlen:string;  
    lenmes:integer;  
    begin  
    lenmes:=length(Memo1.Lines.Text);  hexlen:=Format('%0x',[lenmes]); 
    len:=#$+hexlen;  IdUDPClient1.Send('192.168.0.255',4578,len);
    
    здесь у меня не получается какретно отправить это всё hex`ом.
    Я так понял len:=#$+hexlen; это чушь... без привязки #$ тож не получается, как быть подскажите? :confused:
     
  19. Hellsp@wn

    Hellsp@wn Elder - Старейшина

    Joined:
    29 Apr 2007
    Messages:
    401
    Likes Received:
    153
    Reputations:
    48
    Code:
    var
    nexlen:dword;
    len:string;
    begin
    nexlen:=length(text);
    len:=IntToHex(nexlen,8) ?
     
    #79 Hellsp@wn, 24 May 2007
    Last edited: 24 May 2007
    1 person likes this.
  20. Colidius

    Colidius New Member

    Joined:
    3 Jul 2006
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    нет, не прокатит оно типа как стринг передастся...
     
Thread Status:
Not open for further replies.