Tag: compact framework

从C#中的串口读取

我已经尝试过使用Readline()并且数据被删除,我尝试使用Read()但是我不知道如何使用它的错误validation方法,因为我可能会一个接一个地获得几个数据包而我无法知道将会有另一个数据包进入。在数据包BytesToRead之间是0,所以我不能使用它。 当读取数据到缓冲区时你有一个定时器或让线程进入hibernate状态以允许所有数据包到达? 我搞不清楚了。 不知道下一步该尝试什么。 我应该提一下,我不能保证从串口发出的字符串将以\ n或\ r或\ r \ n结束。 当用户按下PRINT时,我只需要一种简单的方法来读取将来自秤的所有数据包。 有人在这里回答了我喜欢的想法 – 等待所有数据包的一定时间,但他们删除了他们的答案。 你有可能重新发布它吗?

如何以编程方式安装字体

我想在程序加载时安装一个特定的字体,并在渲染程序文本时使用该字体。 如何在WinCE 6上以编程方式从.NET CF安装字体。

我如何GetCustomAttributes?

我使用2.0框架尝试了以下代码,然后我得到一个属性,但是当我在紧凑框架上尝试这个时,它总是返回一个空数组。 MSDN文档说它支持,我做错了什么? Test x = new Test(); FieldInfo field_info = x.GetType().GetField(“ArrayShorts”); object[] custom_attributes = field_info.GetCustomAttributes(typeof(MarshalAsAttribute), false); [StructLayout(LayoutKind.Sequential)] public struct Test { [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)] public ushort[] ArrayShorts; }

在Windows Mobile中输入数字的最佳方法是什么? (.NET CF 3.5)

必须有一个比受约束的数字更新控件更好的方法。

如何在C#Compact Framework中获取exe应用程序名称和版本

我的应用程序有一个exe并使用一些DLL。 我用C#写所有内容。 在一个DLL中,我想编写一个方法来从exe中的版本信息中获取应用程序名称和版本。 据我所知,在完整的.NET中,我可以使用GetEntryAssembly,但这在CF中是不可用的。

如何在未处理的exception后继续运行?

我的应用程序中有以下代码在未处理的exception之后运行: AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException); static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) { var exception = e.ExceptionObject as Exception; if (exception != null) MessageBox.Show(exception.Message + ” – ” + exception.StackTrace); } 但即使我抓住未处理的exception我的Windows移动应用程序关闭。 当我捕获未处理的exception时如何防止关闭应用程序。 我永远不想关闭我的应用程序。 我想在这种情况下打开登录表单或其他任何不关闭应用程序的表单。 所以我想要的是防止关闭应用程序从未处理的exception,如网络关闭,… 我不能在每个代码中使用try catch …. 知道如何在网络中断或任何其他未处理的exception时阻止关闭应用程序吗?

部分崩溃的应用程序? 如何捕获无法捕获的exception?

我有一个用C#编写的程序,在Windows CE设备上运行(在Compact Framework上)。 它处理最少的用户操作(按钮点击),使用串行端口和TCP / IP通信。 问题是有时软件会自行关闭。 在后台,应用程序(或应用程序的某些部分)似乎仍在运行(至少在一个记录的案例中),因为它使用串行端口,因此重新启动应用程序无济于事。 我无法重现这个问题,因为它发生在大多数情况下,当没有用户交互,没有串口通信和网络通信都是“我还活着”的消息时,软件看起来似乎没有理由崩溃。 (我尝试在调试模式下实现它,至少知道代码中的问题在哪里,如果它是一个软件错误,但到目前为止我没有运气。) 由于我的想法不足,问题是:什么错误或exception或操作系统操作或硬件故障会导致这样的行为? 在相同类型的不同设备上已经看到该问题,因此它不应该是硬件错误。 (或者我的所有硬件都有相同的错误。)处理exception,所以它不应该是一个例外。 处理未处理的exception也是如此,因此它也不应该是未处理的exception。 (我的猜测是它是由StackoverflowException引起的,因为我不知道任何其他无法捕获的exception,但代码中没有递归,至少不是自愿,所以它不应该是一种可能性无论是。)

C#/ SQL – 程序中SqlDbType.Xml有什么问题?

我问过几个人为什么在存储过程中使用xml作为参数不起作用而且每个人都说,这就是它的样子。 我无法相信这一点。 command.Parameters.Add(“@xmldoc”, SqlDbType.Xml); 这就是编译器返回错误的地方,我不能使用NVarChar beacouse它只限于4k唱歌。 XML将是完美的,因为它可以是2gig大。 为什么其他SqlDbTypes运行良好,这个重新出错? * 错误:指定的参数超出了有效值的范围。 参数名称:@xmldoc:无效的SqlDbType枚举值:25。 *

C#Application.Run没有表格

是否可以调用Application.Run,​​但是不传递表单参数,或者如果没有表单可以调用,是否有替代方法? Run方法似乎没有任何不接受表单的重载。 例如,如果我想首先实例化一个类,然后调用该表单,那么是否可以执行以下操作: Application.Run(myClass); 为了澄清,我仍然想要.Run()提供的function。 也就是说,建立一个循环来保持应用程序运行,但不是跟踪表单,而是跟踪类或其他对象。 这最初与紧凑框架有关。 我假设这就是为什么Run方法没有我正在寻找的重载。

如何在Windows Mobile上设置网络管理设置或使对话框显示在C#中?

在Windows Mobile中,当您打开Internet Explorer并键入设备无法连接的URL时,系统会通知您,并提示您(手动)导航到可以作为用户实际执行此操作的屏幕(网络管理),如下: alt text http://sofzh.miximages.com/c%23/www.freeimagehosting.net 但是,如果.NET Compact Framework应用程序尝试连接到Web服务并且无法访问Web服务URL,则不会出现“无法连接”气泡,而是对Web服务的调用失败。 有时我们最终通过电话与客户通过此流程进行沟通: alt text http://sofzh.miximages.com/c%23/www.freeimagehosting.net 然后他们还有两个步骤要去。 问题1:是否可以以编程方式控制(在C#中)网络管理屏幕上的两个combobox设置为什么? 通常修复客户的连接问题涉及摆弄这两个框,直到他们可以连接。 问题是因为客户可以自己在这里自由改变他们的网络内容,我常常不知道该告诉他们什么设置它(“它说什么?”是我说的很多)。 从我到目前为止的搜索来看,看起来DMProcessConfigXML就是这样做的方式,但到目前为止我所知道的是你调用这个方法并传递一些XML。 问题2:是否可以以编程方式(C#)触发“无法连接”气泡,或者更好的是,是否可以通过编程方式立即显示“网络管理”屏幕? 据推测,如果我的代码无法看到webservice URL,它可能会触发气泡或直接进入屏幕。