关于C# 智能设备 PDA(WinCE)的通讯问题,请教

时间:2022-12-23 17:58:38
环境CE6.0
需求是:CE的应用程序和PC的应用程序之间的通讯.

其实CE中有一个SQLite数据库,通过PDA网数据库写了一些数据,要用USB连接设备进行采集数据.
有人说直接将数据拷贝到本地再解析,觉得这种方法太笨拙,不知道有没有其他方法?

请做过类似应用给个建议和思路,十分感谢.

第一次做这种应用,对智能设备 PDA 的概念不太了解,主题可能比较迷糊.

18 个解决方案

#1


很想帮你……但是我觉得你对需求实在是叙述得很不清楚……

只能大概地知道你的设备端要进行数据采集,然后PC端希望得到解析的结果。

PC端得到解析的结果,这个对实时性的要求高吗?是希望设备已采集到结果PC端马上就得到结果,还是PC段就算晚得到一会儿也没关系?

数据采集有多频繁?

你所谓的解析是怎么一回事?

设备端有存储离线数据的需求吗?


你看,我光问你问题,写的文字都已经是你的描述的好几倍文字量了。你实在有点对不住我。


#2


你对于需求的描述,也就是一行文字:
“其实CE中有一个SQLite数据库,通过PDA网数据库写了一些数据,要用USB连接设备进行采集数据.”

然后,你抛出了一个问题,关于解析,但是你的需求描述没有任何文字提到解析:
“有人说直接将数据拷贝到本地再解析,觉得这种方法太笨拙,不知道有没有其他方法?”


我觉得我看你这个帖子简直就是在猜谜呀。愣了好几分钟都没明白过来。

亲,你发帖子还能再坑爹一点不?

#3


不好意思,我描述有问题了.

一台采集标签卡的手持机(WinCE),已经做好一个CE应用程序负责采集标签信息,保存到本地(手持机的SQLite)库中,现在需要将手持机中的SQLite库导入到PC来,然后再筛选需要的数据写入PC数据库中,不想直接用copy的方式将手持机数据库文件复制到PC,
特来请教下有没有其他方式来进行PC应用程序与手持机应用程序通讯,自定义协议,只要我需要的数据,手持机与PC连接只限于USB,所以没有实时要求.

#4


打个比方,有两台PC,可以通过串口来传输数据,现在是想PC与CE来传输数据,如何做?
CE与PC连接方式只限于USB.

#5


你这样的程序怎么交付用户使用。
我的十来个项目都是通过tcp。wifi或gprs

#6


USB也可以传输数据

#7


围观中  坐等大神的解答   顺便说下我跟楼主一样做的也是wince智能设备的开发。

#8


也就是说,我想让ce应用程序与windows应用程序进行通讯,协议我自己定义.
环境是,只有USB,其他硬件不能使用.

#9


pda和pc在只有usb或wifi的情况下,进行应用程序的通讯只能使用tcp/ip

#10


引用 8 楼  的回复:
也就是说,我想让ce应用程序与windows应用程序进行通讯,协议我自己定义.
环境是,只有USB,其他硬件不能使用.

usb本身只是一根数据线。只有读和写两个接口。如果想实现点对点的这种通信。需要借助一些驱动之类的。
不然你就只能读写文件这种方式。
不过这种方式挺怪的。这样的工具很多。干嘛还要自己写。插上USB接口你复制也行啊。

#11


我记不清具体的了,前年做过这个。我记得在使用usb+activesync连接之后,会分配给pc一个ip地址,在pc和pda上创建套接字通信就可以了。使用wifi也是一样。你能看到的那些pc端的与pda通讯的工具基本上都是使用套接字。

#12


1. USB数据传输已经是相当成熟的技术了;

2. 如果是WinCE + PC的话,可以用微软的RAPI实现二者之间的文件同步、数据传输,甚至PC对WinCE设备的控制

#13


谢谢大家,我知道用RAPI库来进行同步.
11楼说的同步工具连接上会分配pc一个IP地址,我不知道这个事怎么设置的?谁知道能给指教下吗?
如果没有其他方法,我想只能用RAPI来做了.

其实我的最终目的是这样的,手持机有一个DB,DB的少部分数据是我想要的,如果能通讯的话我只要我自己想要的那部分,如果不能实现应用程序之间的通讯,那我只能将db文件copy到pc得到我要的文件,再更新db,然后再copy回手持机.当然也可以将我想要的数据单独存放一个文件.
再等等,看有没有好的建议,就结贴了.

#14


给你搜了一篇
http://blog.csdn.net/t_larry/article/details/6685232使用activesync连接后pc的ip地址为192.168.55.100

#15


引用 14 楼  的回复:
给你搜了一篇
http://blog.csdn.net/t_larry/article/details/6685232使用activesync连接后pc的ip地址为192.168.55.100

非常感谢,我的情况和那篇文章一样,属于特殊行业,不允许使用无线传输.
我也认为在PC上采用RAPI函数对PDA中的数据或文件进行控制存在一些局限性。
由于放高温假,只能下周到单位再试了.

#16




引用 9 楼  的回复:
pda和pc在只有usb或wifi的情况下,进行应用程序的通讯只能使用tcp/ip


错   还有http协议

#17


THe  pC's Ip is  169.254.2.2
引用 11 楼  的回复:
我记不清具体的了,前年做过这个。我记得在使用usb+activesync连接之后,会分配给pc一个ip地址,在pc和pda上创建套接字通信就可以了。使用wifi也是一样。你能看到的那些pc端的与pda通讯的工具基本上都是使用套接字。

#18


引用 16 楼  的回复:
引用 9 楼  的回复:

pda和pc在只有usb或wifi的情况下,进行应用程序的通讯只能使用tcp/ip


错   还有http协议

你说的才是错的。
不知道http协议只是tcp/ip的一部分。
RAPI内部其实也是把usb当成串口来使用。
如果你们真涉及到安全问题。可以使用内存文件构成文件流通过usb来通信。那样搞就很复杂了。

#1


很想帮你……但是我觉得你对需求实在是叙述得很不清楚……

只能大概地知道你的设备端要进行数据采集,然后PC端希望得到解析的结果。

PC端得到解析的结果,这个对实时性的要求高吗?是希望设备已采集到结果PC端马上就得到结果,还是PC段就算晚得到一会儿也没关系?

数据采集有多频繁?

你所谓的解析是怎么一回事?

设备端有存储离线数据的需求吗?


你看,我光问你问题,写的文字都已经是你的描述的好几倍文字量了。你实在有点对不住我。


#2


你对于需求的描述,也就是一行文字:
“其实CE中有一个SQLite数据库,通过PDA网数据库写了一些数据,要用USB连接设备进行采集数据.”

然后,你抛出了一个问题,关于解析,但是你的需求描述没有任何文字提到解析:
“有人说直接将数据拷贝到本地再解析,觉得这种方法太笨拙,不知道有没有其他方法?”


我觉得我看你这个帖子简直就是在猜谜呀。愣了好几分钟都没明白过来。

亲,你发帖子还能再坑爹一点不?

#3


不好意思,我描述有问题了.

一台采集标签卡的手持机(WinCE),已经做好一个CE应用程序负责采集标签信息,保存到本地(手持机的SQLite)库中,现在需要将手持机中的SQLite库导入到PC来,然后再筛选需要的数据写入PC数据库中,不想直接用copy的方式将手持机数据库文件复制到PC,
特来请教下有没有其他方式来进行PC应用程序与手持机应用程序通讯,自定义协议,只要我需要的数据,手持机与PC连接只限于USB,所以没有实时要求.

#4


打个比方,有两台PC,可以通过串口来传输数据,现在是想PC与CE来传输数据,如何做?
CE与PC连接方式只限于USB.

#5


你这样的程序怎么交付用户使用。
我的十来个项目都是通过tcp。wifi或gprs

#6


USB也可以传输数据

#7


围观中  坐等大神的解答   顺便说下我跟楼主一样做的也是wince智能设备的开发。

#8


也就是说,我想让ce应用程序与windows应用程序进行通讯,协议我自己定义.
环境是,只有USB,其他硬件不能使用.

#9


pda和pc在只有usb或wifi的情况下,进行应用程序的通讯只能使用tcp/ip

#10


引用 8 楼  的回复:
也就是说,我想让ce应用程序与windows应用程序进行通讯,协议我自己定义.
环境是,只有USB,其他硬件不能使用.

usb本身只是一根数据线。只有读和写两个接口。如果想实现点对点的这种通信。需要借助一些驱动之类的。
不然你就只能读写文件这种方式。
不过这种方式挺怪的。这样的工具很多。干嘛还要自己写。插上USB接口你复制也行啊。

#11


我记不清具体的了,前年做过这个。我记得在使用usb+activesync连接之后,会分配给pc一个ip地址,在pc和pda上创建套接字通信就可以了。使用wifi也是一样。你能看到的那些pc端的与pda通讯的工具基本上都是使用套接字。

#12


1. USB数据传输已经是相当成熟的技术了;

2. 如果是WinCE + PC的话,可以用微软的RAPI实现二者之间的文件同步、数据传输,甚至PC对WinCE设备的控制

#13


谢谢大家,我知道用RAPI库来进行同步.
11楼说的同步工具连接上会分配pc一个IP地址,我不知道这个事怎么设置的?谁知道能给指教下吗?
如果没有其他方法,我想只能用RAPI来做了.

其实我的最终目的是这样的,手持机有一个DB,DB的少部分数据是我想要的,如果能通讯的话我只要我自己想要的那部分,如果不能实现应用程序之间的通讯,那我只能将db文件copy到pc得到我要的文件,再更新db,然后再copy回手持机.当然也可以将我想要的数据单独存放一个文件.
再等等,看有没有好的建议,就结贴了.

#14


给你搜了一篇
http://blog.csdn.net/t_larry/article/details/6685232使用activesync连接后pc的ip地址为192.168.55.100

#15


引用 14 楼  的回复:
给你搜了一篇
http://blog.csdn.net/t_larry/article/details/6685232使用activesync连接后pc的ip地址为192.168.55.100

非常感谢,我的情况和那篇文章一样,属于特殊行业,不允许使用无线传输.
我也认为在PC上采用RAPI函数对PDA中的数据或文件进行控制存在一些局限性。
由于放高温假,只能下周到单位再试了.

#16




引用 9 楼  的回复:
pda和pc在只有usb或wifi的情况下,进行应用程序的通讯只能使用tcp/ip


错   还有http协议

#17


THe  pC's Ip is  169.254.2.2
引用 11 楼  的回复:
我记不清具体的了,前年做过这个。我记得在使用usb+activesync连接之后,会分配给pc一个ip地址,在pc和pda上创建套接字通信就可以了。使用wifi也是一样。你能看到的那些pc端的与pda通讯的工具基本上都是使用套接字。

#18


引用 16 楼  的回复:
引用 9 楼  的回复:

pda和pc在只有usb或wifi的情况下,进行应用程序的通讯只能使用tcp/ip


错   还有http协议

你说的才是错的。
不知道http协议只是tcp/ip的一部分。
RAPI内部其实也是把usb当成串口来使用。
如果你们真涉及到安全问题。可以使用内存文件构成文件流通过usb来通信。那样搞就很复杂了。