3124|5

62

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请教一个简单的问题 [复制链接]

我在vs2003下用vb.net开发了一个简单程序可在wince4.2上面正常运行,但这个程序用在wince5.0下运行,可以启动界面,但点按钮执行功能时没有效果。然后我又把同样的程序用vs2005找开重新编译,但是编译好的程序放在wince5下运行时,什么反应都没有,连界面(仅是一个铵钮和一个文本框)都没有出现,这是为什么?CE5能不能运行VS2005开发的程序?或能不能运行vs2003开发的程序:

我的程序代码很简单,就是把输入的字符转成16进制发送出去,vs2003下编译的在CE4.2下测试通过,但我要的是ce5也能通过,怎么办,以下是我的部份核心代码:

            Strs = ""
            Dim Tstr As String
            For X = 1 To Len(txtMessage.Text)

                Tstr = Mid(txtMessage.Text, X, 1)
                If Tstr = "'" Or Tstr = "[" Or Tstr = "]" Then
                    MsgBox("不允许输入如下的非法字符:'或[或]")
                    Exit Sub
                End If

                If Asc(Tstr) >= 48 And Asc(Tstr) <= 57 Then  '数字
                    Strs = Strs & "," & Tstr
                Else

                    If Asc(Tstr) >= 97 And Asc(Tstr) <= 122 Then  '小写字母
                        L = InStr(1, ChrL, Tstr)
                        Strs = Strs & "," & Hex(10 + L)
                    Else
                        If Asc(Tstr) >= 65 And Asc(Tstr) <= 90 Then '大写字母
                            L = InStr(1, Chr, Tstr)
                            Strs = Strs & "," & Hex(36 + L)

                        Else
                            If InStr(1, ChrD, Tstr) > 0 Then
                                L = InStr(1, ChrD, Tstr)
                                Strs = Strs & "," & Hex(62 + L)
                            Else
                                If InStr(1, ChrE, Tstr) > 0 Then
                                    L = InStr(1, ChrE, Tstr)
                                    Strs = Strs & "," & Hex(73 + L)
                                Else
                                    If Asc(Tstr) = 32 Then Strs = Strs & "," & "0A"
                                    If Asc(Tstr) = 34 Then Strs = Strs & "," & "49"

                                End If
                            End If

                        End If
                    End If
                End If
            Next
            Console.WriteLine(Strs)
        End If
        m_cs232.openPort() '打开串口
        Dim Ar() As String
        Ar = Split(Strs, ",")

        ReDim Buf(UBound(Ar) + 3)
        Buf(0) = &H40
        Buf(1) = &H11
        For X = 2 To Ar.Length

            Buf(X) = "&H" & Ar(X - 1)
            If Oct(Buf(X)) = 12 Then
                Buf(X) = &HA
            End If
        Next
        Buf(X) = &HFF
        m_cs232.write(Buf)  '发送
        Console.WriteLine(Buf(X))
        m_cs232.closePort() '关闭串口


最新回复

   你的问题是因为你没想过vs2005,vs2003和其它嵌入式应用程序开发工具例如EVC的区别,vs系列都是需要.net compact framework,  ce5.0中默认包含,net1.0而不包含.net2.0需要添加,所以能运行vs2003,   如果要运行vs2005你就得添加.net2.0 ,微软为ce5.0出了几个补丁05.06.07年的全年补丁都对wince5.0支持.net2.0进行了改善,例如05年WinCEPB50-051231-Product-Update-Rollup-Armv4I.msi补丁。  详情 回复 发表于 2008-6-18 11:50
点赞 关注

回复
举报

83

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
UP
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
跟踪一下看问题是出在什么地方了!
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

4
 
调试....
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

5
 
问题我解决了,VS2005开发的程序在CE5.0没有反应,不过VS2003开发的在CE5下可以正常运行,我说了会来结贴的,以后有什么问题还得来请教你们。现在发工资了。。。。。。,大家点好了。
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

6
 
   你的问题是因为你没想过vs2005,vs2003和其它嵌入式应用程序开发工具例如EVC的区别,vs系列都是需要.net compact framework,  ce5.0中默认包含,net1.0而不包含.net2.0需要添加,所以能运行vs2003,   如果要运行vs2005你就得添加.net2.0 ,微软为ce5.0出了几个补丁05.06.07年的全年补丁都对wince5.0支持.net2.0进行了改善,例如05年WinCEPB50-051231-Product-Update-Rollup-Armv4I.msi补丁。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表