北京龙达公司招聘接口开发人员(条码打印机、RFID设备、手持设备等)(100分)

  • 主题发起人 主题发起人 lodgue
  • 开始时间 开始时间
L

lodgue

Unregistered / Unconfirmed
GUEST, unregistred user!
招聘条件:
熟悉局域网、无线局域网,具有现场安装调试经验;熟悉条码打印机、RFID读写设备、手持终端等物流设备,具有接口编程能力(条码打印机、RFID、手持终端);能够胜任出差任务,独立工作能力较强;具有2年以上工作经验;求职者要目前在北京;只招全职,想找兼职的朋友就不要打扰了。待遇等条件面试时和老板面谈,我只负责找人。

公司说明:我公司是中国农垦经济发展中心(100多人)的一个信息处(16人),又是一个公司,叫北京龙达科贸发展有限公司。公司属于国营企业,主要业务是中国农垦局的信息化服务,包括软件开发、网站维护、信息统计,软件技术支持等等。现在由于无公害追溯项目组的业务需要,要招聘满足上面条件的技术开发人员一人。

联系电话:13811154081
MSN:lodgue@hotmail.com
QQ:476134182
 
你的要求不是很明白
 
请指出来哪一点不明白?
 
硬件接口编程也不是很难啊,主要是根据硬件厂商提供的编程接口,控制设备。有的是纯函数,有的发送指令,有的是混合的。只要有个这方面的经验,能够看懂英文说明书就应该可以了。这种编程没有复杂的业务关系,但是要能够各种不同的设备,不一样编程接口。主要是可以通过c/c++/delphi来写程序。c#和Java,制作号程序后,安装不方便,不予以考虑。
 
真的不是很难:这个是我写的一个例子,只要搞懂了sendcommand指令就行了。
我现在没有在那个项目组。老板让我帮他找一个人。
const
TestLib = 'Trace.dll';//trace.dll就是厂家提供的。
procedure openport(port:PChar);
stdcall;
external TestLib ;
procedure setup(a, b, c, d, e, f:Integer);
stdcall;
external TestLib;
procedure sendcommand(command:PChar);
stdcall;
external TestLib;
procedure intloadimage(filename, image_name, image_type:PChar);
stdcall;
external TestLib;
procedure extloadimage(filename, image_name, image_type:PChar);
stdcall;
external TestLib;
procedure putimage(x:Integer;
y:Integer;
filemane:PChar;
degree:PChar);
stdcall;
external TestLib;
proceduredo
wnloadimage(filename:PChar;
degree:Integer;
name:PChar);
stdcall;
external TestLib;
procedure ecTextOut(x:Integer;
y:Integer;
b:Integer;
c:PChar;
d:PChar;
e:Integer;
f:Integer);
stdcall;
external TestLib;
procedure ecTextOutR(x:Integer;
y:Integer;
b:Integer;
c:PChar;
d:PChar;
e:Integer;
f:Integer;
g:Integer);
stdcall;
external TestLib;
procedure ecTextDownLoad(b:Integer;
c:PChar;
d:PChar;
e:Integer;
f:Integer;
g:Integer;
name:PChar);
stdcall;
external TestLib;
procedure closeport;
stdcall;
external TestLib;
function isready(): boolean;
stdcall;
external TestLib;

function TFrmPrint.OpenPrint: boolean;
begin
openport('0');
// 0-> LPT1;
1-> COM1;
2->COM2
Result := True;
end;

procedure TFrmPrint.ClosePrint;
begin
closeport();
end;

procedure TFrmPrint.SetPrint(CopyCount: integer);
var
CopyStr: string;
begin
sendcommand('^Q35,2');
//标签长度35,间隔2
sendcommand('^W70');
//标签宽度70
sendcommand('^H10');
//明暗度10
sendcommand('^S2');
//打印速度2inch/s
sendcommand('^AD');
//打印模式 d-热感模式
CopyStr := '^C'+ IntToStr(CopyCount);
sendcommand(PAnsiChar(CopyStr));
//每张标签打印份数
sendcommand('^R0');
//左起印点
sendcommand('~Q0');
//上起印点
sendcommand('^O0');
//剥离感应器设定 0
sendcommand('^D0');
//每张标签裁切一次之设定?
sendcommand('^E12');
//停歇点设定 有间隔的标签为12
sendcommand('^P1');
//最后一标签打印分数
end;

procedure TFrmPrint.DoPrint(PrintList: TStrings);
var
Text: string;
i: integer;
PrintText, LeftStr, TopStr, TopStrEx: string;
CopyCount: integer;
LeftPos: integer;
TopPos: integer;
begin
GetLabelPos(LeftPos, TopPos);
LeftStr := IntToStr(LeftPos);
TopStr := IntToStr(TopPos);
TopStrEx := IntToStr(TopPos + 40);
for i := 0 to PrintList.Count - 1do
begin
if CheckCancel() then
Break;
CopyCount := TString.ObjPtrToInt(PrintList.Objects);
SetPrint(CopyCount);
PrintText := PrintList.Strings;
SetInfo('正在打印标签 - ' + PrintText + '...');
Application.ProcessMessages();
sendcommand('^L');
//开始新标签
Text := 'BQ,' + LeftStr + ',' + TopStr + ',2,5,40,0,0,' + PrintText;
sendcommand(PAnsiChar(Text));
Text := 'AB,' + LeftStr + ',' + TopStrEx + ',1,1,0,0,' + PrintText;
sendcommand(PAnsiChar(Text));
sendcommand('E');
//结束标签并开始打印
// sleep(50);
end;
end;
 
多人接受答案了。
 
后退
顶部