program testSendMsgToQueue;

uses
{$IFDEF WINDOWS}
//  ipcthrd in '../../src_libnettopos/fctopos/IPC/Win32/ipcthrd.pas',
  windows,
{$ELSE}
  timeLib in '../../src_libnettopos/fctopos/timeLib.pas',
//  uemuladorwinipc in '../../src_libnettopos/fctopos/IPC/Linux/uemuladorwinipc.pas',
//  usemaforopolenta in '../../src_libnettopos/fctopos/IPC/Linux/usemaforopolenta.pas',
  uwinmsgs in '../../src_libnettopos/fctopos/IPC/Linux/uwinmsgs.pas',
  ipcobjs in '../../src_libnettopos/fctopos/IPC/Linux/ipcobjs.pas',
  ukeydir in '../../src_libnettopos/libnettopos/ukeydir.pas',
  baseunix,
{$ENDIF}
  SysUtils;

var
  pid: Cardinal;
begin
  if ParamCount >= 1 then
  begin
	pid:= StrToInt(ParamStr(1));
	
	Writeln('Intento crear la cola');
	ColaDeMensajes:= TColaDeMensajes.Create( FpGetPid );
	Writeln('Intento enviar mensaje');
	if ColaDeMensajes.PostMessage(pid, 1, 2, 3 ) = 0 then
		writeln('Mensaje enviado OK')
	else
		writeln('Error enviando mensaje. Errno= ', errno);
		
	Writeln('Intento liberar la cola');
	ColaDeMensajes.Free;
	Writeln('Fin');	
  end
  else
    writeln('Uso: testSendMessageToQueue pid');
end.
