Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Помогите написать программу (https://forum.antichat.xyz/showthread.php?t=183719)

WyBie 03.03.2010 22:41

Помогите написать программу
 
я только начал и вообще почти не в чем не разбераюсь. Так что не ругайтесь сильно
Можете написать с обьяснение где что и как стоит и для чего нужно, вот в такой маленькой програмке.
Просто оболочка програмы которая содержит
Memo
edit1 допустим Ваше имя
edit2 фамилия
кнопочку button1 котороя открывает фото openpicturedialog
при нажатии на кнупку button2 данные edit1 переносится на первую строку Memo1
edit2 на 2 строку Memo1
после это программа коннектится на ftp host port login pass
создает каталог Имя компа из которого послали+дата
сохраняет даные Memo в txt а openpicturedialog в той же папке (желательно добавить перекодировку например открыт был фаил bmp 1024x768 а сох в jpg 640x480)
присутствует докачка
очень прошу обьясните каждую строчку что она означает и какие компоненты надо грузить а то много исходников видел так и не разобрался а пытался вставить код выдавало ошибки. Буду очень благодарен.

WyBie 03.03.2010 22:55

Код:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtDlgs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Memo1: TMemo;
    Edit1: TEdit;
    Edit2: TEdit;
    OpenPictureDialog1: TOpenPictureDialog;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
myname:TCaption;
myfam:TCaption;
begin
 myname:=form1.Edit1.text;
 myfam:=form1.Edit2.Text;
 form1.Memo1.Text:=myname+' '+myfam; //сделать на разных строчках edit1 на 1 edit2 на 2
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
form1.OpenPictureDialog1.Execute;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
// программа коннектится на ftp host port login pass
создает каталог Имя компа из которого послали+дата
сохраняет даные Memo в txt а openpicturedialog в той же папке (желательно добавить перекодировку например открыт был фаил bmp 1024x768 а сох в jpg 640x480)
присутствует докачка
end;

end.


Pr0mo 04.03.2010 18:01

Советую исправить хотя бы так, а то претендует на говнокод..

Код:


procedure TForm1.Button1Click(Sender: TObject);
var
myname:String;
myfam:String;
begin
 myname:=Edit1.text;
 myfam:=Edit2.Text;
 Memo1.Lines.Add(myname);
 with Memo1.Lines do
  begin
    Add(myname);
    Add(myfam);
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
OpenPictureDialog1.Execute;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
// программа коннектится на ftp host port login pass
создает каталог Имя компа из которого послали+дата
сохраняет даные Memo в txt а openpicturedialog в той же папке (желательно добавить перекодировку например открыт был фаил bmp 1024x768 а сох в jpg 640x480)
присутствует докачка
end;

end.


sanya111 07.03.2010 11:41

Цитата:

procedure TForm1.Button1Click(Sender: TObject);
var
myname:String;
myfam:String;
begin
myname:=Edit1.text;
myfam:=Edit2.Text;
Memo1.Lines.Add(myname);
with Memo1.Lines do
begin
Add(myname);
Add(myfam);
end;
end;
Можно немного проще сделать

Цитата:

procedure TForm1.Button1Click(Sender: TObject);
var
myname:string;
myfam:string;
begin
myname:=Edit1.Text;
myfam:=Edit2.Text;
Memo1.Lines.Add(myname);
Memo1.Lines.Add(myfam);
end;

end.

WyBie 07.03.2010 13:29

спасибо теперь понятно
каким образом можно узнать строку и именно туда вставить???
а самое главное как теперь на ftp послать?

dvion 07.03.2010 14:35

А не троянчик-ли пишется? А то видал такой)

WyBie 07.03.2010 14:36

не совсем так сказать анкету
надо создать программу анкету для школы
над чтобы данные на ftp и на мэил посылались
а ято знаешь как сделать?

dvion 07.03.2010 14:40

WyBie,
Заюзай очень простой вариант - Indy. Как раз для начинающих :)
Примеров реализации - уйма ;)

sanya111 07.03.2010 15:09

Для того что бы на мейл посылались данный, кидаешь компоненты IdAntiFreeze, IdMessage и IdSMTP.
Пример для mail.ru почты. Вот прописываешь:

Цитата:

procedure TForm1.Button1Click(Sender: TObject);
begin
IdSMTP1.Host:='smtp.mail.ru';
IdSMTP1.Port:=25;
IdSMTP1.Username:='Логин от почты';
IdSMTP1.Password:='Пароль';
IdMessage1.Body.Text:='Имя '+Edit1.Text+' Фамилия '+Edit2.Text;
IdMessage1.From.Text:='Мыло с которого отправляютя данные';
IdMessage1.Recipients.EMailAddresses:='Мыло на какое посылать';
IdMessage1.Subject:='Тема сообщения';
IdSMTP1.Connect();
if IdSMTP1.Connected=true then
IdSMTP1.Send(IdMessage1);
IdSMTP1.Disconnect
end;

fenixelite 07.03.2010 17:06

Ну и для Фтп все тоже в Инди есть. Юзай idFTP.

WyBie 07.03.2010 17:33

спасиб

WyBie 07.03.2010 18:06

Цитата:

Сообщение от sanya111
Для того что бы на мейл посылались данный, кидаешь компоненты IdAntiFreeze, IdMessage и IdSMTP.
Пример для mail.ru почты. Вот прописываешь:

пробовал вставить и конектиться ничего не получается выдает разные ошибки.
отправи рабочий исходник.
Может что еще не включил
кстати а зачем антифриз?

sanya111 07.03.2010 18:28

Цитата:

кстати а зачем антифриз?
Для того что бы форма не зависала!

Цитата:

отправи рабочий исходник.
Цитата:

procedure TForm1.Button1Click(Sender: TObject);
begin
IdSMTP1.Host:='smtp.mail.ru';
IdSMTP1.Port:=25;
IdSMTP1.Username:='dfsfsdfsdfsd';
IdSMTP1.Password:='423432234';
IdMessage1.Body.Text:=Edit1.Text + Edit2.Text;
IdMessage1.From.Text:='dfsfsdfsdfsd@mail.ru';
IdMessage1.Recipients.EMailAddresses:='dfdsfdsfsd@ mail.ru';
IdMessage1.Subject:='Тема';
IdSMTP1.Connect();
if IdSMTP1.Connected=true then
IdSMTP1.Send(IdMessage1);
IdSMTP1.Disconnect
end;

end.
Только мыло своё укажи. Логин и пароль к мылу с которого будет отправлятся и на какое мыло будет отправлятся.

WyBie 07.03.2010 19:17

пишет такую ошибку
Project Prohect1.exe raised exception class EldProtocolReplyError with message "Administrative prohibition -- authorization required. Users in your domain are not allowed to send email without autorization. See http://www.mail.ru/pages/help/261.html for details.
'.Process stopped. Use Step or Run to continue.

sanya111 07.03.2010 20:07

Значит что то не правильно прописываешь, ты мыло с которого отправляется сообщения почты mail.ru вводил?

WyBie 07.03.2010 20:18

так и так пробовал
скинь плиз исходник на почту alonermike@mail.ru

sanya111 07.03.2010 20:20

Стукни в асю 767-769

WyBie 08.03.2010 11:08

почти все готова но как быть с этим
// программа коннектится на ftp host port login pass
создает каталог Имя компа из которого послали+дата
сохраняет даные Memo в txt а openpicturedialog в той же папке (желательно добавить перекодировку например открыт был фаил bmp 1024x768 а сох в jpg 640x480)
присутствует докачка


Время: 19:14