Archive for 一月, 2009

x64与五笔

换了 Windows Server 2008 R2 Beta 后,装上了从 OFFICE2000 时代就一直用的微软提供的王码五笔型,用了几天没有发现什么问题。今天在用的时候,终于发现问题了。正好今天是除夕,想用飞信给朋友们发短信,打开发消息的窗口,再打开输入法,切换到五笔型,就是打不出汉字来,都是英文字母,再一看,原来微软在 OFFICE2000里带的是 32位版的五笔,飞信装好后,是 64 位程序,五笔就打不开了,换用微软拼音吧,不行,打字太累,还要去想拼音怎么拼,太麻烦,就上网搜了几款五笔输入法。

看了几个介绍,有“海峰五笔”和“小鸭五笔”都说支持 64 位系统。

我先安装了海峰五笔,因为在海峰五笔的官方网站说介绍说,使用传统的 IME 方式,和王码五笔型长得最像,我就安装了,在飞信中使用正常,我再到 firefox 里输入,结果导致了 firefox 的崩溃,试了几次,海峰五笔和传统的 32 位程序不太兼容。

我再试了小鸭五笔,装完后,输入法的界面和微软拼音类似,不像什么搜狗的,还自己弄一个输入的界面,看着就很累赘的样子。分别在 32 位的 firefox 和 64 位的 IE 里试验,都很完美的能输入汉字。

再设置上常用的打开输入法的快捷键,就更完美了。


Microsoft.Jet.OLEDB.4.0 与 x64

我在新安装好的 Windows Server 2008 R2 Beta 中,运行我的一个程序,就出现了错误信息,打开源代码,进行调试

发现错误是:“The ‘Microsoft.Jet.OLEDB.4.0′ provider is not registered on the local machine.”

随后,到百度上查,因为百度上查的基本上都是中文的信息,英文怕看不懂嘛,可什么都没查到

再到 GOOGLE 上查,还是 GOOGLE 好,一查就查到了,有很多人都有这个问题,是因为 Microsoft.Jet.OLEDB.4.0 不再支持 64 位系统。

同时,也看到了解决方案,就是把程序的目标平台设置成“x86”就可以了。

在项目的属性中,把“生成”中的“目标平台”从“Any CPU”改成“x86”,再重新编译就可以了。

x86


OleDbConnection.GetOleDbSchemaTable

在 .NET Framework 2.0 中,要得到表结构的定义,不能简单的用 DataTable.Columns[col].DataType 来获取,有很多信息是无法得到的,要用OleDbConnection.GetOleDbSchemaTable 这个方法。

在 MSDN 中是这么定义的:

public DataTable GetOleDbSchemaTable(
    Guid schema,
    Object[] restrictions
)

参数:
schema
类型:System.Guid
OleDbSchemaGuid 的值之一,它指定要返回的架构表。

restrictions
类型:array[]()[]
限制值的 Object 数组。这些值按照限制列的顺序来应用。即,第一个限制值应用于第一个限制列,第二个限制值应用于第二个限制列,依此类推。

返回值
类型:System.Data..::.DataTable
一个包含所请求的架构信息的 DataTable。

我要得到一个表的结构,可以这样:

DataTable dtSchema = db.GetOleDbSchemaTable(
    OleDbSchemaGuid.Columns,
    new object[] { null, null, TableName, null });

返回的 dtSchema 的列分别是:

0: TABLE_CATALOG
1: TABLE_SCHEMA
2: TABLE_NAME
3: COLUMN_NAME
4: COLUMN_GUID
5: COLUMN_PROPID
6: ORDINAL_POSITION
7: ORDINAL_HASDEFAULT
8: ORDINAL_DEFAULT
9: ORDINAL_FLAGS
10: IS_NULLABLE
11: DATA_TYPE
12: TYPE_GUID
13: CHARACTER_MAXIMUM_LENGTH
14: CHARACTER_OCTET_LENGTH
15: NUMERIC_PRECISION
16: NUMERIC_SCALE
17: DATETIME_PRECISION
18: CHARACTER_SET_CATALOG
19: CHARACTER_SET_SCHEMA
20: CHARACTER_SET_NAME
21: COLLATION_CATALOG
22: COLLATION_SCHEMA
23: COLLATION_NAME
24: DOMAIN_CATALOG
25: DOMAIN_SCHEMA
26: DOMAIN_NAME
27: DOMAIN_DESCRIPTION


  • 订阅更新

    邮件地址:

  • 我的微博

  • 分类目录

  • 声明

    Creative Commons License
    本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 Unported许可协议进行许可。
    个人博客转载时请遵循“署名-非商业性使用-相同方式共享”的创作共用协议
    商业网站或未授权媒体不得复制本站内容
  • Copyright © 1996-2010 馋嘴蜗牛. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress