当前位置:首页 > 代码 > 正文

简体中文代码(简体中文百度百科)

admin 发布:2022-12-19 18:27 184


今天给各位分享简体中文代码的知识,其中也会对简体中文百度百科进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何安装ansi中文(简体)代码

这有一个这 不知道是不是你要的

内容是:

Windows XP没有自带五笔型输入法,这对五笔型用户而言无疑是个大大的遗憾。网上的五笔型输入法虽然种类很多,也不乏优秀的版本,但一方面有些版本是共享软件需要注册,另一方面也许很多五笔型输入法的老用户最习惯用的还是老牌的“王码五笔型输入法86/98版”。

微软的Office XP软件中包含了这个老牌的五笔型输入法,但如果用户并不使用Office XP中的任何组件,仅仅是为了使用“王码五笔型输入法”而运行Office XP安装程序,就显的有些小题大做了,更不用说是某些零时在外面用公用电脑而又想用五笔型输入法的情况。于是网上出现了很多简化的安装方法,大体上可以分为三个步骤:

拷贝输入法文件(从Of还是9x/ME。示例代码fice XP光盘中或已经安装了“王码五笔型输入法”的电脑中提取)

增加注册表项

重启后通过控制面板添加输入法

整个过程中拷贝输入法文件和增加注册表项可以用批处理和导入注册表文件来简化操作,但必须重启计算机才能在控制面板里添加输入法,这同样让使用者觉得比较烦琐。那么作为一个编程爱好者能不能通过写个小程序来实现在不重新启动计算机的情况下全自动的安装“王码五笔型输入法”呢(也就是即装即用)?答案是肯定的!因为微软的Office XP安装程序做到了,这就表示微软肯定留有一个专门用来安装输入法的接口,一般来说应该是一系列API函数。

经过一番摸索,笔者在MSDN里找到了这个可以用来安装输入法的API:ImmInstallIME()。Ok,现在我们就开始利用这个API来实现自己的“王码五笔型输入法”全自动安装程序。

一、准备素材

我们先试着从Office XP光盘中提取“王码五笔型输入法”的输入法文件。通过Windows的查找功能在Office XP的第一张安装盘中查找与“WINWB”相关的文件,在OFFICE1.CAB中找到了一下14个文件:WINWB86.CHM.*、WINWB86.CNT.*、WINWB86.HLP.*、WINWB86A.IME.*、WINWB86A.MB.*、WINWB86W.IME.*、WINWB86W.MB.*、WINWB98.CHM.*、WINWB98.CNT.*、WINWB98.HLP.*、WINWB98A.IME.*、WINWB98A.MB.*、WINWB98W.IME.*、WINWB98W.MB.*,其中*是很长的一串由字母、数字和下滑线组成的序列(个人认为应该是微软为了校验文件内容的正确性而加上的内容为该文件效验码的后缀吧)。去掉这个长长的后缀,可以看到5种类型的文件。很明显,*.CHM、*.CNT和*.HLP是五笔型输入法的帮助文件,*.MB是码表文件,而*.IME是主要的输入法文件。其中*.IME和*.MB有文件名部分以A结尾和以W结尾两个版本,经过笔者试验证实了它们分别是ANSI和UNICODE两种版本的输入法文件。文件名部分以A结尾的文件适用于Windows 9x,以W结尾的文件适用于NT系列Windows系统。

提取了输入法文件后必须让安装程序针对不同版本的操作系统将它们拷贝到正确的目录,以便调用API来进行输入法安装。笔者分别在安装了Office XP中自带的“王码五笔型输入法”的Windows 98SE和Windows XP操作系统中查找以上文件,发现帮助文件都存放在\WINDOWS\HELP目录中(这里假设Windows系统都安装在\WINDOWS目录)。而主要的输入法文件(*.IME)和码表文件(*.MB)在Windows 9x下存放于\WINDOWS\SYSTEM目录中,在NT系列Windows系统中存放于\WINDOWS\SYSTEM32目录中。

二、相关API函数

素材的准备工作已经完成,现在我们来看一下代码编写过程中需要用到的4个主要的API函数。

2.1 GetVersion

函数原型:

DWORD GetVersion(VOID);

该函数返回与当前使用的Windows系统版本有关的信息。可以通过判断返回值最高位是否为1来判断当前是用的系统是NT/2000/XP还是9x/ME。示例代码:

if (GetVersion() 0x80000000)

//NT/2000/XP

else

//9x/ME

2.2 CopyFile

函数原型:

BOOL CopyFile(LPCTSTR lpExistFileName, LPCTSTR lpNewFileName, BOOL bFailIfExists);

该函数将以lpExistFileName指向的字符串为文件名的文件复制为以lpNewFileName指向的字符串为文件名的新文件。这里的文件名可以包含文件路径。最后的参数bFailIfExists决定当新文件已存在时是否覆盖现有文件,如果为FALSE,则覆盖。示例代码:

CopyFile("c:\\a.txt", "d:\\b.txt", FALSE);

以上代码将c盘下的a.txt文件复制到D盘下并命名为b.txt。如果已经存在b.txt,则覆盖原来的文件。

2.3 ImmInstallIME

函数原型:

HKL ImmInstallIME(LPCTSTR lpszIMEFileName, LPCTSTR lpszLayoutText);

这是制作“王码五笔型输入法”全自动安装程序的关键函数。函数的两个参数分别为输入法IME文件的文件名和在控制面板的是输入法选项中显示的输入法名称。函数调用后将返回一个被安装输入法的输入法标识符(或称做输入法句柄)。示例代码:

HKL hKL = ImmInstallIME("c:\\winwb86.ime", "王码五笔型输入法86版");

以上代码将输入法文件c:\winwb86.ime安装到系统中,并命名为“王码五笔型输入法86版”。函数调用后返回安装的输入法的标识符,存放在hKL变量中。

2.4 ImmIsIME

函数原型:

BOOL ImmIsIME(HKL hKL);

该函数判断hKL指向的输入法是否有效。我们可以用ImmInstallIME函数的返回值作为该函数参数,通过函数返回值来判断输入法是否安装成功。示例代码:

if (ImmIsIME(hKL))

//安装输入法成功

else

//安装失败

hKL为调用ImmInstallIME()后得到的输入法标识符。

[下一页]

三、创建工程并添加代码

1. 打开Visual C++ 6.0,通过菜单File - New新建一个名为“WINWB”的“Win32 Application”工程(如图1),单击“OK”。

2. 在应用程序类型选择中选择“An empty project”(图2),单击“Finsish”。这样我们就新建好了一个空的Win32应用程序工程。

3. 通过菜单Project - Add to Project - New添加一个“Resource Script”资源文件,命名为“WINWB”(如图3)。

[下一页]

4. 通过菜单Insert - Resource添加一个新的Dialog资源(如图4)。

5. 调整Dialog资源的若干属性。在Dialog的任意空白区域双击鼠标左键打开属性对话框,在属性对话框的Gerneral选项卡中更改ID为“IDD_MAIN”、 Caption属性为“王码五笔型输入法安装程序”(如图5)。

单击Font按钮,更改字体为宋体9号(这是简体中文版XP的标准字体型号)。单击More Styles选项卡,选中Center属性,使对话框能在屏幕中居中显示(如图6)。

[下一页]

6. 关闭属性对话框,回到资源编辑界面。删掉系统自动添加的“Cancel”按钮并更改“OK”按钮的Caption属性为“安装”(如图7)。

7. 添加一个新的Static Text控件,打开属性对话框更改Caption属性为“请选择输入法版本:”(如图8)。

8.添加一个新的List Box控件,打开属性对话框更改ID为“IDC_LIST”(如图9):

并更改它的Selection属性为“Multiple”(如图10)。

[下一页]

9. 适当调整控件的大小和位置,完成资源创建(如图11):

10. 通过菜单Project - Add to Project - New添加一个“C++ Source File”代码文件,命名为“WINWB”(如图12):

11. 在新添加“WINWB.CPP”文件中输入程序代码,代码如下:

#include windows.h

#include "resource.h"

#pragma comment(lib, "imm32.lib")

#define IME_WINWB86 0

#define IME_WINWB98 1

BOOL CALLBACK Main_DlgProc(HWND, UINT, WPARAM, LPARAM);

LPCTSTR TranslateFileName(LPCTSTR);

void InstallIME(int);

int WINAPI WinMain(HINSTANCE hInstance,

HINSTANCE hPrevInstance,

LPSTR lpCmdLine,

int nShowCmd)

{

DialogBox(hInstance, (LPCTSTR)IDD_MAIN, NULL, Main_DlgProc);

return 0;

}

//

// 函数名:Main_DlgProc

//

// 参 数:hDlg - 对话框句柄

// uMsg - 消息值

// wParam、lParam - 消息参数

//

// 返回值:TRUE - 消息已处理

// FALSE - 消息未处理,返回给默认对话框处理程序处理

//

// 备 注:对话框IDD_MAIN的回调函数

//

BOOL CALLBACK Main_DlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)

{

TCHAR strWINWB86[] = "王码五笔型输入法86版";

TCHAR strWINWB98[] = "王码五笔型输入法98版";

TCHAR cBuf[30]; // 存放LISTBOX中ITEM文本的缓冲区

int nBuf[2]; // 存放LISTBOX中被选中的ITEM索引号的缓冲区

int nSel; // LISTBOX中被选种的ITEM的数目

switch (uMsg)

{

case WM_INITDIALOG:

// 初始化LISTBOX

SendDlgItemMessage(hDlg, IDC_LIST, LB_ADDSTRING, 0, (LPARAM)strWINWB86);

SendDlgItemMessage(hDlg, IDC_LIST, LB_ADDSTRING, 0, (LPARAM)strWINWB98);

return TRUE;

case WM_COMMAND:

switch (LOWORD(wParam))

{

// 响应“退出”按钮

case IDCANCEL:

EndDialog(hDlg, 0);

return TRUE;

// 响应“添加”按钮

case IDOK:

// 获取LISTBOX中被选中的ITEM的数目及索引号

nSel = SendDlgItemMessage(hDlg, IDC_LIST, LB_GETSELITEMS, 2, (LPARAM)nBuf);

if (nSel == 0)

{

MessageBox(hDlg, "请选择输入法版本!", "提示信息", MB_OK);

return TRUE;

}

for (-- nSel; nSel = 0; nSel --)

{

// 获取LISTBOX中该索引号对应的ITEM的文本

SendDlgItemMessage(hDlg, IDC_LIST, LB_GETTEXT, nBuf[nSel], (LPARAM)cBuf);

if (lstrcmp(cBuf, strWINWB86) == 0)

{

InstallIME(IME_WINWB86); // 安装王码五笔型输入法86版

}

else if (lstrcmp(cBuf, strWINWB98) == 0)

{

InstallIME(IME_WINWB98); // 安装王码五笔型输入法98版

}

}

return TRUE;

}

default:

return FALSE;

}

}

TCHAR g_strFileName[MAX_PATH]; // 函数TranslateFileName用到的字符串缓冲区

//

// 函数名:TranslateFileName

//

// 参 数:lpszFileName - 指向用相对路径表示的文件名的字符串指针

//

// 返回值:指向用绝对路径表示的文件名的字符串指针

//

// 备 注:将以WINDOWS目录为基准的用相对路径表示的文件名转换成用绝对路径表示的文件名

//

LPCTSTR TranslateFileName(LPCTSTR lpszFileName)

{

// 获取WINDOWS目录的路径

GetWindowsDirectory(g_strFileName, MAX_PATH);

// 如果WINDOWS目录的路径是根目录

if (g_strFileName[lstrlen(g_strFileName)-1] == ''\\'')

{

// 去掉路径最后的“\”

g_strFileName[lstrlen(g_strFileName)-1] = ''\0'';

}

// 连接WINDOWS目录路径和用相对路径表示的文件名

lstrcat(g_strFileName, lpszFileName);

return g_strFileName;

}

//

// 函数名:InstallIME

//

// 参 数:nIMEType - 输入法类型

//

// 返回值: 无

//

// 备 注:安装指定的输入法

//

void InstallIME(int nIMEType)

{

TCHAR strWINWB86A[] = "王码五笔型86版";

TCHAR strWINWB86W[] = "中文 (简体) - 王码五笔型86版";

TCHAR strWINWB98A[] = "王码五笔型98版";

TCHAR strWINWB98W[] = "中文 (简体) - 王码五笔型98版";

HKL hKL;

if (nIMEType == IME_WINWB86)

{

// 复制输入法帮助文件

CopyFile("WINWB86.HLP", TranslateFileName("\\HELP\\WINWB86.HLP"), FALSE);

CopyFile("WINWB86.CHM", TranslateFileName("\\HELP\\WINWB86.CHM"), FALSE);

CopyFile("WINWB86.CNT", TranslateFileName("\\HELP\\WINWB86.CNT"), FALSE);

if (GetVersion() 0x80000000) // NT/2000/XP系统

{

// 复制UNICODE版输入法文件

CopyFile("WINWB86W.IME", TranslateFileName("\\SYSTEM32\\WINWB86.IME"), FALSE);

CopyFile("WINWB86W.MB", TranslateFileName("\\SYSTEM32\\WINWB86.MB"), FALSE);

// 安装UNICODE版输入法

hKL = ImmInstallIME(TranslateFileName("\\SYSTEM32\\WINWB86.IME"), strWINWB86W);

}

else // 9X/ME系统

{

// 复制ANSI版输入法文件

CopyFile("WINWB86A.IME", TranslateFileName("\\SYSTEM\\WINWB86.IME"), FALSE);

CopyFile("WINWB86A.MB", TranslateFileName("\\SYSTEM\\WINWB86.MB"), FALSE);

// 安装ANSI版输入法

hKL = ImmInstallIME(TranslateFileName("\\SYSTEM\\WINWB86.IME"), strWINWB86A);

}

// 验证输入法句柄是否有效

if (ImmIsIME(hKL))

{

MessageBox(NULL, "安装王码五笔型输入法86版成功!", "提示信息", MB_OK);

}

else

{

MessageBox(NULL, "安装王码五笔型输入法86版失败!", "提示信息", MB_OK);

}

}

else if (nIMEType == IME_WINWB98)

{

CopyFile("WINWB98.HLP", TranslateFileName("\\HELP\\WINWB98.HLP"), FALSE);

CopyFile("WINWB98.CHM", TranslateFileName("\\HELP\\WINWB98.CHM"), FALSE);

CopyFile("WINWB98.CNT", TranslateFileName("\\HELP\\WINWB98.CNT"), FALSE);

if (GetVersion() 0x80000000)

{

CopyFile("WINWB98W.IME", TranslateFileName("\\SYSTEM32\\WINWB98.IME"), FALSE);

CopyFile("WINWB98W.MB", TranslateFileName("\\SYSTEM32\\WINWB98.MB"), FALSE);

hKL = ImmInstallIME(TranslateFileName("\\SYSTEM32\\WINWB98.IME"), strWINWB98W);

}

else

{

CopyFile("WINWB98A.IME", TranslateFileName("\\SYSTEM\\WINWB98.IME"), FALSE);

CopyFile("WINWB98A.MB", TranslateFileName("\\SYSTEM\\WINWB98.MB"), FALSE);

hKL = ImmInstallIME(TranslateFileName("\\SYSTEM\\WINWB98.IME"), strWINWB98A);

}

if (ImmIsIME(hKL))

{

MessageBox(NULL, "安装王码五笔型输入法98版成功!", "提示信息", MB_OK);

}

else

{

MessageBox(NULL, "安装王码五笔型输入法98版失败!", "提示信息", MB_OK);

}

}

}

[下一页]

四、制作安装包

在菜单Build - Set Active Configuration设置工程配置为“Win32 – Release”,然后进行编译、连接。将编译、连接后生成的可执行文件\Release\winwb.exe与前面提取出来的14个王码五笔型输入法文件放在同一目录中,我们的王码五笔型输入法全自动安装程序就完成了。但作为一个小功能程序,需要携带15个文件,未免有些不太方便。同时也为了使我们的程序看上去更专业点,我们可以使用一些压缩软件或者安装包制作工具来将它制作成一个单一文件的软件安装包,这样也可以方便携带和使用。

这里笔者推荐使用Windows 2000/XP自带的一个安装包制作工具——IExpress,它采用微软的CAB压缩文件格式,能生成自解压缩文件,是一款小巧、免费的安装包制作工具。

具体制作步骤如下:

1. 在开始菜单的运行中键入“iexpress”,单击确定打开IExpress程序(如图13)。

2. 保持默认选项“Create new Self Extraction Directive file”,单击下一步继续。

3. 保持默认选项“Extract files and run an installation command”,单击下一步继续。

4. 进入“Package title”界面,在编辑框中输入“解压缩文件”(如图14),这是将生成的安装包解压缩时出现的对话框的标题栏,可以随意设定。输入完成后单击下一步继续。

5. 保持默认选项“No prompt”,单击下一步继续。

6. 保持默认选项“Do not display a license”,单击下一步继续。

7. 进入“Packaged files”界面,单击“Add”按钮,在打开文件对话框中选中王码五笔型输入法安装程序的所有15个文件(如图15和图16),单击下一步继续。

8. 进入“Install Program to”,在“Install Program”下拉式组合框中选中“WINWB.exe”(如图17),单击下一步继续。

9. 保持默认选项“Default(recommended)”,单击下一步继续。

10. 保持默认选项“No message”,单击下一步继续。

11. 进入“Package Name and Options”界面,单击“Browse”按钮选择安装包存放位置和文件名。这里笔者仍然使用“WINWB.EXE”(如图18和图19)。注意使用这个文件名时不要将安装包放在安装程序所在目录,以免和我们制作的安装程序WINWB.exe重名。单击下一步继续。

12. 进入“Configure restart”界面,选中“No restart”,单击下一步继续。

13. 进入“Save Self Extraction Directive”界面,选中“Don''t save”,单击下一步继续。

14. 进入“Create package”界面,单击下一步完成设置工作并开始制作安装包。

15. 单击完成结束安装包制作。

OK,我们的王码五笔型输入法安装包才算真正制作完成了! :)

本程序在Windows XP Profession(SP1)简体中文版、Visual Studio 6.0(SP6)英文企业版下调试通过。在Windows 98SE简体中文版下运行通过。

源程序可以在这里下载附件(zip压缩文件, 17K)。

可以直接安装的王码五笔可以在这里下载附件(EXE安装文件, 1.07M)。

英文的缩写是EN,简体中文的缩写是CN,繁体中文的缩写是什么?

英文的缩写是EN,简体中文的缩写是CN,繁体中文的缩写是TC,Traditional Chinese(传统中文)。

香港除有应用繁体中文名称外,传统上亦称之为“正笔字”(正体字)的习惯,与“简笔字”(简体字)和异体字相对,代表正式场合使用的中文字。

另外有人认为其所谓“繁体”只是相对简化字而言,其本身是由古代中国传承而来,故应称为正体中文、正体字(和“简化字”、 “俗体字”、“异体字”相对)。有人认为应将繁体中文称为正体中文,表明它才是中国历史上正统的汉字写法。

不过,亦有人认为文字变革是自然的事,没有正与不正之分。“繁体中文”这个名称仍使用得更为普遍,由于使用繁体中文并不是只有台湾,以香港来说,字量和用量方面有不同的要求。

其原因在于香港与台湾习惯上的惯用名称往往有出入,而且香港有些地方用词的习惯和台湾的也不同(例如“里”和“裏”字);原本香港和台湾一般上是不分开翻译的,多数电脑软件都只有台湾版本,香港人会迁就台湾用法。但近来种种原因的堆积,致使需要分开处理。

扩展资料

在中国历史中,文字的变化在不断的发生,从甲骨文字到小篆,从秦汉时代的隶书到现在的简体,中国的文字在不断的整合,而其中的规律的主流就是文字的简化与统一。

但是,这并不代表把中国所有文字全部抹杀,只换成一种,现在隶书、楷书、草书等都与简体字共存,并不是全面替换的过程,而是共生。在这里强调一点,不要认为简体字是新生事物,而繁体字才是中国字的正统,中国人就要用正统(繁体)。

其实,简体字是在草体的基础上简化而来,而且有些字在古代就有出现过,并不是专家胡编乱造的文字。所以繁体字会与简体字共存,但不会代替简体字。

繁体中文自1980年代以来通常使用Big5中文编码。而中国大陆使用GB2312的国标简体中文编码。台湾曾公布过一套名为CNS 11643的编码,但并未被广泛采用。

随着Unicode跨语言编码集的出现,也得到了广泛使用。香港政府所使用的即为采用Unicode的UTF-8编码,同时因香港本身存在的一些口语词,政府也用UTF-8发行香港增补字符集。

参考资料来源:百度百科-繁体中文

什么是“中文代码”

中文代码是计算机能识别的双字节(2 bytes) 编码,用于携带中文信息,便于计算机对中文信息作字处理和运算。

中文国标码(GB2312-1980)含7千左右中文简体字的代码,BG18030含有更多简体字代码。BIG5含1万多繁体字。

中文unicode是它们的变种,用于同其他国家文字码兼容统一。UTF码也是它们的变种,用于网络传递,HTML数字化的中文也是它们的变种,只用于HTML网页。

中文代码程序,字符变量要用双字节型,相应的函数也必须用双字节型。中文字符串,漏一个单字符,就会错一串。中文字库特大,占用单元多。所以中文代码程序远比西文复杂。

关于简体中文代码和简体中文百度百科的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/17485.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载