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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2009, 18:52   #1
Евгений Малинин
Новичок
Джуниор
 
Регистрация: 04.12.2009
Сообщений: 2
По умолчанию Работа с файлами в Delphi 2010

Хочу создать программу, которая создавала бы файл на жёстком диске с определённой строкой, которая выбирается в зависимости от нажатой кнопки. Написал процедуру для работы с одной из кнопок, но в результате, получается файл не со строкой "robocopy updates D:\Base /mir", а вот такая лобуда (см. вложение).

Что может быть не так? Среда: Delphi 2010, код:
Код:
unit Unit2;

interface

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

type
  TForm2 = class(TForm)
    Label1: TLabel;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    BitBtn7: TBitBtn;
    BitBtn8: TBitBtn;
    BitBtn9: TBitBtn;
    BitBtn10: TBitBtn;
    BitBtn11: TBitBtn;
    BitBtn12: TBitBtn;
    BitBtn13: TBitBtn;
    BitBtn14: TBitBtn;
    BitBtn15: TBitBtn;
    BitBtn16: TBitBtn;
    BitBtn17: TBitBtn;
    BitBtn18: TBitBtn;
    BitBtn19: TBitBtn;
    BitBtn20: TBitBtn;
    BitBtn21: TBitBtn;
    BitBtn22: TBitBtn;
    BitBtn23: TBitBtn;
    BitBtn24: TBitBtn;
    procedure BitBtn24Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2; st:tstream; o:string;

implementation

{$R *.dfm}

procedure TForm2.BitBtn1Click(Sender: TObject);
begin
st:=tfilestream.create('C:\strt.bat',fmcreate);
st.Write('robocopy updates D:\Base /mir',fmcreate);
st.Free;
end;

procedure TForm2.BitBtn24Click(Sender: TObject);
begin
close;
end;

end.
Вложения
Тип файла: zip strt.zip (12.0 Кб, 7 просмотров)
Евгений Малинин вне форума Ответить с цитированием
Старый 04.12.2009, 18:56   #2
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Я бы сделал паскалевским способом:
Код:
var
 f:textfile;
begin
 assign(f,'c:\strt.bat'); 
 rewrite(f); 
 writeln(f,'robocopy updates D:\Base /mir');
 closefile(f);
end;
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 04.12.2009, 19:04   #3
Евгений Малинин
Новичок
Джуниор
 
Регистрация: 04.12.2009
Сообщений: 2
По умолчанию

Цитата:
Сообщение от russian-stalker Посмотреть сообщение
Я бы сделал паскалевским способом
В этом случае выдаёт ошибки:

Цитата:
Checking project dependencies...
Compiling Project2.dproj (Debug configuration)
[DCC Error] Unit2.pas(53): E2010 Incompatible types: 'TPersistent' and 'Text'
[DCC Fatal Error] Project2.dpr(5): F2063 Could not compile used unit 'Unit2.pas'
Failed

Elapsed time: 00:00:00.3
Собственно, я так и пробовал сделать и из-за таких ошибок пришлось лезть в потоки...
Евгений Малинин вне форума Ответить с цитированием
Старый 04.12.2009, 19:07   #4
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

ошибся, поменяй assign на assignfile. Ну или вот твой код переделал(функция Write второй аргумент принимала не такой, какой вы вводили) :
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
st:tfilestream;
begin
st:=tfilestream.Create('C:\strt.bat',fmcreate);
st.WriteBuffer(ansistring('robocopy updates D:\Base /mir'),length(ansistring('robocopy updates D:\Base /mir')));
st.Free;
end;
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с файлами (Delphi 7) сер4ей Помощь студентам 8 12.11.2011 19:11
Работа с файлами в Delphi 7 NeAlSe Помощь студентам 11 19.11.2010 17:08
Delphi 7. Работа с файлами Flame_of_Death Помощь студентам 8 10.07.2009 12:25