mirror of https://github.com/pbatard/rufus.git
[localization] add embedded Chinese loc file => v1.3.4 Chinese
This commit is contained in:
parent
a976772df6
commit
3d3d05a052
|
@ -0,0 +1,74 @@
|
|||
l "Chinese (Simplified)" 0x0804, 0x1004, 0x0404, 0x0c04, 0x1404
|
||||
t IDC_START "开始"
|
||||
t IDC_STOP "关闭"
|
||||
t IDS_DEVICE_TXT "设备"
|
||||
t IDS_PARTITION_TYPE_TXT "分区计划和目标系统类型"
|
||||
t IDS_FILESYSTEM_TXT "文件系统"
|
||||
t IDS_CLUSTERSIZE_TXT "簇的大小"
|
||||
t IDS_LABEL_TXT "新卷标"
|
||||
t IDS_FORMATOPTIONS_TXT "格式选项 "
|
||||
t IDC_BADBLOCKS "检查设备的坏块:"
|
||||
t IDC_QUICKFORMAT "快速格式化"
|
||||
t IDC_BOOT "创建一个可启动的磁盘使用:"
|
||||
r IDC_BOOT +10,0
|
||||
t IDC_SET_ICON "创建扩展标签和图标文件"
|
||||
m IDC_ADVANCED -24,0
|
||||
m IDC_NBPASSES 8,0
|
||||
m IDC_BOOTTYPE 8,0
|
||||
m IDC_SELECT_ISO 6,0
|
||||
t IDC_ABOUT "关于..."
|
||||
t IDC_LOG "日志"
|
||||
m IDC_LOG -5,0
|
||||
r IDC_LOG +5,0
|
||||
t IDCANCEL "关闭"
|
||||
t IDC_START "开始"
|
||||
t IDC_ADVANCED_GROUP "高级选项"
|
||||
t IDC_ENABLE_FIXED_DISKS "列表固定(非flash)或USB磁盘分区"
|
||||
t IDC_EXTRA_PARTITION "添加修复旧的BIOS(额外的分区,校准等等)"
|
||||
t IDC_RUFUS_MBR "使用 Rufus MBR BIOS ID:"
|
||||
|
||||
p IDD_ABOUTBOX
|
||||
t IDD_ABOUTBOX "关于 Rufus"
|
||||
t IDC_ABOUT_LICENSE "许可证"
|
||||
t IDC_ABOUT_UPDATES "更新"
|
||||
t IDOK "确定"
|
||||
|
||||
p IDD_ISO_EXTRACT
|
||||
t IDD_ISO_EXTRACT "复制ISO文件..."
|
||||
t IDC_ISO_FILENAME "打开ISO映像 - 请稍候..."
|
||||
t IDC_ISO_ABORT "取消"
|
||||
|
||||
p IDD_LICENSE
|
||||
t IDD_LICENSE "Rufus 许可证"
|
||||
t IDOK "取消"
|
||||
|
||||
p IDD_NOTIFICATION
|
||||
t IDC_MORE_INFO "更多信息"
|
||||
t IDYES "是"
|
||||
t IDNO "否"
|
||||
|
||||
p IDD_LOG
|
||||
t IDD_LOG "日志"
|
||||
t IDC_LOG_CLEAR "清除日志"
|
||||
t IDC_LOG_SAVE "保存日志"
|
||||
t IDCANCEL "关闭日志"
|
||||
|
||||
p IDD_LICENSE
|
||||
t IDOK "取消"
|
||||
|
||||
p IDD_UPDATE_POLICY
|
||||
t IDD_UPDATE_POLICY "更新方案和设置"
|
||||
t IDS_UPDATE_SETTINGS_TXT "设置"
|
||||
t IDS_UPDATE_FREQUENCY_TXT "检查更新:"
|
||||
t IDS_INCLUDE_BETAS_TXT "包括测试版本:"
|
||||
t IDC_CHECK_NOW "立即检查"
|
||||
t IDCANCEL "取消"
|
||||
|
||||
p IDD_NEW_VERSION
|
||||
t IDD_NEW_VERSION "检查更新 - Rufus"
|
||||
t IDS_NEW_VERSION_AVAIL_TXT "更新的版本可用。请下载最新版本!"
|
||||
t IDC_WEBSITE "点击这里进入网站"
|
||||
t IDS_NEW_VERSION_NOTES_TXT "发行说明"
|
||||
t IDS_NEW_VERSION_DOWNLOAD_TXT "下载"
|
||||
t IDC_DOWNLOAD "下载"
|
||||
t IDCANCEL "取消"
|
|
@ -354,6 +354,20 @@ static __inline DWORD GetCurrentDirectoryU(DWORD nBufferLength, char* lpBuffer)
|
|||
return ret;
|
||||
}
|
||||
|
||||
static __inline DWORD GetTempPathU(DWORD nBufferLength, char* lpBuffer)
|
||||
{
|
||||
DWORD ret = 0, err = ERROR_INVALID_DATA;
|
||||
walloc(lpBuffer, nBufferLength);
|
||||
ret = GetTempPathW(nBufferLength, wlpBuffer);
|
||||
err = GetLastError();
|
||||
if ((ret != 0) && ((ret = wchar_to_utf8_no_alloc(wlpBuffer, lpBuffer, nBufferLength)) == 0)) {
|
||||
err = GetLastError();
|
||||
}
|
||||
wfree(lpBuffer);
|
||||
SetLastError(err);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static __inline DWORD GetModuleFileNameU(HMODULE hModule, char* lpFilename, DWORD nSize)
|
||||
{
|
||||
DWORD ret = 0, err = ERROR_INVALID_DATA;
|
||||
|
|
|
@ -199,7 +199,7 @@ char* get_loc_data_file(const char* filename)
|
|||
char *ret = NULL;
|
||||
size_t i = 0;
|
||||
int r = 0, line_nr_incr = 1;
|
||||
wchar_t wc = 0, last_wc, eol_char = 0;
|
||||
wchar_t wc = 0, eol_char = 0;
|
||||
BOOL eol = FALSE;
|
||||
|
||||
if ((filename == NULL) || (filename[0] == 0))
|
||||
|
@ -224,7 +224,6 @@ char* get_loc_data_file(const char* filename)
|
|||
}
|
||||
|
||||
do { // custom readline handling for string collation, realloc, line numbers, etc.
|
||||
last_wc = wc;
|
||||
wc = getwc(fd);
|
||||
switch(wc) {
|
||||
case WEOF:
|
||||
|
@ -238,7 +237,7 @@ char* get_loc_data_file(const char* filename)
|
|||
// This assumes that the EOL sequence is always the same throughout the file
|
||||
if (eol_char == 0)
|
||||
eol_char = wc;
|
||||
if (wc = eol_char) {
|
||||
if (wc == eol_char) {
|
||||
if (eol) {
|
||||
line_nr_incr++;
|
||||
} else {
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
#define IDR_SL_LDLINUX_V4_SYS 401
|
||||
#define IDR_SL_LDLINUX_V5_BSS 402
|
||||
#define IDR_SL_LDLINUX_V5_SYS 403
|
||||
#define IDR_LC_RUFUS_LOC 500
|
||||
#define IDC_DEVICE 1001
|
||||
#define IDC_FILESYSTEM 1002
|
||||
#define IDC_START 1003
|
||||
|
|
21
src/rufus.c
21
src/rufus.c
|
@ -1915,12 +1915,16 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
|
|||
#endif
|
||||
{
|
||||
const char* old_wait_option = "/W";
|
||||
const char* loc_name = "rufus.loc";
|
||||
int i, opt, option_index = 0, argc = 0, si = 0;
|
||||
BOOL attached_console = FALSE;
|
||||
BYTE* loc_data;
|
||||
DWORD loc_size, Size;
|
||||
char loc_path[MAX_PATH];
|
||||
char** argv = NULL;
|
||||
wchar_t **wenv, **wargv;
|
||||
PF_DECL(__wgetmainargs);
|
||||
HANDLE mutex = NULL;
|
||||
HANDLE hFile = NULL, mutex = NULL;
|
||||
HWND hDlg = NULL;
|
||||
MSG msg;
|
||||
int wait_for_mutex = 0;
|
||||
|
@ -2022,6 +2026,21 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
|
|||
// 0x9e disables removable and fixed drive notifications
|
||||
SetLGP(FALSE, &existing_key, "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer", "NoDriveTypeAutorun", 0x9e);
|
||||
|
||||
// Extract the embedded localization data into the user's temp dir
|
||||
loc_data = (BYTE*)GetResource(hMainInstance, MAKEINTRESOURCEA(IDR_LC_RUFUS_LOC), _RT_RCDATA, loc_name, &loc_size, FALSE);
|
||||
GetTempPathU(sizeof(loc_path), loc_path);
|
||||
safe_strcat(loc_path, sizeof(loc_name), loc_name);
|
||||
|
||||
hFile = CreateFileU(loc_path, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE,
|
||||
NULL, CREATE_ALWAYS, 0, 0);
|
||||
if ((hFile == INVALID_HANDLE_VALUE)|| (!WriteFile(hFile, loc_data, loc_size, &Size, 0)) || (loc_size != Size)) {
|
||||
uprintf("Unable to create file '%s': %s.\n", loc_path, WindowsErrorString());
|
||||
} else {
|
||||
uprintf("Successfully extracted '%s'\n", loc_path);
|
||||
get_loc_data_file(loc_path);
|
||||
}
|
||||
safe_closehandle(hFile);
|
||||
|
||||
// Create the main Window
|
||||
hDlg = CreateDialogW(hInstance, MAKEINTRESOURCEW(IDD_DIALOG), NULL, MainCallback);
|
||||
if (hDlg == NULL) {
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
/* Program options */
|
||||
#define RUFUS_DEBUG // print debug info to Debug facility
|
||||
/* Features not ready for prime time and that may *DESTROY* your data - USE AT YOUR OWN RISKS! */
|
||||
#define RUFUS_TEST
|
||||
// #define RUFUS_TEST
|
||||
|
||||
#define APPLICATION_NAME "Rufus"
|
||||
#define COMPANY_NAME "Akeo Consulting"
|
||||
|
|
|
@ -71,7 +71,7 @@ END
|
|||
IDD_ABOUTBOX DIALOGEX 0, 0, 287, 201
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "About Rufus"
|
||||
FONT 8, "Microsoft Sans Serif", 400, 0, 0x0
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x0
|
||||
BEGIN
|
||||
ICON IDI_ICON,IDC_ABOUT_ICON,11,8,20,20
|
||||
DEFPUSHBUTTON "OK",IDOK,231,181,50,14,WS_GROUP
|
||||
|
@ -128,7 +128,7 @@ END
|
|||
IDD_UPDATE_POLICY DIALOGEX 0, 0, 287, 198
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Update policy and settings"
|
||||
FONT 8, "Microsoft Sans Serif", 400, 0, 0x0
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x0
|
||||
BEGIN
|
||||
ICON IDI_ICON,IDC_ABOUT_ICON,11,8,20,20
|
||||
DEFPUSHBUTTON "Close",IDCANCEL,221,172,50,14,WS_GROUP
|
||||
|
@ -145,7 +145,7 @@ END
|
|||
IDD_NEW_VERSION DIALOGEX 0, 0, 384, 268
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Check For Updates - Rufus"
|
||||
FONT 8, "Microsoft Sans Serif", 400, 0, 0x0
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x0
|
||||
BEGIN
|
||||
PUSHBUTTON "Close",IDCANCEL,167,244,50,14,WS_GROUP
|
||||
CONTROL "",IDC_RELEASE_NOTES,"RichEdit20W",ES_MULTILINE | ES_READONLY | WS_VSCROLL,15,77,352,88,WS_EX_STATICEDGE
|
||||
|
@ -184,6 +184,7 @@ END
|
|||
3 TEXTINCLUDE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"IDR_LC_RUFUS_LOC RCDATA ""../res/locale/rufus.loc""\r\n"
|
||||
"IDR_SL_LDLINUX_V4_BSS RCDATA ""../res/syslinux/ldlinux_v4.bss""\r\n"
|
||||
"IDR_SL_LDLINUX_V4_SYS RCDATA ""../res/syslinux/ldlinux_v4.sys""\r\n"
|
||||
"IDR_SL_LDLINUX_V5_BSS RCDATA ""../res/syslinux/ldlinux_v5.bss""\r\n"
|
||||
|
@ -332,6 +333,7 @@ IDI_DOWN ICON "../res/down.ico"
|
|||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
|
||||
IDR_LC_RUFUS_LOC RCDATA "../res/locale/rufus.loc"
|
||||
IDR_SL_LDLINUX_V4_BSS RCDATA "../res/syslinux/ldlinux_v4.bss"
|
||||
IDR_SL_LDLINUX_V4_SYS RCDATA "../res/syslinux/ldlinux_v4.sys"
|
||||
IDR_SL_LDLINUX_V5_BSS RCDATA "../res/syslinux/ldlinux_v5.bss"
|
||||
|
|
Loading…
Reference in New Issue