标签: compact-framework

NETCFv35.Messages.EN.wm.cab?

在.NET Compact Framework 3.5中,默认情况下,异常未安装其实际的错误消息字符串。非常适合将紧凑型框架塞入具有更少内存的Windows移动设备中,但是当您是开发人员并且设备上出现问题时,则不是很好。

从默认的占位符消息中,我知道在有可用空间且需要它们的情况下,可以使用CAB安装这些消息。我已经在手机上安装了NETCFv35.Messages.EN.wm.cab。但是,对于抛出的每个异常,我仍然得到以下Exception.Message:

“ Er一直在融化beschikbaar的所有产品,Maar deze kan niet worden weergegeven omdat deze berichten optioneel zijn和enemeeel niet zijngeïnstalleerdrdop dit设备。NETFv35安装在NETCFv35.Messages.ZH.wvoca上。 Messages.EN.cab支持各种平台,并开始超越您的期望。”

即使您不阅读荷兰语,消息的一般含义也应该足够清楚。有趣的是,即使我的Vista VS2008开发笔记本电脑是英语,我的HTC TyTN II(开发)手机上都有标准的WM6 UK ROM,该消息也是荷兰语。(?)

如果有人对以下任何问题有答案,我将不胜感激:

  • 荷兰语消息可能来自NETCFv35本身吗?它不在TyTN II WM6 ROM中,VS2008或我本人都必须安装它。框架本身是否还有本地化?
  • 荷兰语消息是否可能来自我第一次看到该消息后安装的NETCFv35.Messages.EN.wm.cab?即使它的名称中带有“ EN”?
  • 我怎么知道?
  • 在空白的WM6 Professional模拟器中运行该应用程序可以使VS2008在其上安装NETCFv35,然后我会收到英文的异常消息。
  • 底线:谁知道我要从手机中获取实际的Exception.Message文本,该怎么办?荷兰语或英语都可以。;-)

compact-framework exception windows-mobile

1
推荐指数
1
解决办法
9127
查看次数

在.NET CF上设置设备时间

查找采用.NET CF DateTime对象的代码示例,并将设备的日期和时间设置为该日期(和/或时区).这样做的目的是通过Web服务从服务器获取当前"实际"时间并正确设置设备的时间.

有人这样做过吗?

compact-framework windows-mobile

1
推荐指数
1
解决办法
2918
查看次数

在Windows Mobile应用程序中播放YouTube视频

我正在开发一个播放YouTube视频的Windows Mobile 6(或者可能是5个)的应用程序.那么,它应该播放YouTube视频(并控制/查询播放器有关状态变化,当前帧/时间等)

在网上搜索了一段时间后(以及一些试验),我仍然找不到办法做到这一点.我知道的选项是:

  • 使用嵌入HTML的YouTube播放器,可通过JavaScript控制.但是,我无法从IE Mobile观看YT视频 - 我收到一条错误消息,上面写着"你需要一个启用了Flash Player 8和JavaScript的浏览器".

  • 托管媒体播放器控件,但WMP拒绝播放YT视频,包括移动格式.

  • 使用DirectShow.我还在调查这个(我以前从未与COM合作,更不用说DirectShow了),但我还没有找到支持YouTube格式的解决方案

我宁愿用C#编写这个应用程序,但C++也可以.

请帮助我,StackOverflow的Wise Sages!

c# c++ youtube compact-framework windows-mobile

1
推荐指数
1
解决办法
6033
查看次数

OpenFileDialog不会浏览.NET CF下的文件夹

我有一个WinMo应用程序,我想从存储卡打开一个文件.该文件不在根目录中,而是在文件夹结构中.我认为OpenFileDialog就像在常规.NET下一样.但它不能让我浏览文件夹.我看起来很蹩脚.或者我是非常愚蠢的?

c# compact-framework openfiledialog windows-mobile

1
推荐指数
1
解决办法
2903
查看次数

c#.Net CF Form.Invoke引发ArgumentException

我从以下代码接收ArgumentException,我很难理解堆栈跟踪中的最后一个条目是

System.Reflection.RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr,
                Binder binder, Object[] parameters, CultureInfo culture, 
                Boolean verifyAccess, StackCrawlMark& stackMark)
Run Code Online (Sandbox Code Playgroud)

当我逐步完成DeviceResponse时,按照我的预期填充并且目标位于并且符合预期,但每次都会抛出targetForm.Invoke

任何帮助将非常感激.

该事件定义为:

public static event EventHandler<MsgEventArgs<DeviceResponse>> DeviceResponseReceived;
Run Code Online (Sandbox Code Playgroud)

该代码正在引发该事件:

//Raise the event
if (DeviceResponseReceived != null)
{
    if (DeviceResponseReceived.Target is System.Windows.Forms.Form)
    {
         System.Windows.Forms.Form targetForm = DeviceResponseReceived.Target as System.Windows.Forms.Form;
         targetForm.Invoke(DeviceResponseReceived, new MsgEventArgs<DeviceResponse>(deviceResponse));
    }
}
Run Code Online (Sandbox Code Playgroud)

MsgEventArgs是从EventArgs派生的通用事件参数类:

public class MsgEventArgs<T> : EventArgs
{
    public MsgEventArgs(T value)
    {
        m_value = value;
    }
    private T m_value;
    public T Value
    {
        get { return m_value; }
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的表单中,我已在表单构造函数中注册了该事件:

DeviceResponse.DeviceResponseReceived += …
Run Code Online (Sandbox Code Playgroud)

c# events user-interface compact-framework invoke

1
推荐指数
1
解决办法
1446
查看次数

你会如何重构这段代码?

这段代码在Windows Compact Framework上运行,它的作用是显而易见的.看起来它应该被重构(特别是考虑到我可能想稍后添加cmd.ExecuteResultSet()),但我看不到一种优雅的方式来做到这一点.任何想法都赞赏.

internal void RunNonQuery(string query)
{
    string connString = GetLocalConnectionString();

    using (SqlCeConnection cn = new SqlCeConnection(connString))
    {
        cn.Open();
        SqlCeCommand cmd = cn.CreateCommand();
        cmd.CommandText = query;
        cmd.ExecuteNonQuery();
    }
}  

internal int RunScalar(string query)  
{
    string connString = GetLocalConnectionString();

    using (SqlCeConnection cn = new SqlCeConnection(connString))
    {
        cn.Open();
        SqlCeCommand cmd = cn.CreateCommand();
        cmd.CommandText = query;
        return int.Parse(cmd.ExecuteScalar().ToString());
    }
}
Run Code Online (Sandbox Code Playgroud)

c# refactoring compact-framework

1
推荐指数
1
解决办法
377
查看次数

如何在C#中以所有表单形式提供字符串

我正在将Compact Framework 2.0用于具有多种形式的Windows CE 5.0设备中的应用程序.

我必须在几乎所有表单中使用连接字符串才能访问数据库:

string conString = "Data Source=\\Program Files\\myproject\\database.sdf";
Run Code Online (Sandbox Code Playgroud)

我想知道是否有可能使这个连接字符串以某种方式"全局",以便只写一次并可从所有表单访问.

c# connection-string compact-framework windows-ce visual-studio-2008

1
推荐指数
1
解决办法
875
查看次数

如何在C#中修改Http方法?

在HttpWebRequest中,用户可以将Method作为Post OR Get或Put或DELETE等传递.

但是对于我们的特定项目,我需要将HttpMethod作为"POST/api/login HTTP/1.0"传递.

但是在.NET CF中不允许这样做.

那么任何人都可以告诉我解决这个问题,以便自定义Http方法.

提前致谢.

c# compact-framework httpwebrequest httpwebresponse

1
推荐指数
1
解决办法
1383
查看次数

PictureBox的Paint事件导致轻弹 - 我还能在哪里做到这一点?

我正在使用Psion的SDK在移动设备上提供签名控制.我想在签名控件(这是一个图片框)周围绘制一个矩形.我已将以下内容放入Paint事件中,但问题是它闪烁(当您在图片框中登录时,图片框会不断刷新.

有没有办法把它放到表单的load事件中,所以它只加载一次?我知道它需要有PainEventArgs,但我对此并不十分肯定.

    private void scSignature_Paint(object sender, PaintEventArgs e)
    {
        e.Graphics.DrawRectangle(new Pen(Color.Black, 2f), 0, 0,
            e.ClipRectangle.Width - 1,
            e.ClipRectangle.Height - 1
            );
    }
Run Code Online (Sandbox Code Playgroud)

谢谢

c# compact-framework winforms windows-mobile-6.5

1
推荐指数
1
解决办法
2378
查看次数

在紧凑的框架中获取Windows Mobile设备上的设备ID?

当我使用RAPI API从PC连接到Windows移动设备时,我可以获得其设备ID,如下所示:

using (RemoteDeviceManager r = new RemoteDeviceManager())
{
     using (RemoteDevice dev = r.Devices.FirstConnectedDevice)
     {
         //dev.DeviceId; <--the id
     }
}
Run Code Online (Sandbox Code Playgroud)

如何在紧凑的框架中在设备上获得相同的"DeviceId"值?

c# compact-framework rapi windows-mobile

1
推荐指数
2
解决办法
7147
查看次数