Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2008, 02:53   #1
aqwapaq
 
Регистрация: 12.02.2008
Сообщений: 4
По умолчанию Программа без оболочки/формы/GUI

Привет всем!
Есть код который создает форму и кнопку. В обработчике кнопки стоит процедура посылки post запроса на сервер (вид процедуры- не суть).
Что выполняется при запуске файла:
1. Создается форма (с кнопкой)
2. Ожидается нажатие на кнопке или закрытие программы

Что надо:
1. После запуска файла немедленно выполнить процедуру
2. Ожидать завершения процедуры
3. Выход

PS. программа не должна создавать форму и другие GUI элементы
(т.е взаимодействие с пользователем не нужно)

Вот код:

Код:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IdCustomTransparentProxy, IdSocks, IdHTTP, IdBaseComponent,
  IdComponent, IdTCPConnection, IdTCPClient, StdCtrls;

type
  TForm2 = class(TForm)
    Button1: TButton;
    IdHTTP1: TIdHTTP;
    procedure Button1Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;
    response :TStringList;
    POSTData: TStringList;

implementation

{$R *.dfm}
   
procedure TForm2.Button1Click(Sender: TObject);
begin
POSTData := TStringList.create;
POSTData.add('modem_log_st_poe=&hang_up_st_poe=Disconnect&message=');
IdHTTP1.Post('http://192.168.0.1/Status.htm/st_poe.cgi' ,POSTData);
end;

end.
aqwapaq вне форума Ответить с цитированием
Старый 12.02.2008, 07:46   #2
Aristarh Dark
Форумчанин
 
Регистрация: 07.08.2007
Сообщений: 154
По умолчанию

Сделай консольное приложение например.
Aristarh Dark вне форума Ответить с цитированием
Старый 12.02.2008, 08:20   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Сделай GUI но проставь не показывать главную форму в проекте.
Поиском по форуму найдеш примеры реализации отключения показа формы.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.02.2008, 11:23   #4
aqwapaq
 
Регистрация: 12.02.2008
Сообщений: 4
По умолчанию

Создал VCL. Удалил форму.
Почему не работает так составленный код?




Код:

program Phttp5435;

uses
Forms, IdHTTP,IdComponent,SysUtils, IdBaseComponent;

{$R *.res}
var
POSTData: TStringList;
begin
POSTData := TStringList.create;
POSTData.add('modem_log_st_poe=&hang_up_st_poe=Disconnect&message=');
IdHTTP1.Post('http://192.168.0.1/Status.htm/st_poe.cgi' ,POSTData);
end;
end.

2. Создал консольное приложение
Тоже не работает:


Код:

program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils, IdHTTP,IdComponent;

var
POSTData: TStringList;

begin
try
{$R *.res}

POSTData := TStringList.create;
POSTData.add('modem_log_st_poe=&hang_up_st_poe=Disconnect&message=');
IdHTTP1.Post('http://192.168.0.1/Status.htm/st_poe.cgi' ,POSTData);


except
on E:Exception do
Writeln(E.Classname, ': ', E.Message);
end;
end.
aqwapaq вне форума Ответить с цитированием
Старый 12.02.2008, 11:41   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Создал VCL. Удалил форму.
Зачем??? Просто скрой ее
Вот смотри:
Цитата:
1. Создается форма (с кнопкой)
в проекте пропиши Application.ShowMainForm:=false;
Цитата:
1. После запуска файла немедленно выполнить процедуру
Это в событии OnCreate (форма не покажется)
Цитата:
2. Ожидать завершения процедуры
Это лучше ловить событие предоставляемое Indy если таковое есть, и если ты ждеш ответа
Цитата:
3. Выход
Ну тут сам уж догадаешся...

И еще: Ожидать завершения процедуры - это что значит?
I'm learning to live...

Последний раз редактировалось Stilet; 12.02.2008 в 11:46.
Stilet вне форума Ответить с цитированием
Старый 12.02.2008, 12:04   #6
aqwapaq
 
Регистрация: 12.02.2008
Сообщений: 4
По умолчанию

Спасибо.
Попытаюсь.
Отпишусь.
=)
aqwapaq вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Формы Kocapb Общие вопросы C/C++ 8 29.08.2008 00:48
Создание универсальной оболочки для дисков YPCom Помощь студентам 2 31.03.2008 20:22
написание универсальной оболочки для туториалов Отей Помощь студентам 4 12.11.2007 07:17
Нужна помощь!Проектирование программы оболочки! Ириночка Помощь студентам 1 13.03.2007 21:32