• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Картинки и Cmd

  • Автор темы Diffed
  • Дата начала
Статус
Закрыто для дальнейших ответов.
D

Diffed

Здравствуйте , есть два вопроса :

1) Как при нажатии кнопки (procedure TForm1.Button1Click(Sender: TObject);) запускать команду из cmd ?
Например нажимаешь а у тебя запускается команда shutdown -s -t 600 ?
2) Как добавлять картинки в форму ? У меня 3 книги перед носом , и интернет , а ничего не найду , или не понятно , или не в ту степь :)
 
M

morpheus

1) Подключаете модлуль ShellAPI и юзаете ShellExecute
2) ЧТо значит добавить картинку на форму? для работы с изображениями есть компонента TImage
для того что бы нарисовать на визуальных обьектах используйте их Canvas
 
D

Diffed

не , рисовать ничего нен нужно , просто нужно что бы в форме рядом с кнопками была картинка <_<
Пошел учится ) Спасибо )
 
D

Diffed

cmd запустить уже получилось :) Это просто
Код:
ShellExecute(Handle, 'open', 'cmd.exe', nil, nil, SW_SHOWNORMAL);

а как ему параметры shutdown -s -t 3600 прописать ? )р :)
 
M

morpheus

Код:
ShellExecute(Handle, 'open', 'shutdown -s -t 3600', nil, nil, SW_SHOWNORMAL);

или WinExec
 
S

Silver Wind

<!--QuoteBegin-Diffed+27:11:2007, 19:59 -->
<span class="vbquote">(Diffed @ 27:11:2007, 19:59 )</span><!--QuoteEBegin-->что бы в форме рядом с кнопками была картинка
[snapback]87572" rel="nofollow" target="_blank[/snapback]​
[/quote]

Тоесть нужна кнопка с картинкой на ней? Используйте TBitBtn или TSpeedButton.

Если нужна просто картинка, то TImage. Все эти компаненты находятся на закладке Additional.
 
D

Diffed

Блин , спасибо :blink: Ушел дальше разбираться )р
 
D

Diffed

Так , вроде все просто , картинку все таки добавил ,

Image1.Picture.LoadFromFile('Move.bmp');

это оказалось не так сложно :)

Но появились два вопроса :

1. Как грузить картинку из самой программы а не откуда либо (тоесть добавить ее в .ехе файл)
2. Если такое не возможно , то можно ли эту картинку залить допустим в .dll файл , и грузить ее оттуда , -> отсюда выходим следующий вопрос , как прописывать путь что бы программа обращалась к этой .dll не зависимо от местонахождения на винчестере, пример :

Путь прописан C:\kartina.bmp
А программу мы положили на диск D:\ и картинка выходит тоже на D:\kartina.bmp и логично что отображаться она не будет :)

Реально ли сделать что либо такое , как в создании web страниц , просто прописывать путь '\kartinka.bmp'


Спасибо!
 
R

root

Для: Diffed
ShellExecute(Handle, 'open', 'исполняемый файл', 'параметры', nil, SW_SHOWNORMAL);
так более правильней по описанию
 
D

Diffed

Кто может дать линк на tutorial / faq / help / guide по добавлению картинок на форму.
Добавление их в TImageList.

Вообщем все что бы полноценно добавить картинки , сделать фоном программы / наложить на кнопки картинки )р Очень нужно ! Законченый вариант программки выложу сюда )

---


Сам перерыл уже много статей , но азов для новичков не нашел , а мне это очень нужно :(


---


И еще , по идее .bmp весит больше чем .jpg ... и при использовании .jpg программка будет весить меньше ? Так ? :)
 
R

root

Для: Diffed
можно сделать так
1. Создать файл например Myjpg.rс такого содержания
<имя для доступа > <тип ресурса> <путь>
jpg RCDATA "MyPic.jpg"
2. Компилируем
C:\DELPHI\BIN\BRCC/R myjpg.rc на выходе получим myjpg.res
3. В приложении пишем {$R myjpg.RES}

4.
и обрабатываем
var
RS: TResourceStream;
jpgimage:TJPEGImage ;
begin
jpgimage:=TJPEGImage.Create ;
RS := TResourceStream.Create(HInstance, 'JPG', RT_RCDATA);
jpgimage.LoadFromStream(RS);
Image1.Canvas.Draw(0,0,jpgimage );


p.s по идее должно работать+ для графичеких элементов лучше использовать готовые компоненты, либо смому делать не на буттонах а на имейджах с событиями.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!