type
TForm1 =
class(TForm)
Button1: TButton;
Button2: TButton;
ComPort1: TComPort;
Edit1: TEdit;
procedure FormActivate(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
hcomm : THandle;
COM_enum : integer;
implementation
{$R *.dfm}
procedure usbset_data(hcomm : Thandle);
begin
EscapeCommFunction(hcomm,SETDTR);
// DTR auf HIGH setzen
sleep(0);
end;
procedure usbres_data(hcomm : Thandle);
begin
EscapeCommFunction(hcomm,CLRDTR);
// DTR auf LOW setzen
sleep(0);
end;
// Liefert Ergebnis von Handshake-Signalen der COM zurück
function GetInCount(hcomm : Thandle):DWORD;
var com_status : DWORD;
begin
Result := 0;
if hcomm <> INVALID_HANDLE_VALUE
then
begin
GetCommModemStatus(hcomm,com_status);
Result := com_status;
end;
end;
// handle für COM holen
function gethdc_comport(xcom:word):Thandle;
stdcall;
export;
var hcomm : Thandle;
begin
if (xcom = 7)
then
hcomm:=CreateFile('
COM7',GENERIC_READ
or GENERIC_WRITE,0,
nil,OPEN_EXISTING,0,0);
gethdc_comport := Thandle(hcomm);
end;
procedure TForm1.FormActivate(Sender: TObject);
begin
hcomm := gethdc_comport(7);
COM_enum := 7;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
closeHandle(hcomm);
close;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
//Wenn ich diesen Button drücke möchte ich den aktuellen Waagenwert in das edit1 übergeben
end;
end.