Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

FileStream [D2005, XP]


Страницы:   1 2

ZV ©   (2006-05-31 21:27:00) 

Помогите. Сохранение параметров. Я записываю файл  например logo.dat

 f:=TFileStream.Create(‘c:\Logo.dat’,fmCreate);//создаю файл logo.dat

f.Write(lg, sizeof(lg));записываю структуру

f.free;
end;
Как сделать так чтобы при следующем сохранении структуры уже был создан файл c:\Logo1.dat  и так далее (Logo2.dat,Logo3.dat,Logo…dat)  короче мне нужно в создание файла внести переменную  примерно так c:\logo(переменная).dat
Так же мне нужно поступить и загрузкой,  загрузить c:\logo(переменная).dat


tesseract   (2006-06-01 12:27:00) [1]


>  а с COM не работал(нужен драйвер у меня XP)

Альтернативный драйвер для XP  тута
http://oktais.com/soft/soft_drivers.html

хотя вроде и стандартный ничего.


antonn   (2006-06-01 12:15:00) [2]

ZV ©   (01.06.06 9:35) [22]
помогут тут: http://electronix.ru/
у меня, к сожалению, времени нет совсем - диплом делаю:)


ZV   (2006-06-01 10:09:00) [3]


> antonn ©   (01.06.06 08:17) [20]


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

Эта тема не к ЧПУ у меня там шаговики стоят и драйвер  работает с LPT портом, всё на ШВП точность 0,01 (Фрезерно гравировальный)  Регулировка через аудио канал мне нужна для  двигателя конвейера подачи материала, там этой точности вполне хватает. Хотя если у тебя есть мысли на  эту тему толкай я подумаю


ZV   (2006-06-01 09:35:00) [4]


> antonn ©   (01.06.06 08:17) [20]


> может стоит цивильно, через ЦАПы делать? собрать платку,
>  работающую с COM-портом, на ней и замострячить...


А можешь поподробней уж очень интересно на эту тему  как то мало желающих пообщаться. Мысль хорошая давай её развивать . Но я только с LPT могу а с COM не работал(нужен драйвер у меня XP)  и насчет ЦАП я слабоват. Если не проблема проконсультируй . Раскрой тему подробней а то  очень нужна.


ZV   (2006-06-01 09:24:00) [5]


> Asail   (01.06.06 01:31) [18]

i : integer  и все работает нормально
Только одна проблемка, при загрузке файла через раз загружается SpinEdit2
Нужно повторно жать  -загрузить- тогда грузятся все SpinEdit  
Подскажите что тут изменить чтобы код был написан по всем правилам программирования. и работало все четко

procedure TForm1.Button1Click(Sender: TObject);
var
se:SpiEdi;
f:TFileStream;
cFile:String;
i:integer;
begin
i:=2;
cFile:= 'c:\size' + IntToStr(i) + '.dat';

se.Spi1:=SpinEdit1.Value;
se.Spi2:=SpinEdit2.Value;
f:=TFileStream.Create(cFile,fmCreate);
f.Write(se, sizeof(se));
f.Free;
end;

procedure TForm1.Button2Click(Sender: TObject);
   var
se:SpiEdi;
fs:TFileStream;
cFile:string;
 i:integer;
begin
i:=2;
cFile:= 'c:\size' + IntToStr(i) + '.dat';

if FileExists(cFile )then
begin
 fs:=TFileStream.Create(cFile, fmOpenRead);
 fs.Read(se, sizeof(se));
 fs.Free;
 SpinEdit1.Value:=se.Spi1;
 SpinEdit2.Value:=se.Spi2;

end;


antonn   (2006-06-01 08:17:00) [6]

ZV ©   (31.05.06 23:42) [6]
Нужно чтобы комп постоянно на звуковой канал выводил звук типа Beep а я мог из программы менять громкость (при изменении громкости на аудио канале меняется напряжение а напряжение через схему управляет скоростью двигателя чем громче тем быстрее и наоборот) пока это единственный способ плавной регулировки без импульсов.

ипа-а-а-ать... меня за это бы уже казнили, оживили, и еще раз казнили:) абсолютно никакой точности (даже если там и привод, а не просто двигатель). Хотя если это какой нибудь протяжной станок...

может стоит цивильно, через ЦАПы делать? собрать платку, работающую с COM-портом, на ней и замострячить...

по сабжу:
F:= TFileStream.Create('',fmOpenReadWrite);
F:= TFileStream.Create('',fmOpenRead);

пойдет?


Джо   (2006-06-01 01:38:00) [7]

> [16] ZV ©   (01.06.06 01:08)
> Я не издеваюсь. А что не так?

Я просто возьму и скопирую свой пост [12], а вы попробуете его прочитать, ОК?

cFile := 'c:\logo' + IntToStr(i) + '.dat';


Asail   (2006-06-01 01:31:00) [8]

А издевательство вот в чем:
cFile := 'logo' + i +'.dat'; // проблема здесь после i+

P.s. Видимо, не тот код выложил... Этот, при всем уважении, работать не может при (i : Integer)...


ZV   (2006-06-01 01:16:00) [9]

Всё проверил работает.Сохраняю файл с нужным мне именем.Не пойму в чём издевательство


ZV   (2006-06-01 01:08:00) [10]

Я не издеваюсь. А что не так?Мне уже страшно


ZV   (2006-06-01 01:05:00) [11]

джо это мне Desdechado[1] совет дал ,я  и делать начал так.Проверил,вроде все нормально.Спасибо за помощь


Джо   (2006-06-01 00:59:00) [12]

> [13] ZV ©   (01.06.06 00:47)

Вы идзеваетесь?


ZV   (2006-06-01 00:47:00) [13]

procedure TForm1.Button1Click(Sender: TObject);
var
se:SpiEdi;
f:TFileStream;
i:integer
cFile:string
begin
i := 1;
cFile := 'logo' + i +'.dat'; // проблема здесь после i+

se.Spi1:=SpinEdit1.Value;
se.Spi2:=SpinEdit2.Value;
f:=TFileStream.Create(cFile,fmCreate);
f.Write(se, sizeof(se));
f.Free;
end;


Джо   (2006-06-01 00:42:00) [14]

> [11] ZV ©   (01.06.06 00:39)
> А куда это лепить.

cFile := 'c:\logo' + IntToStr(i) + '.dat';  

Вам нужно срочно заняться изучением основ языка, не примите за невежливость.


ZV   (2006-06-01 00:39:00) [15]

А куда это лепить.Глянь на код [1]


Джо   (2006-06-01 00:33:00) [16]

> [9] ZV ©   (01.06.06 00:21)
> i я присваиваю номер сохраняемого файла  например i=5(целые
> числа). Должно получится  c:\logo5.dat    
> но пока не получается

IntToStr(I)


ZV   (2006-06-01 00:21:00) [17]

i я присваиваю номер сохраняемого файла  например i=5(целые числа). Должно получится  c:\logo5.dat    
но пока не получается


Джо   (2006-06-01 00:10:00) [18]

> [7] ZV ©   (31.05.06 23:56)
> cFile := 'c:\logo' + i + '.dat';    показует ошибку после
> i+   В чём проблема?

Что есть i?


ZV   (2006-05-31 23:56:00) [19]

cFile := 'c:\logo' + i + '.dat';    показует ошибку после i+   В чём проблема?
cFile присвоил string
i присвоил integer
Что делать?


ZV   (2006-05-31 23:42:00) [20]

А то . Прога управляет станком с ЧПУ (30000$). Не кисло. Кстати может кто поможет мне со звуком. Нужно чтобы комп постоянно на звуковой канал выводил звук типа Beep а я мог из программы менять громкость (при изменении громкости на аудио канале меняется напряжение а напряжение через схему управляет скоростью двигателя чем громче тем быстрее и наоборот) пока это единственный способ плавной регулировки без импульсов. Беда в том что со звуком в программировании не всё так просто и одной командой типа Windows.Beep  тут не обойдешься (громкость не регулируется и звук выводится не на аудио канал ) вот если бы такую команду да на аудио канал и громкость регулировалась, было бы здорово. Может кто что посоветует буду благодарен  а то у меня уже голова болит придумывать.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо