我实际上对同一个问题有两个问题,但我认为最好将它们分开,因为我认为它们不相关。
背景:我正在用 VB.NET 编写一个 Windows Mobile 软件,其中的任务需要连接到邮件服务器以发送和检索电子邮件。因此,我还需要一个 Mime 解析器(用于解码和编码)电子邮件以获取附件。首先我想,我会写一个小“hack”来处理这个问题(使用普通的字符串解析),但后来我在 CodeProject看到了一个用 C# 编写的项目我认为我会在我的解决方案中实施。我对 C# 了解不多,所以我只是从这些类中创建了一个类库,并在我的 VB.NET 项目中使用它。当我在普通 Windows 计算机上针对 Net Framework 时,这个库工作得非常好,但是当我要针对 Compact Net Framework 制作相同的库时,我遇到了麻烦。这是很自然的,因为 Compact Net Framework 有更多的限制,但我实际上并没有得到那么多错误——尽管在代码的不同地方重复了,但只有两个错误。
其中一个错误是在这个问题的主题中引用的,即“方法'GetString'没有重载需要'1'参数”。如上所述,我对 C# 了解不多,所以我将在线错误的类转换为 VB-NET,但我仍然不太了解。这是给出上述错误的函数:
public virtual string DecodeToString(string s)
{
byte[] b = DecodeToBytes(s);
if(m_charset != null)
{
//ERROR ON THIS LINE
return System.Text.Encoding.GetEncoding(m_charset).GetString(b);
}
else
{
m_charset = System.Text.Encoding.Default.BodyName;
//ERROR ON THIS LINE
return System.Text.Encoding.Default.GetString(b);
}
}
如果这个类需要完整的源代码,那么我可以在这个线程的另一条消息中发布它,或者你可以通过在上面提到的网站上下载代码并查看名为 MimeCode 的类来找到它。 CS。
谁能帮帮我?我可以以某种方式重写上面的函数来克服这个问题吗?
我提前感谢您的帮助。
向你们所有人致以诚挚的问候和新年快乐。
Rgds, moster67