HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 27.01.2009, 16:14
LEE_ROY
Постоянный
Регистрация: 09.11.2006
Сообщений: 639
Провел на форуме:
1917742

Репутация: 541


По умолчанию

ShellExecute(hInstance,"open","md.exe","c:\SSS", null,sw_sownormal);
шото в этом роде
 
Ответить с цитированием

  #2  
Старый 27.01.2009, 16:57
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

Репутация: 137
По умолчанию

LEE_ROY увы непомогает
 
Ответить с цитированием

  #3  
Старый 27.01.2009, 18:02
desTiny
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме:
3008839

Репутация: 1502


По умолчанию

http://www.delphirus.com/article32.html
__________________
Bedankt euch dafür bei euch selbst.

H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
 
Ответить с цитированием

  #4  
Старый 27.01.2009, 19:43
A2GIL
Познающий
Регистрация: 31.08.2007
Сообщений: 94
Провел на форуме:
422909

Репутация: 200
Отправить сообщение для A2GIL с помощью ICQ
По умолчанию

WinExec и ShellExecute немного не то. С их помощью можно выполнять команды DOS (типа rundl32 xx.dl, бла бла ), вызывать процедуры запуска файлов с параметрами. Но для того, чтобы выполнить консольную команду можно создать поток, запускающий консольную программу. Подключаем только уже написанный для этого модуль.

Код:
//Подключаем модуль в Uses
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  StdCtrls, ExtCtrls, ComCtrls, CmdLine;

type
  TForm1 = class(TForm)
    btnRun: TButton;
    btnWrite: TButton;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure DoCommand(_lpcmd:string);
  end;

var
  Form1: TForm1;
  CmdCom   :TRedirectThread;

implementation
{$R *.dfm}


procedure TForm1.DoCommand(_lpcmd:string);
var
 _data:string;
begin
  if CmdCom<>nil then
   begin
     _data :=_lpcmd+#13#10;
     CharToOem(@_data[1],@_data[1]);
     CmdCom.WriteData(_data);
    end;
end;


procedure TForm1.FormCreate(Sender: TObject);
begin
    CmdCom:= TRedirectThread.Create(true);
    CmdCom.RunProgram :='cmd';
    CmdCom.Params :='';
    CmdCom.FreeOnTerminate := true;
    CmdCom.Resume;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if CmdCom<>nil then
   CmdCom.Terminate();
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 DoCommand('mkdir c:\121'); // задаем командную строку
end;

end.

Модуль CmdLine
 
Ответить с цитированием

  #5  
Старый 27.01.2009, 20:44
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
Провел на форуме:
500748

Репутация: 137
По умолчанию

Спасибо всем, решение с модулем больше мне подходит
 
Ответить с цитированием

progressbar1
  #6  
Старый 28.01.2009, 01:13
noveek
Познающий
Регистрация: 29.12.2008
Сообщений: 45
Провел на форуме:
83889

Репутация: 1
По умолчанию progressbar1

Привет всем обьясните пожалуйсто как можно сделать в таком коде чтобы при выборе файла который отправлять работал Progressbar1 никак не пойму как нужно его сюда вставить да ещё чтобы по окончании передачи файла возникало окно типо Файл успешно передан !

procedure TForm1.Button4Click(Sender: TObject);
begin
if OpenDialog1.Execute then idUDPClient1.Send(OpenDialog1.FileName) //выбираем и отправляем файл

end;

end.
 
Ответить с цитированием

  #7  
Старый 28.01.2009, 10:41
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

То, что ты делаешь - это не файл отправляет, а имя файла.
Для того чтобы отправить файл тебе нужно сделать примерно так:
progressbar1.max = размер файла
затем файл блоками читаешь и отправляешь. И в прогрессбар ставишь сколько уже отправил данных
 
Ответить с цитированием

  #8  
Старый 29.01.2009, 07:31
Nightmarе
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме:
5749763

Репутация: 1680


Отправить сообщение для Nightmarе с помощью ICQ
По умолчанию

Есть php скрипт:
Код:
<?php
$uploaddir = '/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

print "<pre>";
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    print "File is valid, and was successfully uploaded. ";
    print "Here's some more debugging info:\n";
    print_r($_FILES);
} else {
    print "Possible file upload attack!  Here's some debugging info:\n";
    print "Possible file upload attack!  Дополнительная отладочная информация:\n";
    print_r($_FILES);
}
print "</pre>";
?>
Он принимает файл POST параметром "userfile" и загружает на сервак.

Собственно вопрос, как в делфи реализовать передачу файла этому скрипту???
Пробовал через IdHttp, не катит. Тут явно что то ещё надо юзать...
 
Ответить с цитированием

  #9  
Старый 29.01.2009, 11:27
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

Тебе нужно самому постоить HTTP запрос. Вид запроса для отсылки файла примерно такой:
Код:
POST /test.php? HTTP/1.1
Host: site.ru
Content-Length: 185
Content-Type: multipart/form-data; boundary=----------HRMPqBFF7FBJH4xJX2p87i

------------HRMPqBFF7FBJH4xJX2p87i
Content-Disposition: form-data; name="userfile"; filename="myfilename.txt"
Content-Type: text/plain

TEST TEST

------------HRMPqBFF7FBJH4xJX2p87i--
----------HRMPqBFF7FBJH4xJX2p87i - это уникальный разделитель который невстречается в передаваемых данных. ты модешь генерить его сам.
каждая строчка заканчивается на #13#10

В дельфе этот запрос будет строиться примерно так:
1) генери boundary типа ------------HRMPqBFF7FBJH4xJX2p87i
2) data:=boundary+#13#10+'Content-Disposition: form-data; name="userfile"; filename="'+filename+'"'+#13#10+'Content-Type: text/plain'+#13#10#13#10+filedata+#13#10#13#10+boundary +'--'+#13#10;
3) pack:='POST /'+script+' HTTP/1.1'#13#10+Host: '+host+#13#10+'Content-Length: '+inttostr(length(data))+#13#10+'Content-Type: multipart/form-data; boundary='+boundary+#13#10#13#10+data;
4) СОединяйся с сервером каких угодно способом и шли ему pack

Последний раз редактировалось slesh; 29.01.2009 в 11:31..
 
Ответить с цитированием

  #10  
Старый 29.01.2009, 14:27
Nightmarе
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме:
5749763

Репутация: 1680


Отправить сообщение для Nightmarе с помощью ICQ
По умолчанию

Пасиб, про формирование заголовков и POST запроса на сокэтах и т.д... Ну это понятно.
Хотелось бы через специальный компонент упростить всё это дело, должен же быть какой то компонент отвечающий за пердачу файлов.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Wi-Fi, BT] Задай вопрос - получи ответ! Alexsize Беспроводные технологии/Wi-Fi/Wardriving 2568 25.04.2026 12:58
[jQuery] - Задай вопрос, получи ответ Isis PHP 62 25.12.2009 03:25



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ