![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Немогу сообразить - начинающий (тока-тока)
cambit © (2012-08-29 16:37:00)Сильно не пинайте - прочитал только две статьи об азах делфи. Имеется код
var aa,e:word;
port,base,data:word;
{.........}
aa:=0;
base:=$3F8;
begin
port:=base+4;
data:=2;
outport(port,aa,data);
sleep(10);
port:=base+6;
e:=inport(port) and 16;
port:=base+4;
data:=0;
outport(port,aa,data);
end;
пробую компилировать - выдает:
[Error] Unit1.pas(21): Identifier redeclared: 'aa'
[Error] Unit1.pas(22): Identifier redeclared: 'base'
[Error] Unit1.pas(24): Statements not allowed in interface part
[Error] Unit1.pas(27): Undeclared identifier: 'outport'
[Error] Unit1.pas(30): Undeclared identifier: 'inport'
[Error] Unit1.pas(37): Declaration expected but end of file found
[Fatal Error] Project2.dpr(5): Could not compile used unit 'Unit1.pas'
Подскажите где косяк?
Palladin (2012-08-30 16:11:00) [1]http://www.delphimaster.ru/cgi-bin/forum.pl?id=1208434700&n=6
cambit (2012-08-29 23:57:00) [2]Спасибо за совет. Как то сам не додумался...
Плохиш (2012-08-29 20:47:00) [3]
> прочитал только две статьи об азах делфи
Дальше читать не стал.
Ответ: Найми программиста.
Inovet (2012-08-29 20:24:00) [4]> [10] cambit © (29.08.12 20:03)
> там что-то сверху добавить надо?
Создать консольное приложение и вставить вместо комментария, где указано.
cambit (2012-08-29 20:03:00) [5]Пишет :
[Error] Unit1.pas(21): Statements not allowed in interface part
[Error] Unit1.pas(23): Statement expected but ')' found
[Error] Unit1.pas(25): Undeclared identifier: 'PlaySound'
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
там что-то сверху добавить надо?
RWolf (2012-08-29 19:16:00) [6]
var
h:THandle;
begin
h:=CreateFile('COM1', GENERIC_READ or GENERIC_WRITE, 0, nil, OPEN_EXISTING, 0, 0);
);
EscapeCommFunction(h, SETDTR);
PlaySound('sound.wav', 0, 0);
EscapeCommFunction(h, CLRDTR);
CloseHandle(h);
end;
cambit (2012-08-29 18:26:00) [7]А можно чуть по-подробнее - задача имеет чисто прикладное значение, а в Делфи вникать нет времени. Как написать код, чтобы на СОМ1 указанная Вами функция выполнила SETDTR, затем воспроизвелся файл sound.wav, а потом выполнилось бы CLRDTR и программа закрылась.
DVM (2012-08-29 17:55:00) [8]
> cambit © (29.08.12 17:29) [3]
выкинь это все, тут неправильно буквально все.
RWolf (2012-08-29 17:55:00) [9]Это делает функция EscapeCommFunction.
Wadimka (2012-08-29 17:54:00) [10]Вот косяк
[Error] Unit1.pas(22): Identifier redeclared: 'base'
[Error] Unit1.pas(24): Statements not allowed in interface part
[Error] Unit1.pas(27): Undeclared identifier: 'outport'
[Error] Unit1.pas(30): Undeclared identifier: 'inport'
[Error] Unit1.pas(37): Declaration expected but end of file found
у тебя создано к проекту твоему еще куча пасов как раз там и ошибки
лучще скопируй свой код
создайно Новый проек
и вставь его туда
cambit (2012-08-29 17:43:00) [11]Сигнал имеется ввиду +12 вольт на какую либо ножку СОМ порта
cambit (2012-08-29 17:29:00) [12]даю код полностью:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
var
aa,e:word;
port,base,data:word;
{.........}
aa:=0;
base:=$3F8;
begin
port:=base+4;
data:=2;
outport(port,aa,data);
sleep(10);
port:=base+6;
e:=inport(port) and 16;
port:=base+4;
data:=0;
outport(port,aa,data);
end.
По поводу порта такой вариант меня полностью устраивает (если заработает, код взял из вот этой статьи: http://dikoy44.narod.ru/ports/IndexPP.htm.
Собственно нужна прога, которая выдает сигнал (на любую ногу СОМ-порта), затем воспроизводит аудиофайл коротенький и снимает сигнал с порта. (объявление по системе оповещения из компьютера).
Помогите, если это возможно.
MBo (2012-08-29 17:00:00) [13]Помимо синтаксиса стоит сказать, что работать с компортом так уже не стоит (а без хитрых библиотек и просто невозможно)
Amoeba_ (2012-08-29 16:51:00) [14]Покажи Unit1.pas полностью, а не его огрызок. Косяки у тебя в той его части, которая осталась "за кадром".