Loweynet
Revisão | 663728dfaea4b4e0da170722b4046764e01555dc (tree) |
---|---|
Hora | 2012-02-19 00:14:32 |
Autor | s_kawamoto <s_kawamoto@user...> |
Commiter | s_kawamoto |
Change behavior of automatic IPv4/IPv6 selection.
Modify messages.
Fix bugs of hanging at accessing non-existent directories.
Fix spelling mistakes.
Modify documents.
Remove unused files.
@@ -619,6 +619,10 @@ | ||
619 | 619 | > |
620 | 620 | </File> |
621 | 621 | <File |
622 | + RelativePath=".\Resource\list_16.bmp" | |
623 | + > | |
624 | + </File> | |
625 | + <File | |
622 | 626 | RelativePath=".\Resource\list_bmp.bmp" |
623 | 627 | > |
624 | 628 | </File> |
@@ -619,6 +619,10 @@ | ||
619 | 619 | > |
620 | 620 | </File> |
621 | 621 | <File |
622 | + RelativePath=".\Resource_eng\list_16.bmp" | |
623 | + > | |
624 | + </File> | |
625 | + <File | |
622 | 626 | RelativePath=".\Resource_eng\list_bmp.bmp" |
623 | 627 | > |
624 | 628 | </File> |
@@ -647,15 +651,15 @@ | ||
647 | 651 | /> |
648 | 652 | </FileConfiguration> |
649 | 653 | <FileConfiguration |
650 | - Name="Release|Win32" | |
654 | + Name="Debug|x64" | |
655 | + ExcludedFromBuild="true" | |
651 | 656 | > |
652 | 657 | <Tool |
653 | 658 | Name="VCCustomBuildTool" |
654 | 659 | /> |
655 | 660 | </FileConfiguration> |
656 | 661 | <FileConfiguration |
657 | - Name="Debug|x64" | |
658 | - ExcludedFromBuild="true" | |
662 | + Name="Release|Win32" | |
659 | 663 | > |
660 | 664 | <Tool |
661 | 665 | Name="VCCustomBuildTool" |
@@ -353,7 +353,7 @@ BEGIN | ||
353 | 353 | LTEXT "",stc1,9,18,88,8 |
354 | 354 | END |
355 | 355 | |
356 | -opt_user_dlg DIALOG 0, 0, 211, 139 | |
356 | +opt_user_dlg DIALOG 0, 0, 211, 155 | |
357 | 357 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
358 | 358 | FONT 9, "MS Shell Dlg" |
359 | 359 | BEGIN |
@@ -362,7 +362,7 @@ BEGIN | ||
362 | 362 | LTEXT "[AhXÍanonymous FTPÌpX[hƵÄgp³êÜ·B",-1,28,36,169,18,SS_SUNKEN |
363 | 363 | END |
364 | 364 | |
365 | -opt_tool_dlg DIALOG 0, 0, 211, 139 | |
365 | +opt_tool_dlg DIALOG 0, 0, 211, 155 | |
366 | 366 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
367 | 367 | FONT 9, "MS Shell Dlg" |
368 | 368 | BEGIN |
@@ -448,7 +448,7 @@ BEGIN | ||
448 | 448 | LTEXT "쬷étH_̼Oðü͵ľ³¢B",-1,7,7,160,8 |
449 | 449 | END |
450 | 450 | |
451 | -opt_misc_dlg DIALOG 0, 0, 211, 139 | |
451 | +opt_misc_dlg DIALOG 0, 0, 211, 155 | |
452 | 452 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
453 | 453 | FONT 9, "MS Shell Dlg" |
454 | 454 | BEGIN |
@@ -549,7 +549,7 @@ BEGIN | ||
549 | 549 | PUSHBUTTON "¢¢¦",IDCANCEL,112,42,50,14 |
550 | 550 | END |
551 | 551 | |
552 | -opt_trmode2_dlg DIALOG 0, 0, 211, 139 | |
552 | +opt_trmode2_dlg DIALOG 0, 0, 211, 155 | |
553 | 553 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
554 | 554 | FONT 9, "MS Shell Dlg" |
555 | 555 | BEGIN |
@@ -567,7 +567,7 @@ BEGIN | ||
567 | 567 | LTEXT "~[OAbv[hÌÝèÍAu~[Ov^uÌÉ èÜ·B",-1,18,56,181,17,SS_SUNKEN |
568 | 568 | END |
569 | 569 | |
570 | -opt_notify_dlg DIALOGEX 0, 0, 211, 139 | |
570 | +opt_notify_dlg DIALOGEX 0, 0, 211, 155 | |
571 | 571 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
572 | 572 | FONT 9, "MS Shell Dlg", 0, 0, 0x0 |
573 | 573 | BEGIN |
@@ -604,7 +604,7 @@ BEGIN | ||
604 | 604 | PUSHBUTTON "wv",9,165,90,50,14 |
605 | 605 | END |
606 | 606 | |
607 | -opt_fire_dlg DIALOG 0, 0, 211, 139 | |
607 | +opt_fire_dlg DIALOG 0, 0, 211, 155 | |
608 | 608 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
609 | 609 | FONT 9, "MS Shell Dlg" |
610 | 610 | BEGIN |
@@ -684,7 +684,7 @@ BEGIN | ||
684 | 684 | LTEXT "±±Åü͵½[AhXÍAãÅIvVÌ\nu[U[v^uÌƱëÅÏXÅ«Ü·B",-1,16,48,164,18 |
685 | 685 | END |
686 | 686 | |
687 | -opt_sound_dlg DIALOG 0, 0, 211, 139 | |
687 | +opt_sound_dlg DIALOG 0, 0, 211, 155 | |
688 | 688 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
689 | 689 | FONT 9, "MS Shell Dlg" |
690 | 690 | BEGIN |
@@ -759,7 +759,7 @@ BEGIN | ||
759 | 759 | CONTROL "¼pJiðSpÉÏ·",HSET_FN_HANCNV,"Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,114,107,81,10 |
760 | 760 | END |
761 | 761 | |
762 | -opt_trmode1_dlg DIALOG 0, 0, 211, 139 | |
762 | +opt_trmode1_dlg DIALOG 0, 0, 211, 155 | |
763 | 763 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
764 | 764 | FONT 9, "MS Shell Dlg" |
765 | 765 | BEGIN |
@@ -767,14 +767,15 @@ BEGIN | ||
767 | 767 | CONTROL "íÉAXL[[h(&A)",TRMODE_ASCII,"Button",BS_AUTORADIOBUTTON | WS_GROUP,13,19,85,10 |
768 | 768 | CONTROL "íÉoCi[h(&B)",TRMODE_BIN,"Button",BS_AUTORADIOBUTTON,13,33,84,10 |
769 | 769 | CONTROL "t@C¼ÅØÖ¦(&X)",TRMODE_AUTO,"Button",BS_AUTORADIOBUTTON,13,47,81,10 |
770 | + LTEXT "¨",-1,98,49,8,8 | |
770 | 771 | GROUPBOX "AXL[[hÌt@C¼(&F)",-1,104,7,99,84,WS_GROUP |
771 | 772 | LISTBOX TRMODE_EXT_LIST,109,19,53,67,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP |
772 | 773 | PUSHBUTTON "ÇÁ(&I)...",TRMODE_ADD,167,19,31,14 |
773 | 774 | PUSHBUTTON "í",TRMODE_DEL,167,38,31,14 |
774 | 775 | CONTROL "AXL[[hÅAbv[hAEOF(Ctrl-Z)ðæè(&Z)",TRMODE_EOF,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,94,196,10 |
775 | 776 | CONTROL "_E[h·ét@CÌ^CX^vðÛ(&T)",TRMODE_TIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,108,196,10 |
776 | - LTEXT "¨",-1,98,49,8,8 | |
777 | 777 | CONTROL "t@C¼ÌZ~RÈ~Íæè¢Ä_E[h(&S)",TRMODE_SEMICOLON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,122,196,10 |
778 | + CONTROL "t@C¼ðϦÄ]µ½êÉfBNgðì¬(&D)",TRMODE_MAKEDIR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,136,196,10 | |
778 | 779 | END |
779 | 780 | |
780 | 781 | up_exist_dlg DIALOG 0, 0, 223, 119 |
@@ -900,7 +901,7 @@ BEGIN | ||
900 | 901 | CONTROL "",INP_ANONYMOUS,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,164,30,16,8 |
901 | 902 | END |
902 | 903 | |
903 | -opt_mirror_dlg DIALOG 0, 0, 211, 139 | |
904 | +opt_mirror_dlg DIALOG 0, 0, 211, 155 | |
904 | 905 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
905 | 906 | FONT 9, "MS Shell Dlg" |
906 | 907 | BEGIN |
@@ -944,7 +945,7 @@ BEGIN | ||
944 | 945 | CONTROL "",INP_ANONYMOUS,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,164,30,16,8 |
945 | 946 | END |
946 | 947 | |
947 | -opt_connect_dlg DIALOG 0, 0, 211, 139 | |
948 | +opt_connect_dlg DIALOG 0, 0, 211, 155 | |
948 | 949 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
949 | 950 | FONT 9, "MS Shell Dlg" |
950 | 951 | BEGIN |
@@ -1024,7 +1025,7 @@ BEGIN | ||
1024 | 1025 | CTEXT "ð~µÜ·B",-1,7,31,140,8 |
1025 | 1026 | END |
1026 | 1027 | |
1027 | -opt_trmode3_dlg DIALOG 0, 0, 211, 139 | |
1028 | +opt_trmode3_dlg DIALOG 0, 0, 211, 155 | |
1028 | 1029 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
1029 | 1030 | FONT 9, "MS Shell Dlg" |
1030 | 1031 | BEGIN |
@@ -1281,7 +1282,7 @@ BEGIN | ||
1281 | 1282 | PUSHBUTTON "LZ",IDCANCEL,96,72,50,14 |
1282 | 1283 | END |
1283 | 1284 | |
1284 | -opt_disp_dlg DIALOG 0, 0, 211, 139 | |
1285 | +opt_disp_dlg DIALOG 0, 0, 211, 155 | |
1285 | 1286 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
1286 | 1287 | FONT 9, "MS Shell Dlg" |
1287 | 1288 | BEGIN |
@@ -1484,7 +1485,7 @@ BEGIN | ||
1484 | 1485 | LEFTMARGIN, 7 |
1485 | 1486 | RIGHTMARGIN, 204 |
1486 | 1487 | TOPMARGIN, 7 |
1487 | - BOTTOMMARGIN, 134 | |
1488 | + BOTTOMMARGIN, 148 | |
1488 | 1489 | END |
1489 | 1490 | |
1490 | 1491 | opt_tool_dlg, DIALOG |
@@ -1492,7 +1493,7 @@ BEGIN | ||
1492 | 1493 | LEFTMARGIN, 7 |
1493 | 1494 | RIGHTMARGIN, 204 |
1494 | 1495 | TOPMARGIN, 7 |
1495 | - BOTTOMMARGIN, 132 | |
1496 | + BOTTOMMARGIN, 148 | |
1496 | 1497 | END |
1497 | 1498 | |
1498 | 1499 | chmod_dlg, DIALOG |
@@ -1524,7 +1525,7 @@ BEGIN | ||
1524 | 1525 | LEFTMARGIN, 7 |
1525 | 1526 | RIGHTMARGIN, 204 |
1526 | 1527 | TOPMARGIN, 7 |
1527 | - BOTTOMMARGIN, 132 | |
1528 | + BOTTOMMARGIN, 148 | |
1528 | 1529 | END |
1529 | 1530 | |
1530 | 1531 | hostname_dlg, DIALOG |
@@ -1587,7 +1588,7 @@ BEGIN | ||
1587 | 1588 | LEFTMARGIN, 7 |
1588 | 1589 | RIGHTMARGIN, 204 |
1589 | 1590 | TOPMARGIN, 7 |
1590 | - BOTTOMMARGIN, 135 | |
1591 | + BOTTOMMARGIN, 148 | |
1591 | 1592 | END |
1592 | 1593 | |
1593 | 1594 | opt_notify_dlg, DIALOG |
@@ -1595,7 +1596,7 @@ BEGIN | ||
1595 | 1596 | LEFTMARGIN, 7 |
1596 | 1597 | RIGHTMARGIN, 204 |
1597 | 1598 | TOPMARGIN, 7 |
1598 | - BOTTOMMARGIN, 132 | |
1599 | + BOTTOMMARGIN, 148 | |
1599 | 1600 | END |
1600 | 1601 | |
1601 | 1602 | bmark_dlg, DIALOG |
@@ -1611,7 +1612,7 @@ BEGIN | ||
1611 | 1612 | LEFTMARGIN, 7 |
1612 | 1613 | RIGHTMARGIN, 204 |
1613 | 1614 | TOPMARGIN, 7 |
1614 | - BOTTOMMARGIN, 132 | |
1615 | + BOTTOMMARGIN, 148 | |
1615 | 1616 | END |
1616 | 1617 | |
1617 | 1618 | hset_adv_dlg, DIALOG |
@@ -1651,7 +1652,7 @@ BEGIN | ||
1651 | 1652 | LEFTMARGIN, 7 |
1652 | 1653 | RIGHTMARGIN, 204 |
1653 | 1654 | TOPMARGIN, 7 |
1654 | - BOTTOMMARGIN, 132 | |
1655 | + BOTTOMMARGIN, 148 | |
1655 | 1656 | END |
1656 | 1657 | |
1657 | 1658 | downerr_dlg, DIALOG |
@@ -1683,7 +1684,7 @@ BEGIN | ||
1683 | 1684 | LEFTMARGIN, 7 |
1684 | 1685 | RIGHTMARGIN, 204 |
1685 | 1686 | TOPMARGIN, 7 |
1686 | - BOTTOMMARGIN, 135 | |
1687 | + BOTTOMMARGIN, 148 | |
1687 | 1688 | END |
1688 | 1689 | |
1689 | 1690 | up_exist_dlg, DIALOG |
@@ -1763,7 +1764,7 @@ BEGIN | ||
1763 | 1764 | LEFTMARGIN, 7 |
1764 | 1765 | RIGHTMARGIN, 204 |
1765 | 1766 | TOPMARGIN, 7 |
1766 | - BOTTOMMARGIN, 135 | |
1767 | + BOTTOMMARGIN, 148 | |
1767 | 1768 | END |
1768 | 1769 | |
1769 | 1770 | somecmd_dlg, DIALOG |
@@ -1787,7 +1788,7 @@ BEGIN | ||
1787 | 1788 | LEFTMARGIN, 7 |
1788 | 1789 | RIGHTMARGIN, 204 |
1789 | 1790 | TOPMARGIN, 7 |
1790 | - BOTTOMMARGIN, 132 | |
1791 | + BOTTOMMARGIN, 148 | |
1791 | 1792 | END |
1792 | 1793 | |
1793 | 1794 | rasnotify_dlg, DIALOG |
@@ -1835,7 +1836,7 @@ BEGIN | ||
1835 | 1836 | LEFTMARGIN, 7 |
1836 | 1837 | RIGHTMARGIN, 204 |
1837 | 1838 | TOPMARGIN, 7 |
1838 | - BOTTOMMARGIN, 135 | |
1839 | + BOTTOMMARGIN, 148 | |
1839 | 1840 | END |
1840 | 1841 | |
1841 | 1842 | def_attr_dlg, DIALOG |
@@ -1995,7 +1996,7 @@ BEGIN | ||
1995 | 1996 | LEFTMARGIN, 7 |
1996 | 1997 | RIGHTMARGIN, 204 |
1997 | 1998 | TOPMARGIN, 7 |
1998 | - BOTTOMMARGIN, 132 | |
1999 | + BOTTOMMARGIN, 148 | |
1999 | 2000 | END |
2000 | 2001 | |
2001 | 2002 | bmark_edit_dlg, DIALOG |
@@ -215,6 +215,7 @@ | ||
215 | 215 | #define CONNECT_RASCLOSE 1014 |
216 | 216 | #define FIRE_LOWER 1014 |
217 | 217 | #define MIRROR_TIMECHECK 1014 |
218 | +#define TRMODE_MAKEDIR 1014 | |
218 | 219 | #define TOOL_EDITOR_BR 1015 |
219 | 220 | #define PERM_A_READ 1015 |
220 | 221 | #define SOUND_TRNNG 1015 |
@@ -354,7 +354,7 @@ BEGIN | ||
354 | 354 | LTEXT "",stc1,9,18,88,8 |
355 | 355 | END |
356 | 356 | |
357 | -opt_user_dlg DIALOG 0, 0, 211, 139 | |
357 | +opt_user_dlg DIALOG 0, 0, 211, 155 | |
358 | 358 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
359 | 359 | FONT 9, "MS Shell Dlg" |
360 | 360 | BEGIN |
@@ -363,7 +363,7 @@ BEGIN | ||
363 | 363 | LTEXT "This address is used for the anonymous FTP password.",-1,28,36,169,18,SS_SUNKEN |
364 | 364 | END |
365 | 365 | |
366 | -opt_tool_dlg DIALOG 0, 0, 211, 139 | |
366 | +opt_tool_dlg DIALOG 0, 0, 211, 155 | |
367 | 367 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
368 | 368 | FONT 9, "MS Shell Dlg" |
369 | 369 | BEGIN |
@@ -449,7 +449,7 @@ BEGIN | ||
449 | 449 | LTEXT "Enter new folder name:",-1,7,7,160,8 |
450 | 450 | END |
451 | 451 | |
452 | -opt_misc_dlg DIALOG 0, 0, 211, 139 | |
452 | +opt_misc_dlg DIALOG 0, 0, 211, 155 | |
453 | 453 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
454 | 454 | FONT 9, "MS Shell Dlg" |
455 | 455 | BEGIN |
@@ -552,7 +552,7 @@ BEGIN | ||
552 | 552 | PUSHBUTTON "No",IDCANCEL,112,42,50,14 |
553 | 553 | END |
554 | 554 | |
555 | -opt_trmode2_dlg DIALOG 0, 0, 211, 139 | |
555 | +opt_trmode2_dlg DIALOG 0, 0, 211, 155 | |
556 | 556 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
557 | 557 | FONT 9, "MS Shell Dlg" |
558 | 558 | BEGIN |
@@ -570,7 +570,7 @@ BEGIN | ||
570 | 570 | LTEXT "Mirror Upload/Download settings are on the Mirror tab.",-1,18,56,181,17,SS_SUNKEN |
571 | 571 | END |
572 | 572 | |
573 | -opt_notify_dlg DIALOGEX 0, 0, 211, 139 | |
573 | +opt_notify_dlg DIALOGEX 0, 0, 211, 155 | |
574 | 574 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
575 | 575 | FONT 9, "MS Shell Dlg", 0, 0, 0x0 |
576 | 576 | BEGIN |
@@ -607,7 +607,7 @@ BEGIN | ||
607 | 607 | PUSHBUTTON "&Help",9,165,90,50,14 |
608 | 608 | END |
609 | 609 | |
610 | -opt_fire_dlg DIALOG 0, 0, 211, 139 | |
610 | +opt_fire_dlg DIALOG 0, 0, 211, 155 | |
611 | 611 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
612 | 612 | FONT 9, "MS Shell Dlg" |
613 | 613 | BEGIN |
@@ -689,7 +689,7 @@ BEGIN | ||
689 | 689 | LTEXT "You can reenter mail address at the Option dialog.",-1,16,54,164,10 |
690 | 690 | END |
691 | 691 | |
692 | -opt_sound_dlg DIALOG 0, 0, 211, 139 | |
692 | +opt_sound_dlg DIALOG 0, 0, 211, 155 | |
693 | 693 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
694 | 694 | FONT 9, "MS Shell Dlg" |
695 | 695 | BEGIN |
@@ -766,7 +766,7 @@ BEGIN | ||
766 | 766 | CONTROL "Hankaku to Zenkaku",HSET_FN_HANCNV,"Button",BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,111,108,91,10 |
767 | 767 | END |
768 | 768 | |
769 | -opt_trmode1_dlg DIALOG 0, 0, 211, 139 | |
769 | +opt_trmode1_dlg DIALOG 0, 0, 211, 155 | |
770 | 770 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
771 | 771 | FONT 9, "MS Shell Dlg" |
772 | 772 | BEGIN |
@@ -774,15 +774,17 @@ BEGIN | ||
774 | 774 | CONTROL "Always &ASCII mode",TRMODE_ASCII,"Button",BS_AUTORADIOBUTTON | WS_GROUP,13,19,85,10 |
775 | 775 | CONTROL "Always &BINARY mode",TRMODE_BIN,"Button",BS_AUTORADIOBUTTON,13,33,84,10 |
776 | 776 | CONTROL "&Filename dependent",TRMODE_AUTO,"Button",BS_AUTORADIOBUTTON,13,47,78,10 |
777 | + LTEXT "->",-1,98,49,8,8 | |
777 | 778 | GROUPBOX "ASCII mode Filenames",-1,104,7,99,84,WS_GROUP |
778 | 779 | LISTBOX TRMODE_EXT_LIST,109,19,53,67,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP |
779 | 780 | PUSHBUTTON "A&dd...",TRMODE_ADD,167,19,31,14 |
780 | 781 | PUSHBUTTON "Delete",TRMODE_DEL,167,38,31,14 |
781 | 782 | CONTROL "&Remove EOF for ASCII mode upload",TRMODE_EOF,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,94,196,10 |
782 | - CONTROL "Re&tain file date/time on download",TRMODE_TIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,108,196,10 | |
783 | - LTEXT "->",-1,98,49,8,8 | |
783 | + CONTROL "Retain file date/&time on download",TRMODE_TIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,108,196,10 | |
784 | 784 | CONTROL "Truncate filename before &semicolon on download",TRMODE_SEMICOLON, |
785 | 785 | "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,122,196,10 |
786 | + CONTROL "Create &directory at file transfer with renaming",TRMODE_MAKEDIR, | |
787 | + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,136,196,10 | |
786 | 788 | END |
787 | 789 | |
788 | 790 | up_exist_dlg DIALOG 0, 0, 234, 119 |
@@ -913,7 +915,7 @@ BEGIN | ||
913 | 915 | CONTROL "",INP_ANONYMOUS,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,164,30,16,8 |
914 | 916 | END |
915 | 917 | |
916 | -opt_mirror_dlg DIALOG 0, 0, 211, 139 | |
918 | +opt_mirror_dlg DIALOG 0, 0, 211, 155 | |
917 | 919 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
918 | 920 | FONT 9, "MS Shell Dlg" |
919 | 921 | BEGIN |
@@ -958,7 +960,7 @@ BEGIN | ||
958 | 960 | CONTROL "",INP_ANONYMOUS,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_DISABLED | WS_TABSTOP,164,30,16,8 |
959 | 961 | END |
960 | 962 | |
961 | -opt_connect_dlg DIALOG 0, 0, 211, 139 | |
963 | +opt_connect_dlg DIALOG 0, 0, 211, 155 | |
962 | 964 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
963 | 965 | FONT 9, "MS Shell Dlg" |
964 | 966 | BEGIN |
@@ -1048,7 +1050,7 @@ BEGIN | ||
1048 | 1050 | CTEXT "Stop processing.",-1,7,20,141,8 |
1049 | 1051 | END |
1050 | 1052 | |
1051 | -opt_trmode3_dlg DIALOG 0, 0, 211, 139 | |
1053 | +opt_trmode3_dlg DIALOG 0, 0, 211, 155 | |
1052 | 1054 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
1053 | 1055 | FONT 9, "MS Shell Dlg" |
1054 | 1056 | BEGIN |
@@ -1306,7 +1308,7 @@ BEGIN | ||
1306 | 1308 | PUSHBUTTON "Cancel",IDCANCEL,96,63,50,14 |
1307 | 1309 | END |
1308 | 1310 | |
1309 | -opt_disp_dlg DIALOG 0, 0, 211, 139 | |
1311 | +opt_disp_dlg DIALOG 0, 0, 211, 155 | |
1310 | 1312 | STYLE DS_SETFONT | WS_CHILD | WS_DISABLED | WS_CAPTION |
1311 | 1313 | FONT 9, "MS Shell Dlg" |
1312 | 1314 | BEGIN |
@@ -1512,7 +1514,7 @@ BEGIN | ||
1512 | 1514 | LEFTMARGIN, 7 |
1513 | 1515 | RIGHTMARGIN, 204 |
1514 | 1516 | TOPMARGIN, 7 |
1515 | - BOTTOMMARGIN, 134 | |
1517 | + BOTTOMMARGIN, 148 | |
1516 | 1518 | END |
1517 | 1519 | |
1518 | 1520 | opt_tool_dlg, DIALOG |
@@ -1520,7 +1522,7 @@ BEGIN | ||
1520 | 1522 | LEFTMARGIN, 7 |
1521 | 1523 | RIGHTMARGIN, 204 |
1522 | 1524 | TOPMARGIN, 7 |
1523 | - BOTTOMMARGIN, 132 | |
1525 | + BOTTOMMARGIN, 148 | |
1524 | 1526 | END |
1525 | 1527 | |
1526 | 1528 | chmod_dlg, DIALOG |
@@ -1552,7 +1554,7 @@ BEGIN | ||
1552 | 1554 | LEFTMARGIN, 7 |
1553 | 1555 | RIGHTMARGIN, 204 |
1554 | 1556 | TOPMARGIN, 7 |
1555 | - BOTTOMMARGIN, 132 | |
1557 | + BOTTOMMARGIN, 148 | |
1556 | 1558 | END |
1557 | 1559 | |
1558 | 1560 | hostname_dlg, DIALOG |
@@ -1615,7 +1617,7 @@ BEGIN | ||
1615 | 1617 | LEFTMARGIN, 7 |
1616 | 1618 | RIGHTMARGIN, 204 |
1617 | 1619 | TOPMARGIN, 7 |
1618 | - BOTTOMMARGIN, 135 | |
1620 | + BOTTOMMARGIN, 148 | |
1619 | 1621 | END |
1620 | 1622 | |
1621 | 1623 | opt_notify_dlg, DIALOG |
@@ -1623,7 +1625,7 @@ BEGIN | ||
1623 | 1625 | LEFTMARGIN, 7 |
1624 | 1626 | RIGHTMARGIN, 204 |
1625 | 1627 | TOPMARGIN, 7 |
1626 | - BOTTOMMARGIN, 132 | |
1628 | + BOTTOMMARGIN, 148 | |
1627 | 1629 | END |
1628 | 1630 | |
1629 | 1631 | bmark_dlg, DIALOG |
@@ -1639,7 +1641,7 @@ BEGIN | ||
1639 | 1641 | LEFTMARGIN, 7 |
1640 | 1642 | RIGHTMARGIN, 204 |
1641 | 1643 | TOPMARGIN, 7 |
1642 | - BOTTOMMARGIN, 132 | |
1644 | + BOTTOMMARGIN, 148 | |
1643 | 1645 | END |
1644 | 1646 | |
1645 | 1647 | hset_adv_dlg, DIALOG |
@@ -1679,7 +1681,7 @@ BEGIN | ||
1679 | 1681 | LEFTMARGIN, 7 |
1680 | 1682 | RIGHTMARGIN, 204 |
1681 | 1683 | TOPMARGIN, 7 |
1682 | - BOTTOMMARGIN, 132 | |
1684 | + BOTTOMMARGIN, 148 | |
1683 | 1685 | END |
1684 | 1686 | |
1685 | 1687 | downerr_dlg, DIALOG |
@@ -1711,7 +1713,7 @@ BEGIN | ||
1711 | 1713 | LEFTMARGIN, 7 |
1712 | 1714 | RIGHTMARGIN, 204 |
1713 | 1715 | TOPMARGIN, 7 |
1714 | - BOTTOMMARGIN, 135 | |
1716 | + BOTTOMMARGIN, 148 | |
1715 | 1717 | END |
1716 | 1718 | |
1717 | 1719 | up_exist_dlg, DIALOG |
@@ -1791,7 +1793,7 @@ BEGIN | ||
1791 | 1793 | LEFTMARGIN, 7 |
1792 | 1794 | RIGHTMARGIN, 204 |
1793 | 1795 | TOPMARGIN, 7 |
1794 | - BOTTOMMARGIN, 135 | |
1796 | + BOTTOMMARGIN, 148 | |
1795 | 1797 | END |
1796 | 1798 | |
1797 | 1799 | somecmd_dlg, DIALOG |
@@ -1815,7 +1817,7 @@ BEGIN | ||
1815 | 1817 | LEFTMARGIN, 7 |
1816 | 1818 | RIGHTMARGIN, 204 |
1817 | 1819 | TOPMARGIN, 7 |
1818 | - BOTTOMMARGIN, 132 | |
1820 | + BOTTOMMARGIN, 148 | |
1819 | 1821 | END |
1820 | 1822 | |
1821 | 1823 | rasnotify_dlg, DIALOG |
@@ -1863,7 +1865,7 @@ BEGIN | ||
1863 | 1865 | LEFTMARGIN, 7 |
1864 | 1866 | RIGHTMARGIN, 204 |
1865 | 1867 | TOPMARGIN, 7 |
1866 | - BOTTOMMARGIN, 135 | |
1868 | + BOTTOMMARGIN, 148 | |
1867 | 1869 | END |
1868 | 1870 | |
1869 | 1871 | def_attr_dlg, DIALOG |
@@ -2023,7 +2025,7 @@ BEGIN | ||
2023 | 2025 | LEFTMARGIN, 7 |
2024 | 2026 | RIGHTMARGIN, 204 |
2025 | 2027 | TOPMARGIN, 7 |
2026 | - BOTTOMMARGIN, 132 | |
2028 | + BOTTOMMARGIN, 148 | |
2027 | 2029 | END |
2028 | 2030 | |
2029 | 2031 | bmark_edit_dlg, DIALOG |
@@ -215,6 +215,7 @@ | ||
215 | 215 | #define CONNECT_RASCLOSE 1014 |
216 | 216 | #define FIRE_LOWER 1014 |
217 | 217 | #define MIRROR_TIMECHECK 1014 |
218 | +#define TRMODE_MAKEDIR 1014 | |
218 | 219 | #define TOOL_EDITOR_BR 1015 |
219 | 220 | #define PERM_A_READ 1015 |
220 | 221 | #define SOUND_TRNNG 1015 |
@@ -1537,12 +1537,12 @@ void CountPrevFfftpWindows(void); | ||
1537 | 1537 | |
1538 | 1538 | /*===== ftpproc.c =====*/ |
1539 | 1539 | |
1540 | -void DownLoadProc(int ChName, int ForceFile, int All); | |
1541 | -void DirectDownLoadProc(char *Fname); | |
1542 | -void InputDownLoadProc(void); | |
1540 | +void DownloadProc(int ChName, int ForceFile, int All); | |
1541 | +void DirectDownloadProc(char *Fname); | |
1542 | +void InputDownloadProc(void); | |
1543 | 1543 | void MirrorDownloadProc(int Notify); |
1544 | -void UpLoadListProc(int ChName, int All); | |
1545 | -void UpLoadDragProc(WPARAM wParam); | |
1544 | +void UploadListProc(int ChName, int All); | |
1545 | +void UploadDragProc(WPARAM wParam); | |
1546 | 1546 | void MirrorUploadProc(int Notify); |
1547 | 1547 | void DeleteProc(void); |
1548 | 1548 | void RenameProc(void); |
@@ -1603,7 +1603,9 @@ int DoMDTM(SOCKET cSkt, char *Path, FILETIME *Time, int *CancelCheckWork); | ||
1603 | 1603 | //int DoQUOTE(char *CmdStr); |
1604 | 1604 | int DoQUOTE(SOCKET cSkt, char *CmdStr, int *CancelCheckWork); |
1605 | 1605 | SOCKET DoClose(SOCKET Sock); |
1606 | -int DoQUIT(SOCKET ctrl_skt); | |
1606 | +// 同時接続対応 | |
1607 | +//int DoQUIT(SOCKET ctrl_skt); | |
1608 | +int DoQUIT(SOCKET ctrl_skt, int *CancelCheckWork); | |
1607 | 1609 | int DoDirListCmdSkt(char *AddOpt, char *Path, int Num, int *CancelCheckWork); |
1608 | 1610 | #if defined(HAVE_TANDEM) |
1609 | 1611 | void SwitchOSSProc(void); |
@@ -1636,7 +1638,7 @@ int AskTransferNow(void); | ||
1636 | 1638 | int AskTransferFileNum(void); |
1637 | 1639 | void GoForwardTransWindow(void); |
1638 | 1640 | void InitTransCurDir(void); |
1639 | -int DoDownLoad(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork); | |
1641 | +int DoDownload(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork); | |
1640 | 1642 | int CheckPathViolation(TRANSPACKET *packet); |
1641 | 1643 | |
1642 | 1644 | /*===== codecnv.c =====*/ |
@@ -1696,13 +1698,13 @@ int CheckFname(char *str, char *regexp); | ||
1696 | 1698 | |
1697 | 1699 | /*===== registory.c =====*/ |
1698 | 1700 | |
1699 | -void SaveRegistory(void); | |
1700 | -int LoadRegistory(void); | |
1701 | -void ClearRegistory(void); | |
1701 | +void SaveRegistry(void); | |
1702 | +int LoadRegistry(void); | |
1703 | +void ClearRegistry(void); | |
1702 | 1704 | void SetMasterPassword( const char* ); |
1703 | 1705 | int GetMasterPasswordStatus(void); |
1704 | 1706 | int ValidateMasterPassword(void); |
1705 | -DWORD LoadHideDriveListRegistory(void); | |
1707 | +DWORD LoadHideDriveListRegistry(void); | |
1706 | 1708 | void SaveSettingsToFile(void); |
1707 | 1709 | int LoadSettingsFromFile(void); |
1708 | 1710 |
@@ -340,7 +340,7 @@ void QuickConnectProc(void) | ||
340 | 340 | EnableUserOpe(); |
341 | 341 | |
342 | 342 | if(strlen(File) > 0) |
343 | - DirectDownLoadProc(File); | |
343 | + DirectDownloadProc(File); | |
344 | 344 | } |
345 | 345 | else |
346 | 346 | { |
@@ -528,7 +528,7 @@ void DirectConnectProc(char *unc, int Kanji, int Kana, int Fkanji, int TrMode) | ||
528 | 528 | EnableUserOpe(); |
529 | 529 | |
530 | 530 | if(strlen(File) > 0) |
531 | - DirectDownLoadProc(File); | |
531 | + DirectDownloadProc(File); | |
532 | 532 | else |
533 | 533 | ResetAutoExitFlg(); |
534 | 534 | } |
@@ -1265,13 +1265,17 @@ void DisconnectProc(void) | ||
1265 | 1265 | |
1266 | 1266 | if((CmdCtrlSocket != INVALID_SOCKET) && (CmdCtrlSocket != TrnCtrlSocket)) |
1267 | 1267 | { |
1268 | - DoQUIT(CmdCtrlSocket); | |
1268 | + // 同時接続対応 | |
1269 | +// DoQUIT(CmdCtrlSocket); | |
1270 | + DoQUIT(CmdCtrlSocket, &CancelFlg); | |
1269 | 1271 | DoClose(CmdCtrlSocket); |
1270 | 1272 | } |
1271 | 1273 | |
1272 | 1274 | if(TrnCtrlSocket != INVALID_SOCKET) |
1273 | 1275 | { |
1274 | - DoQUIT(TrnCtrlSocket); | |
1276 | + // 同時接続対応 | |
1277 | +// DoQUIT(TrnCtrlSocket); | |
1278 | + DoQUIT(TrnCtrlSocket, &CancelFlg); | |
1275 | 1279 | DoClose(TrnCtrlSocket); |
1276 | 1280 | |
1277 | 1281 | SaveCurrentSetToHistory(); |
@@ -1994,17 +1998,109 @@ static int CheckOneTimePassword(char *Pass, char *Reply, int Type) | ||
1994 | 1998 | *----------------------------------------------------------------------------*/ |
1995 | 1999 | |
1996 | 2000 | // IPv6対応 |
2001 | +typedef SOCKET (__cdecl* LPCONNECTSOCK)(char*, int, char*, int*); | |
2002 | + | |
2003 | +typedef struct | |
2004 | +{ | |
2005 | + HANDLE h; | |
2006 | + DWORD ExitCode; | |
2007 | + char *host; | |
2008 | + int port; | |
2009 | + char *PreMsg; | |
2010 | + int CancelCheckWork; | |
2011 | + LPCONNECTSOCK f; | |
2012 | + SOCKET s; | |
2013 | +} CONNECTSOCKDATA; | |
2014 | + | |
2015 | +DWORD WINAPI connectsockThreadProc(LPVOID lpParameter) | |
2016 | +{ | |
2017 | + CONNECTSOCKDATA* pData; | |
2018 | + pData = (CONNECTSOCKDATA*)lpParameter; | |
2019 | + pData->s = pData->f(pData->host, pData->port, pData->PreMsg, &pData->CancelCheckWork); | |
2020 | + return 0; | |
2021 | +} | |
2022 | + | |
2023 | +// IPv6対応 | |
1997 | 2024 | SOCKET connectsock(char *host, int port, char *PreMsg, int *CancelCheckWork) |
1998 | 2025 | { |
1999 | 2026 | SOCKET Result; |
2027 | + CONNECTSOCKDATA DataIPv4; | |
2028 | + CONNECTSOCKDATA DataIPv6; | |
2000 | 2029 | Result = INVALID_SOCKET; |
2001 | 2030 | switch(CurHost.CurNetType) |
2002 | 2031 | { |
2003 | 2032 | case NTYPE_AUTO: |
2004 | - if((Result = connectsockIPv4(host, port, PreMsg, CancelCheckWork)) != INVALID_SOCKET) | |
2005 | - CurHost.CurNetType = NTYPE_IPV4; | |
2006 | - else if((Result = connectsockIPv6(host, port, PreMsg, CancelCheckWork)) != INVALID_SOCKET) | |
2007 | - CurHost.CurNetType = NTYPE_IPV6; | |
2033 | +// if((Result = connectsockIPv4(host, port, PreMsg, CancelCheckWork)) != INVALID_SOCKET) | |
2034 | +// CurHost.CurNetType = NTYPE_IPV4; | |
2035 | +// else if((Result = connectsockIPv6(host, port, PreMsg, CancelCheckWork)) != INVALID_SOCKET) | |
2036 | +// CurHost.CurNetType = NTYPE_IPV6; | |
2037 | + DataIPv4.host = host; | |
2038 | + DataIPv4.port = port; | |
2039 | + DataIPv4.PreMsg = PreMsg; | |
2040 | + DataIPv4.CancelCheckWork = *CancelCheckWork; | |
2041 | + DataIPv4.f = connectsockIPv4; | |
2042 | + DataIPv4.h = CreateThread(NULL, 0, connectsockThreadProc, &DataIPv4, 0, NULL); | |
2043 | + DataIPv6.host = host; | |
2044 | + DataIPv6.port = port; | |
2045 | + DataIPv6.PreMsg = PreMsg; | |
2046 | + DataIPv6.CancelCheckWork = *CancelCheckWork; | |
2047 | + DataIPv6.f = connectsockIPv6; | |
2048 | + DataIPv6.h = CreateThread(NULL, 0, connectsockThreadProc, &DataIPv6, 0, NULL); | |
2049 | + while(1) | |
2050 | + { | |
2051 | + if(GetExitCodeThread(DataIPv4.h, &DataIPv4.ExitCode)) | |
2052 | + { | |
2053 | + if(DataIPv4.ExitCode != STILL_ACTIVE) | |
2054 | + { | |
2055 | + if(DataIPv4.s != INVALID_SOCKET) | |
2056 | + { | |
2057 | + Result = DataIPv4.s; | |
2058 | + CurHost.CurNetType = NTYPE_IPV4; | |
2059 | + break; | |
2060 | + } | |
2061 | + } | |
2062 | + } | |
2063 | + if(GetExitCodeThread(DataIPv6.h, &DataIPv6.ExitCode)) | |
2064 | + { | |
2065 | + if(DataIPv6.ExitCode != STILL_ACTIVE) | |
2066 | + { | |
2067 | + if(DataIPv6.s != INVALID_SOCKET) | |
2068 | + { | |
2069 | + Result = DataIPv6.s; | |
2070 | + CurHost.CurNetType = NTYPE_IPV6; | |
2071 | + break; | |
2072 | + } | |
2073 | + } | |
2074 | + } | |
2075 | + if(GetExitCodeThread(DataIPv4.h, &DataIPv4.ExitCode) && GetExitCodeThread(DataIPv6.h, &DataIPv6.ExitCode)) | |
2076 | + { | |
2077 | + if(DataIPv4.ExitCode != STILL_ACTIVE && DataIPv6.ExitCode != STILL_ACTIVE) | |
2078 | + { | |
2079 | + if(DataIPv4.s == INVALID_SOCKET && DataIPv6.s == INVALID_SOCKET) | |
2080 | + break; | |
2081 | + } | |
2082 | + } | |
2083 | + DataIPv4.CancelCheckWork = *CancelCheckWork; | |
2084 | + DataIPv6.CancelCheckWork = *CancelCheckWork; | |
2085 | + BackgrndMessageProc(); | |
2086 | + Sleep(1); | |
2087 | + } | |
2088 | + while(1) | |
2089 | + { | |
2090 | + if(GetExitCodeThread(DataIPv4.h, &DataIPv4.ExitCode) && GetExitCodeThread(DataIPv6.h, &DataIPv6.ExitCode)) | |
2091 | + { | |
2092 | + if(DataIPv4.ExitCode != STILL_ACTIVE && DataIPv6.ExitCode != STILL_ACTIVE) | |
2093 | + { | |
2094 | + CloseHandle(DataIPv4.h); | |
2095 | + CloseHandle(DataIPv6.h); | |
2096 | + break; | |
2097 | + } | |
2098 | + } | |
2099 | + DataIPv4.CancelCheckWork = YES; | |
2100 | + DataIPv6.CancelCheckWork = YES; | |
2101 | + BackgrndMessageProc(); | |
2102 | + Sleep(1); | |
2103 | + } | |
2008 | 2104 | break; |
2009 | 2105 | case NTYPE_IPV4: |
2010 | 2106 | Result = connectsockIPv4(host, port, PreMsg, CancelCheckWork); |
@@ -2067,7 +2163,9 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2067 | 2163 | else |
2068 | 2164 | { |
2069 | 2165 | // アドレスを取得 |
2070 | - SetTaskMsg(MSGJPN016, DomainName); | |
2166 | + // IPv6対応 | |
2167 | +// SetTaskMsg(MSGJPN016, DomainName); | |
2168 | + SetTaskMsg(MSGJPN016, DomainName, MSGJPN333); | |
2071 | 2169 | // IPv6対応 |
2072 | 2170 | // pHostEntry = do_gethostbyname(host, HostEntry, MAXGETHOSTSTRUCT, CancelCheckWork); |
2073 | 2171 | pHostEntry = do_gethostbynameIPv4(host, HostEntry, MAXGETHOSTSTRUCT, CancelCheckWork); |
@@ -2079,7 +2177,9 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2079 | 2177 | // memcpy((char *)&CurSockAddr.sin_addr, pHostEntry->h_addr, pHostEntry->h_length); |
2080 | 2178 | // SetTaskMsg(MSGJPN017, PreMsg, DomainName, inet_ntoa(CurSockAddr.sin_addr), ntohs(CurSockAddr.sin_port)); |
2081 | 2179 | memcpy((char *)&CurSockAddrIPv4.sin_addr, pHostEntry->h_addr, pHostEntry->h_length); |
2082 | - SetTaskMsg(MSGJPN017, PreMsg, DomainName, inet_ntoa(CurSockAddrIPv4.sin_addr), ntohs(CurSockAddrIPv4.sin_port)); | |
2180 | + // IPv6対応 | |
2181 | +// SetTaskMsg(MSGJPN017, PreMsg, DomainName, inet_ntoa(CurSockAddrIPv4.sin_addr), ntohs(CurSockAddrIPv4.sin_port)); | |
2182 | + SetTaskMsg(MSGJPN017, PreMsg, DomainName, inet_ntoa(CurSockAddrIPv4.sin_addr), ntohs(CurSockAddrIPv4.sin_port), MSGJPN333); | |
2083 | 2183 | } |
2084 | 2184 | else |
2085 | 2185 | { |
@@ -2088,11 +2188,13 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2088 | 2188 | UseIPadrs = NO; |
2089 | 2189 | // IPv6対応 |
2090 | 2190 | // SetTaskMsg(MSGJPN018, PreMsg, DomainName, ntohs(CurSockAddr.sin_port)); |
2091 | - SetTaskMsg(MSGJPN018, PreMsg, DomainName, ntohs(CurSockAddrIPv4.sin_port)); | |
2191 | + SetTaskMsg(MSGJPN018, PreMsg, DomainName, ntohs(CurSockAddrIPv4.sin_port), MSGJPN333); | |
2092 | 2192 | } |
2093 | 2193 | else |
2094 | 2194 | { |
2095 | - SetTaskMsg(MSGJPN019, host); | |
2195 | + // IPv6対応 | |
2196 | +// SetTaskMsg(MSGJPN019, host); | |
2197 | + SetTaskMsg(MSGJPN019, host, MSGJPN333); | |
2096 | 2198 | return(INVALID_SOCKET); |
2097 | 2199 | } |
2098 | 2200 | } |
@@ -2100,7 +2202,7 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2100 | 2202 | else |
2101 | 2203 | // IPv6対応 |
2102 | 2204 | // SetTaskMsg(MSGJPN020, PreMsg, inet_ntoa(CurSockAddr.sin_addr), ntohs(CurSockAddr.sin_port)); |
2103 | - SetTaskMsg(MSGJPN020, PreMsg, inet_ntoa(CurSockAddrIPv4.sin_addr), ntohs(CurSockAddrIPv4.sin_port)); | |
2205 | + SetTaskMsg(MSGJPN020, PreMsg, inet_ntoa(CurSockAddrIPv4.sin_addr), ntohs(CurSockAddrIPv4.sin_port), MSGJPN333); | |
2104 | 2206 | |
2105 | 2207 | if((Fwall == FWALL_SOCKS4) || (Fwall == FWALL_SOCKS5_NOAUTH) || (Fwall == FWALL_SOCKS5_USER)) |
2106 | 2208 | { |
@@ -2138,7 +2240,9 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2138 | 2240 | memcpy((char *)&SocksSockAddrIPv4.sin_addr, pHostEntry->h_addr, pHostEntry->h_length); |
2139 | 2241 | else |
2140 | 2242 | { |
2141 | - SetTaskMsg(MSGJPN021, FwallHost); | |
2243 | + // IPv6対応 | |
2244 | +// SetTaskMsg(MSGJPN021, FwallHost); | |
2245 | + SetTaskMsg(MSGJPN021, FwallHost, MSGJPN333); | |
2142 | 2246 | return INVALID_SOCKET; |
2143 | 2247 | } |
2144 | 2248 | } |
@@ -2148,7 +2252,9 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2148 | 2252 | // SetTaskMsg(MSGJPN022, inet_ntoa(SocksSockAddr.sin_addr), ntohs(SocksSockAddr.sin_port)); |
2149 | 2253 | SocksSockAddrIPv4.sin_port = htons((u_short)FwallPort); |
2150 | 2254 | SocksSockAddrIPv4.sin_family = AF_INET; |
2151 | - SetTaskMsg(MSGJPN022, inet_ntoa(SocksSockAddrIPv4.sin_addr), ntohs(SocksSockAddrIPv4.sin_port)); | |
2255 | + // IPv6対応 | |
2256 | +// SetTaskMsg(MSGJPN022, inet_ntoa(SocksSockAddrIPv4.sin_addr), ntohs(SocksSockAddrIPv4.sin_port)); | |
2257 | + SetTaskMsg(MSGJPN022, inet_ntoa(SocksSockAddrIPv4.sin_addr), ntohs(SocksSockAddrIPv4.sin_port), MSGJPN333); | |
2152 | 2258 | // connectで接続する先はSOCKSサーバ |
2153 | 2259 | // IPv6対応 |
2154 | 2260 | // memcpy(&saSockAddr, &SocksSockAddr, sizeof(SocksSockAddr)); |
@@ -2181,7 +2287,9 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2181 | 2287 | (Socks4GetCmdReply(sSocket, &Socks4Reply, CancelCheckWork) != FFFTP_SUCCESS) || |
2182 | 2288 | (Socks4Reply.Result != SOCKS4_RES_OK)) |
2183 | 2289 | { |
2184 | - SetTaskMsg(MSGJPN023, Socks4Reply.Result); | |
2290 | + // IPv6対応 | |
2291 | +// SetTaskMsg(MSGJPN023, Socks4Reply.Result); | |
2292 | + SetTaskMsg(MSGJPN023, Socks4Reply.Result, MSGJPN333); | |
2185 | 2293 | DoClose(sSocket); |
2186 | 2294 | sSocket = INVALID_SOCKET; |
2187 | 2295 | } |
@@ -2203,7 +2311,9 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2203 | 2311 | (Socks5GetCmdReply(sSocket, &Socks5Reply, CancelCheckWork) != FFFTP_SUCCESS) || |
2204 | 2312 | (Socks5Reply.Result != SOCKS5_RES_OK)) |
2205 | 2313 | { |
2206 | - SetTaskMsg(MSGJPN024, Socks5Reply.Result); | |
2314 | + // IPv6対応 | |
2315 | +// SetTaskMsg(MSGJPN024, Socks5Reply.Result); | |
2316 | + SetTaskMsg(MSGJPN024, Socks5Reply.Result, MSGJPN333); | |
2207 | 2317 | DoClose(sSocket); |
2208 | 2318 | sSocket = INVALID_SOCKET; |
2209 | 2319 | } |
@@ -2211,18 +2321,24 @@ SOCKET connectsockIPv4(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2211 | 2321 | } |
2212 | 2322 | |
2213 | 2323 | if(sSocket != INVALID_SOCKET) |
2214 | - SetTaskMsg(MSGJPN025); | |
2324 | + // IPv6対応 | |
2325 | +// SetTaskMsg(MSGJPN025); | |
2326 | + SetTaskMsg(MSGJPN025, MSGJPN333); | |
2215 | 2327 | } |
2216 | 2328 | else |
2217 | 2329 | { |
2218 | 2330 | //#pragma aaa |
2219 | - SetTaskMsg(MSGJPN026/*"接続できません(2) %x", sSocket*/); | |
2331 | + // IPv6対応 | |
2332 | +// SetTaskMsg(MSGJPN026/*"接続できません(2) %x", sSocket*/); | |
2333 | + SetTaskMsg(MSGJPN026/*"接続できません(2) %x", sSocket*/, MSGJPN333); | |
2220 | 2334 | DoClose(sSocket); |
2221 | 2335 | sSocket = INVALID_SOCKET; |
2222 | 2336 | } |
2223 | 2337 | } |
2224 | 2338 | else |
2225 | - SetTaskMsg(MSGJPN027); | |
2339 | + // IPv6対応 | |
2340 | +// SetTaskMsg(MSGJPN027); | |
2341 | + SetTaskMsg(MSGJPN027, MSGJPN333); | |
2226 | 2342 | |
2227 | 2343 | return(sSocket); |
2228 | 2344 | } |
@@ -2268,31 +2384,31 @@ SOCKET connectsockIPv6(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2268 | 2384 | else |
2269 | 2385 | { |
2270 | 2386 | // アドレスを取得 |
2271 | - SetTaskMsg(MSGJPN016, DomainName); | |
2387 | + SetTaskMsg(MSGJPN016, DomainName, MSGJPN334); | |
2272 | 2388 | pHostEntry = do_gethostbynameIPv6(host, HostEntry, MAXGETHOSTSTRUCT, CancelCheckWork); |
2273 | 2389 | } |
2274 | 2390 | |
2275 | 2391 | if(pHostEntry != NULL) |
2276 | 2392 | { |
2277 | 2393 | memcpy((char *)&CurSockAddrIPv6.sin6_addr, pHostEntry->h_addr, pHostEntry->h_length); |
2278 | - SetTaskMsg(MSGJPN017, PreMsg, DomainName, inet6_ntoa(CurSockAddrIPv6.sin6_addr), ntohs(CurSockAddrIPv6.sin6_port)); | |
2394 | + SetTaskMsg(MSGJPN017, PreMsg, DomainName, inet6_ntoa(CurSockAddrIPv6.sin6_addr), ntohs(CurSockAddrIPv6.sin6_port), MSGJPN334); | |
2279 | 2395 | } |
2280 | 2396 | else |
2281 | 2397 | { |
2282 | 2398 | if((Fwall == FWALL_SOCKS5_NOAUTH) || (Fwall == FWALL_SOCKS5_USER)) |
2283 | 2399 | { |
2284 | 2400 | UseIPadrs = NO; |
2285 | - SetTaskMsg(MSGJPN018, PreMsg, DomainName, ntohs(CurSockAddrIPv6.sin6_port)); | |
2401 | + SetTaskMsg(MSGJPN018, PreMsg, DomainName, ntohs(CurSockAddrIPv6.sin6_port), MSGJPN334); | |
2286 | 2402 | } |
2287 | 2403 | else |
2288 | 2404 | { |
2289 | - SetTaskMsg(MSGJPN019, host); | |
2405 | + SetTaskMsg(MSGJPN019, host, MSGJPN334); | |
2290 | 2406 | return(INVALID_SOCKET); |
2291 | 2407 | } |
2292 | 2408 | } |
2293 | 2409 | } |
2294 | 2410 | else |
2295 | - SetTaskMsg(MSGJPN020, PreMsg, inet6_ntoa(CurSockAddrIPv6.sin6_addr), ntohs(CurSockAddrIPv6.sin6_port)); | |
2411 | + SetTaskMsg(MSGJPN020, PreMsg, inet6_ntoa(CurSockAddrIPv6.sin6_addr), ntohs(CurSockAddrIPv6.sin6_port), MSGJPN334); | |
2296 | 2412 | |
2297 | 2413 | if((Fwall == FWALL_SOCKS5_NOAUTH) || (Fwall == FWALL_SOCKS5_USER)) |
2298 | 2414 | { |
@@ -2310,13 +2426,13 @@ SOCKET connectsockIPv6(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2310 | 2426 | memcpy((char *)&SocksSockAddrIPv6.sin6_addr, pHostEntry->h_addr, pHostEntry->h_length); |
2311 | 2427 | else |
2312 | 2428 | { |
2313 | - SetTaskMsg(MSGJPN021, FwallHost); | |
2429 | + SetTaskMsg(MSGJPN021, FwallHost, MSGJPN334); | |
2314 | 2430 | return INVALID_SOCKET; |
2315 | 2431 | } |
2316 | 2432 | } |
2317 | 2433 | SocksSockAddrIPv6.sin6_port = htons((u_short)FwallPort); |
2318 | 2434 | SocksSockAddrIPv6.sin6_family = AF_INET6; |
2319 | - SetTaskMsg(MSGJPN022, inet6_ntoa(SocksSockAddrIPv6.sin6_addr), ntohs(SocksSockAddrIPv6.sin6_port)); | |
2435 | + SetTaskMsg(MSGJPN022, inet6_ntoa(SocksSockAddrIPv6.sin6_addr), ntohs(SocksSockAddrIPv6.sin6_port), MSGJPN334); | |
2320 | 2436 | // connectで接続する先はSOCKSサーバ |
2321 | 2437 | memcpy(&saSockAddr, &SocksSockAddrIPv6, sizeof(SocksSockAddrIPv6)); |
2322 | 2438 | } |
@@ -2352,7 +2468,7 @@ SOCKET connectsockIPv6(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2352 | 2468 | (Socks5GetCmdReply(sSocket, &Socks5Reply, CancelCheckWork) != FFFTP_SUCCESS) || |
2353 | 2469 | (Socks5Reply.Result != SOCKS5_RES_OK)) |
2354 | 2470 | { |
2355 | - SetTaskMsg(MSGJPN024, Socks5Reply.Result); | |
2471 | + SetTaskMsg(MSGJPN024, Socks5Reply.Result, MSGJPN334); | |
2356 | 2472 | DoClose(sSocket); |
2357 | 2473 | sSocket = INVALID_SOCKET; |
2358 | 2474 | } |
@@ -2360,18 +2476,18 @@ SOCKET connectsockIPv6(char *host, int port, char *PreMsg, int *CancelCheckWork) | ||
2360 | 2476 | } |
2361 | 2477 | |
2362 | 2478 | if(sSocket != INVALID_SOCKET) |
2363 | - SetTaskMsg(MSGJPN025); | |
2479 | + SetTaskMsg(MSGJPN025, MSGJPN334); | |
2364 | 2480 | } |
2365 | 2481 | else |
2366 | 2482 | { |
2367 | 2483 | //#pragma aaa |
2368 | - SetTaskMsg(MSGJPN026/*"接続できません(2) %x", sSocket*/); | |
2484 | + SetTaskMsg(MSGJPN026/*"接続できません(2) %x", sSocket*/, MSGJPN334); | |
2369 | 2485 | DoClose(sSocket); |
2370 | 2486 | sSocket = INVALID_SOCKET; |
2371 | 2487 | } |
2372 | 2488 | } |
2373 | 2489 | else |
2374 | - SetTaskMsg(MSGJPN027); | |
2490 | + SetTaskMsg(MSGJPN027, MSGJPN334); | |
2375 | 2491 | |
2376 | 2492 | return(sSocket); |
2377 | 2493 | } |
@@ -2454,7 +2570,9 @@ SOCKET GetFTPListenSocketIPv4(SOCKET ctrl_skt, int *CancelCheckWork) | ||
2454 | 2570 | (Socks4GetCmdReply(listen_skt, &Socks4Reply, CancelCheckWork) != FFFTP_SUCCESS) || |
2455 | 2571 | (Socks4Reply.Result != SOCKS4_RES_OK)) |
2456 | 2572 | { |
2457 | - SetTaskMsg(MSGJPN028, Socks4Reply.Result); | |
2573 | + // IPv6対応 | |
2574 | +// SetTaskMsg(MSGJPN028, Socks4Reply.Result); | |
2575 | + SetTaskMsg(MSGJPN028, Socks4Reply.Result, MSGJPN333); | |
2458 | 2576 | DoClose(listen_skt); |
2459 | 2577 | listen_skt = INVALID_SOCKET; |
2460 | 2578 | } |
@@ -2496,7 +2614,9 @@ SOCKET GetFTPListenSocketIPv4(SOCKET ctrl_skt, int *CancelCheckWork) | ||
2496 | 2614 | (Socks5GetCmdReply(listen_skt, &Socks5Reply, CancelCheckWork) != FFFTP_SUCCESS) || |
2497 | 2615 | (Socks5Reply.Result != SOCKS5_RES_OK)) |
2498 | 2616 | { |
2499 | - SetTaskMsg(MSGJPN029, Socks5Reply.Result); | |
2617 | + // IPv6対応 | |
2618 | +// SetTaskMsg(MSGJPN029, Socks5Reply.Result); | |
2619 | + SetTaskMsg(MSGJPN029, Socks5Reply.Result, MSGJPN333); | |
2500 | 2620 | DoClose(listen_skt); |
2501 | 2621 | listen_skt = INVALID_SOCKET; |
2502 | 2622 | } |
@@ -2556,7 +2676,9 @@ SOCKET GetFTPListenSocketIPv4(SOCKET ctrl_skt, int *CancelCheckWork) | ||
2556 | 2676 | } |
2557 | 2677 | |
2558 | 2678 | if(listen_skt == INVALID_SOCKET) |
2559 | - SetTaskMsg(MSGJPN030); | |
2679 | + // IPv6対応 | |
2680 | +// SetTaskMsg(MSGJPN030); | |
2681 | + SetTaskMsg(MSGJPN030, MSGJPN333); | |
2560 | 2682 | } |
2561 | 2683 | } |
2562 | 2684 | else |
@@ -2573,7 +2695,9 @@ SOCKET GetFTPListenSocketIPv4(SOCKET ctrl_skt, int *CancelCheckWork) | ||
2573 | 2695 | UC(a[0]), UC(a[1]), UC(a[2]), UC(a[3]), |
2574 | 2696 | UC(p[0]), UC(p[1])) / 100) != FTP_COMPLETE) |
2575 | 2697 | { |
2576 | - SetTaskMsg(MSGJPN031); | |
2698 | + // IPv6対応 | |
2699 | +// SetTaskMsg(MSGJPN031); | |
2700 | + SetTaskMsg(MSGJPN031, MSGJPN333); | |
2577 | 2701 | do_closesocket(listen_skt); |
2578 | 2702 | listen_skt = INVALID_SOCKET; |
2579 | 2703 | } |
@@ -2630,7 +2754,7 @@ SOCKET GetFTPListenSocketIPv6(SOCKET ctrl_skt, int *CancelCheckWork) | ||
2630 | 2754 | (Socks5GetCmdReply(listen_skt, &Socks5Reply, CancelCheckWork) != FFFTP_SUCCESS) || |
2631 | 2755 | (Socks5Reply.Result != SOCKS5_RES_OK)) |
2632 | 2756 | { |
2633 | - SetTaskMsg(MSGJPN029, Socks5Reply.Result); | |
2757 | + SetTaskMsg(MSGJPN029, Socks5Reply.Result, MSGJPN334); | |
2634 | 2758 | DoClose(listen_skt); |
2635 | 2759 | listen_skt = INVALID_SOCKET; |
2636 | 2760 | } |
@@ -2690,7 +2814,7 @@ SOCKET GetFTPListenSocketIPv6(SOCKET ctrl_skt, int *CancelCheckWork) | ||
2690 | 2814 | } |
2691 | 2815 | |
2692 | 2816 | if(listen_skt == INVALID_SOCKET) |
2693 | - SetTaskMsg(MSGJPN030); | |
2817 | + SetTaskMsg(MSGJPN030, MSGJPN334); | |
2694 | 2818 | } |
2695 | 2819 | } |
2696 | 2820 | else |
@@ -2707,7 +2831,7 @@ SOCKET GetFTPListenSocketIPv6(SOCKET ctrl_skt, int *CancelCheckWork) | ||
2707 | 2831 | AddressToStringIPv6(Adrs, a), |
2708 | 2832 | (UC(p[0]) << 8) | UC(p[1])) / 100) != FTP_COMPLETE) |
2709 | 2833 | { |
2710 | - SetTaskMsg(MSGJPN031); | |
2834 | + SetTaskMsg(MSGJPN031, MSGJPN334); | |
2711 | 2835 | do_closesocket(listen_skt); |
2712 | 2836 | listen_skt = INVALID_SOCKET; |
2713 | 2837 | } |
@@ -62,6 +62,13 @@ Changes in Ver.1.98e | ||
62 | 62 | |
63 | 63 | -- Fixed bugs of hanging on exit in some cases. |
64 | 64 | |
65 | +-- Fixed bugs of hanging at accessing non-existent directories without full | |
66 | + path. | |
67 | + | |
68 | +-- Changed behavior of Auto of network type selection. | |
69 | + Name resolution and connection will be performed at same time on IPv4 and | |
70 | + IPv6, and whichever finished earlier will be used. | |
71 | + | |
65 | 72 | |
66 | 73 | Outline |
67 | 74 | ------- |
@@ -34,6 +34,13 @@ Changes in Ver.1.98e | ||
34 | 34 | |
35 | 35 | -- Fixed bugs of hanging on exit in some cases. |
36 | 36 | |
37 | +-- Fixed bugs of hanging at accessing non-existent directories without full | |
38 | + path. | |
39 | + | |
40 | +-- Changed behavior of Auto of network type selection. | |
41 | + Name resolution and connection will be performed at same time on IPv4 and | |
42 | + IPv6, and whichever finished earlier will be used. | |
43 | + | |
37 | 44 | Changes in Ver.1.98d |
38 | 45 | -------------------- |
39 | 46 |
@@ -66,6 +66,13 @@ Ver 1.98e | ||
66 | 66 | |
67 | 67 | EI¹Ét[Y·é±Æª éoOðC³µÜµ½B |
68 | 68 | |
69 | +EtpXÅANZXµÈ¢ÝèŶݵȢfBNgÉANZX·éÆ | |
70 | +@t[Y·éoOðC³µÜµ½B | |
71 | + | |
72 | +Elbg[NÌíÞð©®ÉÝèµÄ¢éêÌ®ðÏXµÜµ½B | |
73 | +@IPv4ÆIPv6̼ûżOðÆÚ±ð¯És¢AæÉÚ±ª®¹µ½ûð | |
74 | +@gpµÜ·B | |
75 | + | |
69 | 76 | |
70 | 77 | Ver 1.96dÈOÖß·ê |
71 | 78 | ----------------------- |
@@ -38,6 +38,13 @@ FFFTP | ||
38 | 38 | |
39 | 39 | EI¹Ét[Y·é±Æª éoOðC³µÜµ½B |
40 | 40 | |
41 | +EtpXÅANZXµÈ¢ÝèŶݵȢfBNgÉANZX·éÆ | |
42 | +@t[Y·éoOðC³µÜµ½B | |
43 | + | |
44 | +Elbg[NÌíÞð©®ÉÝèµÄ¢éêÌ®ðÏXµÜµ½B | |
45 | +@IPv4ÆIPv6̼ûżOðÆÚ±ð¯És¢AæÉÚ±ª®¹µ½ûð | |
46 | +@gpµÜ·B | |
47 | + | |
41 | 48 | ¡Ver 1.98d |
42 | 49 | |
43 | 50 | EMLSDR}hÉε½zXgÅÍMLSDR}hðp¢Ät@Cêð |
@@ -798,7 +798,7 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA | ||
798 | 798 | if(hWnd == hWndListRemote) |
799 | 799 | { |
800 | 800 | if(AskConnecting() == YES) |
801 | - UpLoadDragProc(wParam); | |
801 | + UploadDragProc(wParam); | |
802 | 802 | } |
803 | 803 | else if(hWnd == hWndListLocal) |
804 | 804 | { |
@@ -1443,7 +1443,7 @@ void GetLocalDirForWnd(void) | ||
1443 | 1443 | if(DispDrives) |
1444 | 1444 | { |
1445 | 1445 | GetLogicalDriveStrings(FMAX_PATH, Scan); |
1446 | - NoDrives = LoadHideDriveListRegistory(); | |
1446 | + NoDrives = LoadHideDriveListRegistry(); | |
1447 | 1447 | |
1448 | 1448 | Pos = Scan; |
1449 | 1449 | while(*Pos != NUL) |
@@ -71,7 +71,7 @@ static INT_PTR CALLBACK MirrorNotifyCallBack(HWND hDlg, UINT iMessage, WPARAM wP | ||
71 | 71 | static INT_PTR CALLBACK MirrorDispListCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam); |
72 | 72 | static void CountMirrorFiles(HWND hDlg, TRANSPACKET *Pkt); |
73 | 73 | static int AskMirrorNoTrn(char *Fname, int Mode); |
74 | -static int AskUpLoadFileAttr(char *Fname); | |
74 | +static int AskUploadFileAttr(char *Fname); | |
75 | 75 | // 64ビット対応 |
76 | 76 | //static BOOL CALLBACK UpDownAsDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam); |
77 | 77 | static INT_PTR CALLBACK UpDownAsDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam); |
@@ -140,14 +140,13 @@ static double FileSize; /* ファイル総容量 */ | ||
140 | 140 | |
141 | 141 | // ディレクトリ自動作成 |
142 | 142 | // ローカル側のパスから必要なフォルダを作成 |
143 | -int MakeDirFromLocalPath(char* LocalFile) | |
143 | +int MakeDirFromLocalPath(char* LocalFile, char* Old) | |
144 | 144 | { |
145 | 145 | TRANSPACKET Pkt; |
146 | 146 | char* pDelimiter; |
147 | 147 | char* pNext; |
148 | 148 | char* Cat; |
149 | 149 | int Len; |
150 | - char Tmp[FMAX_PATH+1]; | |
151 | 150 | int Make; |
152 | 151 | pDelimiter = LocalFile; |
153 | 152 | Make = NO; |
@@ -156,9 +155,7 @@ int MakeDirFromLocalPath(char* LocalFile) | ||
156 | 155 | Len = pNext - LocalFile; |
157 | 156 | strncpy(Pkt.LocalFile, LocalFile, Len); |
158 | 157 | Pkt.LocalFile[Len] = '\0'; |
159 | - AskLocalCurDir(Tmp, FMAX_PATH); | |
160 | - SetYenTail(Tmp); | |
161 | - if(strncmp(LocalFile, Tmp, Len + 1) != 0) | |
158 | + if(strncmp(LocalFile, Old, Len + 1) != 0) | |
162 | 159 | { |
163 | 160 | Cat = Pkt.LocalFile + (pDelimiter - LocalFile); |
164 | 161 | if(FnameCnv == FNAME_LOWER) |
@@ -178,11 +175,13 @@ int MakeDirFromLocalPath(char* LocalFile) | ||
178 | 175 | return Make; |
179 | 176 | } |
180 | 177 | |
181 | -void DownLoadProc(int ChName, int ForceFile, int All) | |
178 | +void DownloadProc(int ChName, int ForceFile, int All) | |
182 | 179 | { |
183 | 180 | FILELIST *FileListBase; |
184 | 181 | FILELIST *Pos; |
185 | 182 | TRANSPACKET Pkt; |
183 | + // ディレクトリ自動作成 | |
184 | + char Tmp[FMAX_PATH+1]; | |
186 | 185 | |
187 | 186 | // 同時接続対応 |
188 | 187 | CancelFlg = NO; |
@@ -286,6 +285,8 @@ void DownLoadProc(int ChName, int ForceFile, int All) | ||
286 | 285 | Pkt.KanjiCodeDesired = AskLocalKanjiCode(); |
287 | 286 | Pkt.KanaCnv = AskHostKanaCnv(); |
288 | 287 | |
288 | + // ディレクトリ自動作成 | |
289 | + strcpy(Tmp, Pkt.LocalFile); | |
289 | 290 | Pkt.Mode = CheckLocalFile(&Pkt); /* Pkt.ExistSize がセットされる */ |
290 | 291 | if(Pkt.Mode == EXIST_ABORT) |
291 | 292 | break; |
@@ -294,7 +295,7 @@ void DownLoadProc(int ChName, int ForceFile, int All) | ||
294 | 295 | // AddTransFileList(&Pkt); |
295 | 296 | { |
296 | 297 | if(MakeAllDir == YES) |
297 | - MakeDirFromLocalPath(Pkt.LocalFile); | |
298 | + MakeDirFromLocalPath(Pkt.LocalFile, Tmp); | |
298 | 299 | AddTransFileList(&Pkt); |
299 | 300 | } |
300 | 301 | } |
@@ -331,7 +332,7 @@ void DownLoadProc(int ChName, int ForceFile, int All) | ||
331 | 332 | * なし |
332 | 333 | *----------------------------------------------------------------------------*/ |
333 | 334 | |
334 | -void DirectDownLoadProc(char *Fname) | |
335 | +void DirectDownloadProc(char *Fname) | |
335 | 336 | { |
336 | 337 | TRANSPACKET Pkt; |
337 | 338 |
@@ -434,7 +435,7 @@ void DirectDownLoadProc(char *Fname) | ||
434 | 435 | * なし |
435 | 436 | *----------------------------------------------------------------------------*/ |
436 | 437 | |
437 | -void InputDownLoadProc(void) | |
438 | +void InputDownloadProc(void) | |
438 | 439 | { |
439 | 440 | char Path[FMAX_PATH+1]; |
440 | 441 | int Tmp; |
@@ -444,7 +445,7 @@ void InputDownLoadProc(void) | ||
444 | 445 | strcpy(Path, ""); |
445 | 446 | if(InputDialogBox(downname_dlg, GetMainHwnd(), NULL, Path, FMAX_PATH, &Tmp, IDH_HELP_TOPIC_0000001) == YES) |
446 | 447 | { |
447 | - DirectDownLoadProc(Path); | |
448 | + DirectDownloadProc(Path); | |
448 | 449 | } |
449 | 450 | |
450 | 451 | // EnableUserOpe(); |
@@ -940,7 +941,7 @@ static INT_PTR CALLBACK DownExistDialogCallBack(HWND hDlg, UINT iMessage, WPARAM | ||
940 | 941 | |
941 | 942 | // ディレクトリ自動作成 |
942 | 943 | // リモート側のパスから必要なディレクトリを作成 |
943 | -int MakeDirFromRemotePath(char* RemoteFile, int FirstAdd) | |
944 | +int MakeDirFromRemotePath(char* RemoteFile, char* Old, int FirstAdd) | |
944 | 945 | { |
945 | 946 | TRANSPACKET Pkt; |
946 | 947 | TRANSPACKET Pkt1; |
@@ -948,7 +949,6 @@ int MakeDirFromRemotePath(char* RemoteFile, int FirstAdd) | ||
948 | 949 | char* pNext; |
949 | 950 | char* Cat; |
950 | 951 | int Len; |
951 | - char Tmp[FMAX_PATH+1]; | |
952 | 952 | int Make; |
953 | 953 | pDelimiter = RemoteFile; |
954 | 954 | Make = NO; |
@@ -957,9 +957,7 @@ int MakeDirFromRemotePath(char* RemoteFile, int FirstAdd) | ||
957 | 957 | Len = pNext - RemoteFile; |
958 | 958 | strncpy(Pkt.RemoteFile, RemoteFile, Len); |
959 | 959 | Pkt.RemoteFile[Len] = '\0'; |
960 | - AskRemoteCurDir(Tmp, FMAX_PATH); | |
961 | - SetSlashTail(Tmp); | |
962 | - if(strncmp(RemoteFile, Tmp, Len + 1) != 0) | |
960 | + if(strncmp(RemoteFile, Old, Len + 1) != 0) | |
963 | 961 | { |
964 | 962 | Cat = Pkt.RemoteFile + (pDelimiter - RemoteFile); |
965 | 963 | if(FnameCnv == FNAME_LOWER) |
@@ -1004,7 +1002,7 @@ int MakeDirFromRemotePath(char* RemoteFile, int FirstAdd) | ||
1004 | 1002 | return Make; |
1005 | 1003 | } |
1006 | 1004 | |
1007 | -void UpLoadListProc(int ChName, int All) | |
1005 | +void UploadListProc(int ChName, int All) | |
1008 | 1006 | { |
1009 | 1007 | FILELIST *FileListBase; |
1010 | 1008 | FILELIST *Pos; |
@@ -1143,7 +1141,7 @@ void UpLoadListProc(int ChName, int All) | ||
1143 | 1141 | Pkt.Type = AskTransferTypeAssoc(Pkt.LocalFile, AskTransferType()); |
1144 | 1142 | Pkt.Size = 0; |
1145 | 1143 | Pkt.Time = Pos->Time; |
1146 | - Pkt.Attr = AskUpLoadFileAttr(Pkt.RemoteFile); | |
1144 | + Pkt.Attr = AskUploadFileAttr(Pkt.RemoteFile); | |
1147 | 1145 | Pkt.KanjiCode = AskHostKanjiCode(); |
1148 | 1146 | // UTF-8対応 |
1149 | 1147 | Pkt.KanjiCodeDesired = AskLocalKanjiCode(); |
@@ -1153,6 +1151,8 @@ void UpLoadListProc(int ChName, int All) | ||
1153 | 1151 | CalcExtentSize(&Pkt, Pos->Size); |
1154 | 1152 | } |
1155 | 1153 | #endif |
1154 | + // ディレクトリ自動作成 | |
1155 | + strcpy(Tmp, Pkt.RemoteFile); | |
1156 | 1156 | Pkt.Mode = CheckRemoteFile(&Pkt, RemoteList); |
1157 | 1157 | if(Pkt.Mode == EXIST_ABORT) |
1158 | 1158 | break; |
@@ -1161,7 +1161,7 @@ void UpLoadListProc(int ChName, int All) | ||
1161 | 1161 | // ディレクトリ自動作成 |
1162 | 1162 | if(MakeAllDir == YES) |
1163 | 1163 | { |
1164 | - if(MakeDirFromRemotePath(Pkt.RemoteFile, FirstAdd) == YES) | |
1164 | + if(MakeDirFromRemotePath(Pkt.RemoteFile, Tmp, FirstAdd) == YES) | |
1165 | 1165 | FirstAdd = NO; |
1166 | 1166 | } |
1167 | 1167 | if((FirstAdd == YES) && (AskNoFullPathMode() == YES)) |
@@ -1210,7 +1210,7 @@ void UpLoadListProc(int ChName, int All) | ||
1210 | 1210 | * なし |
1211 | 1211 | *----------------------------------------------------------------------------*/ |
1212 | 1212 | |
1213 | -void UpLoadDragProc(WPARAM wParam) | |
1213 | +void UploadDragProc(WPARAM wParam) | |
1214 | 1214 | { |
1215 | 1215 | FILELIST *FileListBase; |
1216 | 1216 | FILELIST *Pos; |
@@ -1316,7 +1316,7 @@ void UpLoadDragProc(WPARAM wParam) | ||
1316 | 1316 | Pkt.Type = AskTransferTypeAssoc(Pkt.LocalFile, AskTransferType()); |
1317 | 1317 | Pkt.Size = 0; |
1318 | 1318 | Pkt.Time = Pos->Time; |
1319 | - Pkt.Attr = AskUpLoadFileAttr(Pkt.RemoteFile); | |
1319 | + Pkt.Attr = AskUploadFileAttr(Pkt.RemoteFile); | |
1320 | 1320 | Pkt.KanjiCode = AskHostKanjiCode(); |
1321 | 1321 | // UTF-8対応 |
1322 | 1322 | Pkt.KanjiCodeDesired = AskLocalKanjiCode(); |
@@ -1327,6 +1327,8 @@ void UpLoadDragProc(WPARAM wParam) | ||
1327 | 1327 | CalcExtentSize(&Pkt, Pos->Size); |
1328 | 1328 | } |
1329 | 1329 | #endif |
1330 | + // ディレクトリ自動作成 | |
1331 | + strcpy(Tmp, Pkt.RemoteFile); | |
1330 | 1332 | Pkt.Mode = CheckRemoteFile(&Pkt, RemoteList); |
1331 | 1333 | if(Pkt.Mode == EXIST_ABORT) |
1332 | 1334 | break; |
@@ -1335,7 +1337,7 @@ void UpLoadDragProc(WPARAM wParam) | ||
1335 | 1337 | // ディレクトリ自動作成 |
1336 | 1338 | if(MakeAllDir == YES) |
1337 | 1339 | { |
1338 | - if(MakeDirFromRemotePath(Pkt.RemoteFile, FirstAdd) == YES) | |
1340 | + if(MakeDirFromRemotePath(Pkt.RemoteFile, Tmp, FirstAdd) == YES) | |
1339 | 1341 | FirstAdd = NO; |
1340 | 1342 | } |
1341 | 1343 | if((FirstAdd == YES) && (AskNoFullPathMode() == YES)) |
@@ -1600,7 +1602,7 @@ void MirrorUploadProc(int Notify) | ||
1600 | 1602 | Pkt.Type = AskTransferTypeAssoc(Pkt.LocalFile, AskTransferType()); |
1601 | 1603 | Pkt.Size = 0; |
1602 | 1604 | Pkt.Time = LocalPos->Time; |
1603 | - Pkt.Attr = AskUpLoadFileAttr(Pkt.RemoteFile); | |
1605 | + Pkt.Attr = AskUploadFileAttr(Pkt.RemoteFile); | |
1604 | 1606 | Pkt.KanjiCode = AskHostKanjiCode(); |
1605 | 1607 | // UTF-8対応 |
1606 | 1608 | Pkt.KanjiCodeDesired = AskLocalKanjiCode(); |
@@ -1973,7 +1975,7 @@ static int AskMirrorNoTrn(char *Fname, int Mode) | ||
1973 | 1975 | * int 属性 (-1=設定なし) |
1974 | 1976 | *----------------------------------------------------------------------------*/ |
1975 | 1977 | |
1976 | -static int AskUpLoadFileAttr(char *Fname) | |
1978 | +static int AskUploadFileAttr(char *Fname) | |
1977 | 1979 | { |
1978 | 1980 | int Ret; |
1979 | 1981 | int Sts; |
@@ -84,9 +84,9 @@ static void DispTransPacket(TRANSPACKET *Pkt); | ||
84 | 84 | static void EraseTransFileList(void); |
85 | 85 | static ULONG WINAPI TransferThread(void *Dummy); |
86 | 86 | static int MakeNonFullPath(TRANSPACKET *Pkt, char *CurDir, char *Tmp); |
87 | -static int DownLoadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork); | |
88 | -static int DownLoadPassive(TRANSPACKET *Pkt, int *CancelCheckWork); | |
89 | -static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *CancelCheckWork); | |
87 | +static int DownloadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork); | |
88 | +static int DownloadPassive(TRANSPACKET *Pkt, int *CancelCheckWork); | |
89 | +static int DownloadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *CancelCheckWork); | |
90 | 90 | static void DispDownloadFinishMsg(TRANSPACKET *Pkt, int iRetCode); |
91 | 91 | // 再転送対応 |
92 | 92 | //static int DispUpDownErrDialog(int ResID, HWND hWnd, char *Fname); |
@@ -98,10 +98,10 @@ static int SetDownloadResume(TRANSPACKET *Pkt, int ProcMode, LONGLONG Size, int | ||
98 | 98 | // 64ビット対応 |
99 | 99 | //static BOOL CALLBACK NoResumeWndProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam); |
100 | 100 | static INT_PTR CALLBACK NoResumeWndProc(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam); |
101 | -static int DoUpLoad(SOCKET cSkt, TRANSPACKET *Pkt); | |
102 | -static int UpLoadNonPassive(TRANSPACKET *Pkt); | |
103 | -static int UpLoadPassive(TRANSPACKET *Pkt); | |
104 | -static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt); | |
101 | +static int DoUpload(SOCKET cSkt, TRANSPACKET *Pkt); | |
102 | +static int UploadNonPassive(TRANSPACKET *Pkt); | |
103 | +static int UploadPassive(TRANSPACKET *Pkt); | |
104 | +static int UploadFile(TRANSPACKET *Pkt, SOCKET dSkt); | |
105 | 105 | // 同時接続対応 |
106 | 106 | //static int TermCodeConvAndSend(TERMCODECONVINFO *tInfo, SOCKET Skt, char *Data, int Size, int Ascii); |
107 | 107 | static int TermCodeConvAndSend(TERMCODECONVINFO *tInfo, SOCKET Skt, char *Data, int Size, int Ascii, int *CancelCheckWork); |
@@ -182,6 +182,8 @@ extern int MirUpDelNotify; | ||
182 | 182 | extern int MirDownDelNotify; |
183 | 183 | extern int FolderAttr; |
184 | 184 | extern int FolderAttrNum; |
185 | +// 同時接続対応 | |
186 | +extern int SendQuit; | |
185 | 187 | |
186 | 188 | |
187 | 189 | /*----- ファイル転送スレッドを起動する ---------------------------------------- |
@@ -791,7 +793,7 @@ static ULONG WINAPI TransferThread(void *Dummy) | ||
791 | 793 | if(timeGetTime() - LastUsed > 60000 || NewCmdSkt == INVALID_SOCKET) |
792 | 794 | { |
793 | 795 | ReleaseMutex(hListAccMutex); |
794 | - SendData(TrnSkt, "QUIT\r\n", 6, 0, &Canceled[ThreadCount]); | |
796 | + DoQUIT(TrnSkt, &Canceled[ThreadCount]); | |
795 | 797 | DoClose(TrnSkt); |
796 | 798 | TrnSkt = INVALID_SOCKET; |
797 | 799 | // WaitForSingleObject(hListAccMutex, INFINITE); |
@@ -882,11 +884,11 @@ static ULONG WINAPI TransferThread(void *Dummy) | ||
882 | 884 | } |
883 | 885 | |
884 | 886 | Down = YES; |
885 | -// if(DoDownLoad(AskTrnCtrlSkt(), TransPacketBase, NO) == 429) | |
887 | +// if(DoDownload(AskTrnCtrlSkt(), TransPacketBase, NO) == 429) | |
886 | 888 | // { |
887 | 889 | // if(ReConnectTrnSkt() == FFFTP_SUCCESS) |
888 | -// DoDownLoad(AskTrnCtrlSkt(), TransPacketBase, NO, &Canceled); | |
889 | - DoDownLoad(TrnSkt, Pos, NO, &Canceled[Pos->ThreadCount]); | |
890 | +// DoDownload(AskTrnCtrlSkt(), TransPacketBase, NO, &Canceled); | |
891 | + DoDownload(TrnSkt, Pos, NO, &Canceled[Pos->ThreadCount]); | |
890 | 892 | // } |
891 | 893 | } |
892 | 894 | } |
@@ -904,11 +906,11 @@ static ULONG WINAPI TransferThread(void *Dummy) | ||
904 | 906 | if(MakeNonFullPath(Pos, CurDir[Pos->ThreadCount], Tmp) == FFFTP_SUCCESS) |
905 | 907 | { |
906 | 908 | Up = YES; |
907 | -// if(DoUpLoad(AskTrnCtrlSkt(), TransPacketBase) == 429) | |
909 | +// if(DoUpload(AskTrnCtrlSkt(), TransPacketBase) == 429) | |
908 | 910 | // { |
909 | 911 | // if(ReConnectTrnSkt() == FFFTP_SUCCESS) |
910 | -// DoUpLoad(AskTrnCtrlSkt(), TransPacketBase); | |
911 | - DoUpLoad(TrnSkt, Pos); | |
912 | +// DoUpload(AskTrnCtrlSkt(), TransPacketBase); | |
913 | + DoUpload(TrnSkt, Pos); | |
912 | 914 | // } |
913 | 915 | } |
914 | 916 | // 一部TYPE、STOR(RETR)、PORT(PASV)を並列に処理できないホストがあるため |
@@ -1132,9 +1134,11 @@ static ULONG WINAPI TransferThread(void *Dummy) | ||
1132 | 1134 | { |
1133 | 1135 | for(i = 0; i < MAX_DATA_CONNECTION; i++) |
1134 | 1136 | Canceled[i] = YES; |
1137 | + if(Pos != NULL) | |
1138 | + strcpy(Pos->Cmd, ""); | |
1139 | + Pos = NULL; | |
1135 | 1140 | EraseTransFileList(); |
1136 | 1141 | GoExit = YES; |
1137 | - Pos = NULL; | |
1138 | 1142 | } |
1139 | 1143 | else |
1140 | 1144 | { |
@@ -1297,7 +1301,7 @@ static int MakeNonFullPath(TRANSPACKET *Pkt, char *Cur, char *Tmp) | ||
1297 | 1301 | * からも呼ばれる。メインのスレッドから呼ばれる時は Pkt->hWndTrans == NULL。 |
1298 | 1302 | *----------------------------------------------------------------------------*/ |
1299 | 1303 | |
1300 | -int DoDownLoad(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork) | |
1304 | +int DoDownload(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork) | |
1301 | 1305 | { |
1302 | 1306 | int iRetCode; |
1303 | 1307 | char Reply[ERR_MSG_LEN+7]; |
@@ -1339,9 +1343,9 @@ int DoDownLoad(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork) | ||
1339 | 1343 | else if(BackgrndMessageProc() == NO) |
1340 | 1344 | { |
1341 | 1345 | if(AskPasvMode() != YES) |
1342 | - iRetCode = DownLoadNonPassive(Pkt, CancelCheckWork); | |
1346 | + iRetCode = DownloadNonPassive(Pkt, CancelCheckWork); | |
1343 | 1347 | else |
1344 | - iRetCode = DownLoadPassive(Pkt, CancelCheckWork); | |
1348 | + iRetCode = DownloadPassive(Pkt, CancelCheckWork); | |
1345 | 1349 | } |
1346 | 1350 | else |
1347 | 1351 | iRetCode = 500; |
@@ -1370,7 +1374,7 @@ int DoDownLoad(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork) | ||
1370 | 1374 | * int 応答コード |
1371 | 1375 | *----------------------------------------------------------------------------*/ |
1372 | 1376 | |
1373 | -static int DownLoadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork) | |
1377 | +static int DownloadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork) | |
1374 | 1378 | { |
1375 | 1379 | int iRetCode; |
1376 | 1380 | int iLength; |
@@ -1444,16 +1448,16 @@ static int DownLoadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork) | ||
1444 | 1448 | // 一部TYPE、STOR(RETR)、PORT(PASV)を並列に処理できないホストがあるため |
1445 | 1449 | ReleaseMutex(hListAccMutex); |
1446 | 1450 | // FTPS対応 |
1447 | -// iRetCode = DownLoadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1451 | +// iRetCode = DownloadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1448 | 1452 | if(IsSSLAttached(Pkt->ctrl_skt)) |
1449 | 1453 | { |
1450 | 1454 | if(AttachSSL(data_socket, Pkt->ctrl_skt, CancelCheckWork)) |
1451 | - iRetCode = DownLoadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1455 | + iRetCode = DownloadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1452 | 1456 | else |
1453 | 1457 | iRetCode = 500; |
1454 | 1458 | } |
1455 | 1459 | else |
1456 | - iRetCode = DownLoadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1460 | + iRetCode = DownloadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1457 | 1461 | // data_socket = DoClose(data_socket); |
1458 | 1462 | } |
1459 | 1463 | } |
@@ -1489,7 +1493,7 @@ static int DownLoadNonPassive(TRANSPACKET *Pkt, int *CancelCheckWork) | ||
1489 | 1493 | * int 応答コード |
1490 | 1494 | *----------------------------------------------------------------------------*/ |
1491 | 1495 | |
1492 | -static int DownLoadPassive(TRANSPACKET *Pkt, int *CancelCheckWork) | |
1496 | +static int DownloadPassive(TRANSPACKET *Pkt, int *CancelCheckWork) | |
1493 | 1497 | { |
1494 | 1498 | int iRetCode; |
1495 | 1499 | SOCKET data_socket = INVALID_SOCKET; // data channel socket |
@@ -1537,16 +1541,16 @@ static int DownLoadPassive(TRANSPACKET *Pkt, int *CancelCheckWork) | ||
1537 | 1541 | // 一部TYPE、STOR(RETR)、PORT(PASV)を並列に処理できないホストがあるため |
1538 | 1542 | ReleaseMutex(hListAccMutex); |
1539 | 1543 | // FTPS対応 |
1540 | -// iRetCode = DownLoadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1544 | +// iRetCode = DownloadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1541 | 1545 | if(IsSSLAttached(Pkt->ctrl_skt)) |
1542 | 1546 | { |
1543 | 1547 | if(AttachSSL(data_socket, Pkt->ctrl_skt, CancelCheckWork)) |
1544 | - iRetCode = DownLoadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1548 | + iRetCode = DownloadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1545 | 1549 | else |
1546 | 1550 | iRetCode = 500; |
1547 | 1551 | } |
1548 | 1552 | else |
1549 | - iRetCode = DownLoadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1553 | + iRetCode = DownloadFile(Pkt, data_socket, CreateMode, CancelCheckWork); | |
1550 | 1554 | // data_socket = DoClose(data_socket); |
1551 | 1555 | } |
1552 | 1556 | else |
@@ -1596,7 +1600,7 @@ static int DownLoadPassive(TRANSPACKET *Pkt, int *CancelCheckWork) | ||
1596 | 1600 | * ダイアログを出さない場合、このルーチンからDispDownloadSize()を呼ぶ |
1597 | 1601 | *----------------------------------------------------------------------------*/ |
1598 | 1602 | |
1599 | -static int DownLoadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *CancelCheckWork) | |
1603 | +static int DownloadFile(TRANSPACKET *Pkt, SOCKET dSkt, int CreateMode, int *CancelCheckWork) | |
1600 | 1604 | { |
1601 | 1605 | int iNumBytes; |
1602 | 1606 | char Buf[BUFSIZE]; |
@@ -2563,7 +2567,7 @@ static INT_PTR CALLBACK NoResumeWndProc(HWND hDlg, UINT iMessage, WPARAM wParam, | ||
2563 | 2567 | * int 応答コード |
2564 | 2568 | *----------------------------------------------------------------------------*/ |
2565 | 2569 | |
2566 | -static int DoUpLoad(SOCKET cSkt, TRANSPACKET *Pkt) | |
2570 | +static int DoUpload(SOCKET cSkt, TRANSPACKET *Pkt) | |
2567 | 2571 | { |
2568 | 2572 | int iRetCode; |
2569 | 2573 | char Reply[ERR_MSG_LEN+7]; |
@@ -2597,9 +2601,9 @@ static int DoUpLoad(SOCKET cSkt, TRANSPACKET *Pkt) | ||
2597 | 2601 | else if(BackgrndMessageProc() == NO) |
2598 | 2602 | { |
2599 | 2603 | if(AskPasvMode() != YES) |
2600 | - iRetCode = UpLoadNonPassive(Pkt); | |
2604 | + iRetCode = UploadNonPassive(Pkt); | |
2601 | 2605 | else |
2602 | - iRetCode = UpLoadPassive(Pkt); | |
2606 | + iRetCode = UploadPassive(Pkt); | |
2603 | 2607 | } |
2604 | 2608 | else |
2605 | 2609 | iRetCode = 500; |
@@ -2644,7 +2648,7 @@ static int DoUpLoad(SOCKET cSkt, TRANSPACKET *Pkt) | ||
2644 | 2648 | * int 応答コード |
2645 | 2649 | *----------------------------------------------------------------------------*/ |
2646 | 2650 | |
2647 | -static int UpLoadNonPassive(TRANSPACKET *Pkt) | |
2651 | +static int UploadNonPassive(TRANSPACKET *Pkt) | |
2648 | 2652 | { |
2649 | 2653 | int iRetCode; |
2650 | 2654 | int iLength; |
@@ -2739,16 +2743,16 @@ static int UpLoadNonPassive(TRANSPACKET *Pkt) | ||
2739 | 2743 | // 一部TYPE、STOR(RETR)、PORT(PASV)を並列に処理できないホストがあるため |
2740 | 2744 | ReleaseMutex(hListAccMutex); |
2741 | 2745 | // FTPS対応 |
2742 | -// iRetCode = UpLoadFile(Pkt, data_socket); | |
2746 | +// iRetCode = UploadFile(Pkt, data_socket); | |
2743 | 2747 | if(IsSSLAttached(Pkt->ctrl_skt)) |
2744 | 2748 | { |
2745 | 2749 | if(AttachSSL(data_socket, Pkt->ctrl_skt, &Canceled[Pkt->ThreadCount])) |
2746 | - iRetCode = UpLoadFile(Pkt, data_socket); | |
2750 | + iRetCode = UploadFile(Pkt, data_socket); | |
2747 | 2751 | else |
2748 | 2752 | iRetCode = 500; |
2749 | 2753 | } |
2750 | 2754 | else |
2751 | - iRetCode = UpLoadFile(Pkt, data_socket); | |
2755 | + iRetCode = UploadFile(Pkt, data_socket); | |
2752 | 2756 | data_socket = DoClose(data_socket); |
2753 | 2757 | } |
2754 | 2758 | } |
@@ -2781,7 +2785,7 @@ static int UpLoadNonPassive(TRANSPACKET *Pkt) | ||
2781 | 2785 | * int 応答コード |
2782 | 2786 | *----------------------------------------------------------------------------*/ |
2783 | 2787 | |
2784 | -static int UpLoadPassive(TRANSPACKET *Pkt) | |
2788 | +static int UploadPassive(TRANSPACKET *Pkt) | |
2785 | 2789 | { |
2786 | 2790 | int iRetCode; |
2787 | 2791 | SOCKET data_socket = INVALID_SOCKET; // data channel socket |
@@ -2852,16 +2856,16 @@ static int UpLoadPassive(TRANSPACKET *Pkt) | ||
2852 | 2856 | // 一部TYPE、STOR(RETR)、PORT(PASV)を並列に処理できないホストがあるため |
2853 | 2857 | ReleaseMutex(hListAccMutex); |
2854 | 2858 | // FTPS対応 |
2855 | -// iRetCode = UpLoadFile(Pkt, data_socket); | |
2859 | +// iRetCode = UploadFile(Pkt, data_socket); | |
2856 | 2860 | if(IsSSLAttached(Pkt->ctrl_skt)) |
2857 | 2861 | { |
2858 | 2862 | if(AttachSSL(data_socket, Pkt->ctrl_skt, &Canceled[Pkt->ThreadCount])) |
2859 | - iRetCode = UpLoadFile(Pkt, data_socket); | |
2863 | + iRetCode = UploadFile(Pkt, data_socket); | |
2860 | 2864 | else |
2861 | 2865 | iRetCode = 500; |
2862 | 2866 | } |
2863 | 2867 | else |
2864 | - iRetCode = UpLoadFile(Pkt, data_socket); | |
2868 | + iRetCode = UploadFile(Pkt, data_socket); | |
2865 | 2869 | |
2866 | 2870 | data_socket = DoClose(data_socket); |
2867 | 2871 | } |
@@ -2910,7 +2914,7 @@ static int UpLoadPassive(TRANSPACKET *Pkt) | ||
2910 | 2914 | * 転送ダイアログを出さないでアップロードすることはない |
2911 | 2915 | *----------------------------------------------------------------------------*/ |
2912 | 2916 | |
2913 | -static int UpLoadFile(TRANSPACKET *Pkt, SOCKET dSkt) | |
2917 | +static int UploadFile(TRANSPACKET *Pkt, SOCKET dSkt) | |
2914 | 2918 | { |
2915 | 2919 | DWORD iNumBytes; |
2916 | 2920 | HANDLE iFileHandle; |
@@ -127,7 +127,7 @@ int SelectHost(int Type) | ||
127 | 127 | |
128 | 128 | /* ホスト設定を保存 */ |
129 | 129 | SetNodeLevelAll(); |
130 | - SaveRegistory(); | |
130 | + SaveRegistry(); | |
131 | 131 | |
132 | 132 | return(Sts); |
133 | 133 | } |
@@ -234,7 +234,7 @@ BYTE SSLRootCAFileHash[20]; | ||
234 | 234 | // ファイルアイコン表示対応 |
235 | 235 | int DispFileIcon = NO; |
236 | 236 | // ディレクトリ自動作成 |
237 | -int MakeAllDir = YES; | |
237 | +int MakeAllDir = NO; | |
238 | 238 | |
239 | 239 | |
240 | 240 |
@@ -452,7 +452,7 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow) | ||
452 | 452 | /* 2010.02.01 genta マスターパスワードを入力させる |
453 | 453 | -z オプションがあるときは最初だけスキップ |
454 | 454 | -z オプションがないときは,デフォルトパスワードをまず試す |
455 | - LoadRegistory()する | |
455 | + LoadRegistry()する | |
456 | 456 | パスワードが不一致なら再入力するか尋ねる. |
457 | 457 | (破損していた場合はさせない) |
458 | 458 | */ |
@@ -497,7 +497,7 @@ static int InitApp(LPSTR lpszCmdLine, int cmdShow) | ||
497 | 497 | |
498 | 498 | if(masterpass != 0) |
499 | 499 | { |
500 | - LoadRegistory(); | |
500 | + LoadRegistry(); | |
501 | 501 | |
502 | 502 | // 暗号化通信対応 |
503 | 503 | SetSSLTimeoutCallback(TimeOut * 1000, SSLTimeoutCallback); |
@@ -1067,42 +1067,42 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA | ||
1067 | 1067 | |
1068 | 1068 | case MENU_DOWNLOAD : |
1069 | 1069 | SetCurrentDirAsDirHist(); |
1070 | - DownLoadProc(NO, NO, NO); | |
1070 | + DownloadProc(NO, NO, NO); | |
1071 | 1071 | break; |
1072 | 1072 | |
1073 | 1073 | case MENU_DOWNLOAD_AS : |
1074 | 1074 | SetCurrentDirAsDirHist(); |
1075 | - DownLoadProc(YES, NO, NO); | |
1075 | + DownloadProc(YES, NO, NO); | |
1076 | 1076 | break; |
1077 | 1077 | |
1078 | 1078 | case MENU_DOWNLOAD_AS_FILE : |
1079 | 1079 | SetCurrentDirAsDirHist(); |
1080 | - DownLoadProc(NO, YES, NO); | |
1080 | + DownloadProc(NO, YES, NO); | |
1081 | 1081 | break; |
1082 | 1082 | |
1083 | 1083 | case MENU_DOWNLOAD_ALL : |
1084 | 1084 | SetCurrentDirAsDirHist(); |
1085 | - DownLoadProc(NO, NO, YES); | |
1085 | + DownloadProc(NO, NO, YES); | |
1086 | 1086 | break; |
1087 | 1087 | |
1088 | 1088 | case MENU_DOWNLOAD_NAME : |
1089 | 1089 | SetCurrentDirAsDirHist(); |
1090 | - InputDownLoadProc(); | |
1090 | + InputDownloadProc(); | |
1091 | 1091 | break; |
1092 | 1092 | |
1093 | 1093 | case MENU_UPLOAD : |
1094 | 1094 | SetCurrentDirAsDirHist(); |
1095 | - UpLoadListProc(NO, NO); | |
1095 | + UploadListProc(NO, NO); | |
1096 | 1096 | break; |
1097 | 1097 | |
1098 | 1098 | case MENU_UPLOAD_AS : |
1099 | 1099 | SetCurrentDirAsDirHist(); |
1100 | - UpLoadListProc(YES, NO); | |
1100 | + UploadListProc(YES, NO); | |
1101 | 1101 | break; |
1102 | 1102 | |
1103 | 1103 | case MENU_UPLOAD_ALL : |
1104 | 1104 | SetCurrentDirAsDirHist(); |
1105 | - UpLoadListProc(NO, YES); | |
1105 | + UploadListProc(NO, YES); | |
1106 | 1106 | break; |
1107 | 1107 | |
1108 | 1108 | case MENU_MIRROR_UPLOAD : |
@@ -1363,7 +1363,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA | ||
1363 | 1363 | |
1364 | 1364 | case MENU_REGSAVE : |
1365 | 1365 | GetListTabWidth(); |
1366 | - SaveRegistory(); | |
1366 | + SaveRegistry(); | |
1367 | 1367 | SaveSettingsToFile(); |
1368 | 1368 | break; |
1369 | 1369 |
@@ -1379,7 +1379,7 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA | ||
1379 | 1379 | case MENU_REGINIT : |
1380 | 1380 | if(DialogBox(hInstFtp, MAKEINTRESOURCE(reginit_dlg), hWnd, ExeEscDialogProc) == YES) |
1381 | 1381 | { |
1382 | - ClearRegistory(); | |
1382 | + ClearRegistry(); | |
1383 | 1383 | SaveExit = NO; |
1384 | 1384 | PostMessage(hWnd, WM_CLOSE, 0, 0L); |
1385 | 1385 | } |
@@ -2086,7 +2086,7 @@ static void ExitProc(HWND hWnd) | ||
2086 | 2086 | if(SaveExit == YES) |
2087 | 2087 | { |
2088 | 2088 | GetListTabWidth(); |
2089 | - SaveRegistory(); | |
2089 | + SaveRegistry(); | |
2090 | 2090 | |
2091 | 2091 | if((CacheEntry > 0) && (CacheSave == YES)) |
2092 | 2092 | SaveCache(); |
@@ -2226,12 +2226,12 @@ void DoubleClickProc(int Win, int Mode, int App) | ||
2226 | 2226 | /* 不正なパスを検出 */ |
2227 | 2227 | if(CheckPathViolation(&MainTransPkt) == NO) |
2228 | 2228 | { |
2229 | -// if((Sts = DoDownLoad(AskCmdCtrlSkt(), &MainTransPkt, NO)) == 429) | |
2229 | +// if((Sts = DoDownload(AskCmdCtrlSkt(), &MainTransPkt, NO)) == 429) | |
2230 | 2230 | // { |
2231 | 2231 | // ReConnectCmdSkt(); |
2232 | 2232 | // 同時接続対応 |
2233 | 2233 | CancelFlg = NO; |
2234 | - Sts = DoDownLoad(AskCmdCtrlSkt(), &MainTransPkt, NO, &CancelFlg); | |
2234 | + Sts = DoDownload(AskCmdCtrlSkt(), &MainTransPkt, NO, &CancelFlg); | |
2235 | 2235 | // } |
2236 | 2236 | } |
2237 | 2237 |
@@ -14,22 +14,22 @@ | ||
14 | 14 | #define MSGJPN013 _Tu8("SHA-1 used.", "SHA-1 used.") |
15 | 15 | #define MSGJPN014 _Tu8("MD4(S/KEY) used.", "MD4(S/KEY) used.") |
16 | 16 | #define MSGJPN015 _Tu8("Can't process One-time Password.", "Can't process One-time Password.") |
17 | -#define MSGJPN016 _Tu8("Searching host %s.", "Searching host %s.") | |
18 | -#define MSGJPN017 _Tu8("Connecting %sto host %s (%s (%d)).", "Connecting %sto host %s (%s (%d)).") | |
19 | -#define MSGJPN018 _Tu8("Connecting %sto host %s (%d).", "Connecting %sto host %s (%d).") | |
20 | -#define MSGJPN019 _Tu8("Host %s not found.", "Host %s not found.") | |
21 | -#define MSGJPN020 _Tu8("Connecting %sto host %s (%d).", "Connecting %sto host %s (%d).") | |
22 | -#define MSGJPN021 _Tu8("SOCKS server %s not found.", "SOCKS server %s not found.") | |
23 | -#define MSGJPN022 _Tu8("Connecting to SOCKS server %s (%d).", "Connecting to SOCKS server %s (%d).") | |
24 | -#define MSGJPN023 _Tu8("Can't connect to SOCKS server. (Err=%d)", "Can't connect to SOCKS server. (Err=%d)") | |
25 | -#define MSGJPN024 _Tu8("Can't connect to SOCKS server. (Err=%d)", "Can't connect to SOCKS server. (Err=%d)") | |
26 | -#define MSGJPN025 _Tu8("Connected.", "Connected.") | |
27 | -#define MSGJPN026 _Tu8("Can't connected.", "Can't connected.") | |
28 | -#define MSGJPN027 _Tu8("Can't create socket.", "Can't create socket.") | |
29 | -#define MSGJPN028 _Tu8("Can't connect to SOCKS server. (Err=%d)", "Can't connect to SOCKS server. (Err=%d)") | |
30 | -#define MSGJPN029 _Tu8("Can't connect to SOCKS server. (Err=%d)", "Can't connect to SOCKS server. (Err=%d)") | |
31 | -#define MSGJPN030 _Tu8("Can't create listen socket.", "Can't create listen socket.") | |
32 | -#define MSGJPN031 _Tu8("PORT command not accepted", "PORT command not accepted") | |
17 | +#define MSGJPN016 _Tu8("Searching host %s. (%s)", "Searching host %s. (%s)") | |
18 | +#define MSGJPN017 _Tu8("Connecting %sto host %s (%s (%d)). (%s)", "Connecting %sto host %s (%s (%d)). (%s)") | |
19 | +#define MSGJPN018 _Tu8("Connecting %sto host %s (%d). (%s)", "Connecting %sto host %s (%d). (%s)") | |
20 | +#define MSGJPN019 _Tu8("Host %s not found. (%s)", "Host %s not found. (%s)") | |
21 | +#define MSGJPN020 _Tu8("Connecting %sto host %s (%d). (%s)", "Connecting %sto host %s (%d). (%s)") | |
22 | +#define MSGJPN021 _Tu8("SOCKS server %s not found. (%s)", "SOCKS server %s not found. (%s)") | |
23 | +#define MSGJPN022 _Tu8("Connecting to SOCKS server %s (%d). (%s)", "Connecting to SOCKS server %s (%d). (%s)") | |
24 | +#define MSGJPN023 _Tu8("Can't connect to SOCKS server. (Err=%d) (%s)", "Can't connect to SOCKS server. (Err=%d) (%s)") | |
25 | +#define MSGJPN024 _Tu8("Can't connect to SOCKS server. (Err=%d) (%s)", "Can't connect to SOCKS server. (Err=%d) (%s)") | |
26 | +#define MSGJPN025 _Tu8("Connected. (%s)", "Connected. (%s)") | |
27 | +#define MSGJPN026 _Tu8("Can't connected. (%s)", "Can't connected. (%s)") | |
28 | +#define MSGJPN027 _Tu8("Can't create socket. (%s)", "Can't create socket. (%s)") | |
29 | +#define MSGJPN028 _Tu8("Can't connect to SOCKS server. (Err=%d) (%s)", "Can't connect to SOCKS server. (Err=%d) (%s)") | |
30 | +#define MSGJPN029 _Tu8("Can't connect to SOCKS server. (Err=%d) (%s)", "Can't connect to SOCKS server. (Err=%d) (%s)") | |
31 | +#define MSGJPN030 _Tu8("Can't create listen socket. (%s)", "Can't create listen socket. (%s)") | |
32 | +#define MSGJPN031 _Tu8("PORT command not accepted. (%s)", "PORT command not accepted. (%s)") | |
33 | 33 | #define MSGJPN032 _Tu8("Connection is cancelled by user.", "Connection is cancelled by user.") |
34 | 34 | #define MSGJPN033 _Tu8("Can't send SOCKS command. (Cmd = %04X)", "Can't send SOCKS command. (Cmd = %04X)") |
35 | 35 | #define MSGJPN034 _Tu8("Can't receive SOCKS5 reply.", "Can't receive SOCKS5 reply.") |
@@ -14,22 +14,22 @@ | ||
14 | 14 | #define MSGJPN013 _Tu8("SHA-1を使用します.", "SHA-1\xE3\x82\x92\xE4\xBD\xBF\xE7\x94\xA8\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x99.") |
15 | 15 | #define MSGJPN014 _Tu8("MD4(S/KEY)を使用します.", "MD4(S/KEY)\xE3\x82\x92\xE4\xBD\xBF\xE7\x94\xA8\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x99.") |
16 | 16 | #define MSGJPN015 _Tu8("ワンタイムパスワードが処理できません", "\xE3\x83\xAF\xE3\x83\xB3\xE3\x82\xBF\xE3\x82\xA4\xE3\x83\xA0\xE3\x83\x91\xE3\x82\xB9\xE3\x83\xAF\xE3\x83\xBC\xE3\x83\x89\xE3\x81\x8C\xE5\x87\xA6\xE7\x90\x86\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93") |
17 | -#define MSGJPN016 _Tu8("ホスト %s を探しています.", "\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s \xE3\x82\x92\xE6\x8E\xA2\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99.") | |
18 | -#define MSGJPN017 _Tu8("%sホスト %s (%s (%d)) に接続しています.", "%s\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s (%s (%d)) \xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99.") | |
19 | -#define MSGJPN018 _Tu8("%sホスト %s (%d) に接続しています.", "%s\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s (%d) \xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99.") | |
20 | -#define MSGJPN019 _Tu8("ホスト %s が見つかりません.", "\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s \xE3\x81\x8C\xE8\xA6\x8B\xE3\x81\xA4\xE3\x81\x8B\xE3\x82\x8A\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93.") | |
21 | -#define MSGJPN020 _Tu8("%sホスト %s (%d) に接続しています.", "%s\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s (%d) \xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99.") | |
22 | -#define MSGJPN021 _Tu8("SOCKSサーバー %s が見つかりません.", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC %s \xE3\x81\x8C\xE8\xA6\x8B\xE3\x81\xA4\xE3\x81\x8B\xE3\x82\x8A\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93.") | |
23 | -#define MSGJPN022 _Tu8("SOCKSサーバー %s (%d) に接続しています。", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC %s (%d) \xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99\xE3\x80\x82") | |
24 | -#define MSGJPN023 _Tu8("SOCKSサーバーに接続できません. (Err=%d)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC\xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (Err=%d)") | |
25 | -#define MSGJPN024 _Tu8("SOCKSサーバーに接続できません. (Err=%d)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC\xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (Err=%d)") | |
26 | -#define MSGJPN025 _Tu8("接続しました.", "\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F.") | |
27 | -#define MSGJPN026 _Tu8("接続できません.", "\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93.") | |
28 | -#define MSGJPN027 _Tu8("ソケットが作成できません.", "\xE3\x82\xBD\xE3\x82\xB1\xE3\x83\x83\xE3\x83\x88\xE3\x81\x8C\xE4\xBD\x9C\xE6\x88\x90\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93.") | |
29 | -#define MSGJPN028 _Tu8("SOCKSサーバーに接続できません. (Err=%d)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC\xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (Err=%d)") | |
30 | -#define MSGJPN029 _Tu8("SOCKSサーバーに接続できません. (Err=%d)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC\xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (Err=%d)") | |
31 | -#define MSGJPN030 _Tu8("Listenソケットが作成できません.", "Listen\xE3\x82\xBD\xE3\x82\xB1\xE3\x83\x83\xE3\x83\x88\xE3\x81\x8C\xE4\xBD\x9C\xE6\x88\x90\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93.") | |
32 | -#define MSGJPN031 _Tu8("PORTコマンドが受け付けられません.", "PORT\xE3\x82\xB3\xE3\x83\x9E\xE3\x83\xB3\xE3\x83\x89\xE3\x81\x8C\xE5\x8F\x97\xE3\x81\x91\xE4\xBB\x98\xE3\x81\x91\xE3\x82\x89\xE3\x82\x8C\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93.") | |
17 | +#define MSGJPN016 _Tu8("ホスト %s を探しています. (%s)", "\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s \xE3\x82\x92\xE6\x8E\xA2\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99. (%s)") | |
18 | +#define MSGJPN017 _Tu8("%sホスト %s (%s (%d)) に接続しています. (%s)", "%s\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s (%s (%d)) \xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99. (%s)") | |
19 | +#define MSGJPN018 _Tu8("%sホスト %s (%d) に接続しています. (%s)", "%s\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s (%d) \xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99. (%s)") | |
20 | +#define MSGJPN019 _Tu8("ホスト %s が見つかりません. (%s)", "\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s \xE3\x81\x8C\xE8\xA6\x8B\xE3\x81\xA4\xE3\x81\x8B\xE3\x82\x8A\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (%s)") | |
21 | +#define MSGJPN020 _Tu8("%sホスト %s (%d) に接続しています. (%s)", "%s\xE3\x83\x9B\xE3\x82\xB9\xE3\x83\x88 %s (%d) \xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99. (%s)") | |
22 | +#define MSGJPN021 _Tu8("SOCKSサーバー %s が見つかりません. (%s)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC %s \xE3\x81\x8C\xE8\xA6\x8B\xE3\x81\xA4\xE3\x81\x8B\xE3\x82\x8A\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (%s)") | |
23 | +#define MSGJPN022 _Tu8("SOCKSサーバー %s (%d) に接続しています。 (%s)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC %s (%d) \xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xA6\xE3\x81\x84\xE3\x81\xBE\xE3\x81\x99\xE3\x80\x82 (%s)") | |
24 | +#define MSGJPN023 _Tu8("SOCKSサーバーに接続できません. (Err=%d) (%s)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC\xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (Err=%d) (%s)") | |
25 | +#define MSGJPN024 _Tu8("SOCKSサーバーに接続できません. (Err=%d) (%s)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC\xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (Err=%d) (%s)") | |
26 | +#define MSGJPN025 _Tu8("接続しました. (%s)", "\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\x97\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F. (%s)") | |
27 | +#define MSGJPN026 _Tu8("接続できません. (%s)", "\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (%s)") | |
28 | +#define MSGJPN027 _Tu8("ソケットが作成できません. (%s)", "\xE3\x82\xBD\xE3\x82\xB1\xE3\x83\x83\xE3\x83\x88\xE3\x81\x8C\xE4\xBD\x9C\xE6\x88\x90\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (%s)") | |
29 | +#define MSGJPN028 _Tu8("SOCKSサーバーに接続できません. (Err=%d) (%s)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC\xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (Err=%d) (%s)") | |
30 | +#define MSGJPN029 _Tu8("SOCKSサーバーに接続できません. (Err=%d) (%s)", "SOCKS\xE3\x82\xB5\xE3\x83\xBC\xE3\x83\x90\xE3\x83\xBC\xE3\x81\xAB\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (Err=%d) (%s)") | |
31 | +#define MSGJPN030 _Tu8("Listenソケットが作成できません. (%s)", "Listen\xE3\x82\xBD\xE3\x82\xB1\xE3\x83\x83\xE3\x83\x88\xE3\x81\x8C\xE4\xBD\x9C\xE6\x88\x90\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (%s)") | |
32 | +#define MSGJPN031 _Tu8("PORTコマンドが受け付けられません. (%s)", "PORT\xE3\x82\xB3\xE3\x83\x9E\xE3\x83\xB3\xE3\x83\x89\xE3\x81\x8C\xE5\x8F\x97\xE3\x81\x91\xE4\xBB\x98\xE3\x81\x91\xE3\x82\x89\xE3\x82\x8C\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93. (%s)") | |
33 | 33 | #define MSGJPN032 _Tu8("接続はユーザーによって中止されました.", "\xE6\x8E\xA5\xE7\xB6\x9A\xE3\x81\xAF\xE3\x83\xA6\xE3\x83\xBC\xE3\x82\xB6\xE3\x83\xBC\xE3\x81\xAB\xE3\x82\x88\xE3\x81\xA3\xE3\x81\xA6\xE4\xB8\xAD\xE6\xAD\xA2\xE3\x81\x95\xE3\x82\x8C\xE3\x81\xBE\xE3\x81\x97\xE3\x81\x9F.") |
34 | 34 | #define MSGJPN033 _Tu8("SOCKSのコマンドが送れませんでした (Cmd = %04X)", "SOCKS\xE3\x81\xAE\xE3\x82\xB3\xE3\x83\x9E\xE3\x83\xB3\xE3\x83\x89\xE3\x81\x8C\xE9\x80\x81\xE3\x82\x8C\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93\xE3\x81\xA7\xE3\x81\x97\xE3\x81\x9F (Cmd = %04X)") |
35 | 35 | #define MSGJPN034 _Tu8("SOCKS5のコマンドに対するリプライが受信できませんでした", "SOCKS5\xE3\x81\xAE\xE3\x82\xB3\xE3\x83\x9E\xE3\x83\xB3\xE3\x83\x89\xE3\x81\xAB\xE5\xAF\xBE\xE3\x81\x99\xE3\x82\x8B\xE3\x83\xAA\xE3\x83\x97\xE3\x83\xA9\xE3\x82\xA4\xE3\x81\x8C\xE5\x8F\x97\xE4\xBF\xA1\xE3\x81\xA7\xE3\x81\x8D\xE3\x81\xBE\xE3\x81\x9B\xE3\x82\x93\xE3\x81\xA7\xE3\x81\x97\xE3\x81\x9F") |
@@ -1,110 +0,0 @@ | ||
1 | - | |
2 | -#include <windows.h> | |
3 | - | |
4 | -/** | |
5 | - * アドレス固定のWide文字列とそれに対応するUTF-8文字列を格納する構造体 | |
6 | - */ | |
7 | -typedef struct { | |
8 | - const wchar_t *ws; | |
9 | - char *u8s; | |
10 | - size_t u8size; | |
11 | -} StrPair; | |
12 | - | |
13 | -static BOOL g_initialized = FALSE; | |
14 | -static CRITICAL_SECTION g_msgUtilLLock; | |
15 | - | |
16 | -// Wide文字列 - UTF-8文字列 対応Map | |
17 | -static StrPair *pStrMap = NULL; | |
18 | - | |
19 | -//! 現在有効なStrPairの数 | |
20 | -static int strMapCount = 0; | |
21 | - | |
22 | -//! 確保済みのStrPairの領域数 | |
23 | -static int strMapMaxCount = 0; | |
24 | - | |
25 | -/** | |
26 | - * staticなWide文字列に対応するUTF-8バイナリ文字列領域を確保し、その先頭アドレスを返す | |
27 | - */ | |
28 | -const char* const MessageUtil_GetUTF8StaticBinaryBlock(const wchar_t* const ws, size_t ws_area_length) | |
29 | -{ | |
30 | - int i = 0; | |
31 | - int wcsCount = 0; | |
32 | - int newSize = 0; | |
33 | - const char *pResult = NULL; | |
34 | - if (!g_initialized) | |
35 | - { | |
36 | - InitializeCriticalSection(&g_msgUtilLLock); | |
37 | - g_initialized = TRUE; | |
38 | - } | |
39 | - EnterCriticalSection(&g_msgUtilLLock); | |
40 | - for (i = 0; i < strMapCount; i++) | |
41 | - { | |
42 | - if (pStrMap[i].ws == ws) | |
43 | - { | |
44 | - pResult = pStrMap[i].u8s; | |
45 | - break; | |
46 | - } | |
47 | - } | |
48 | - if (pResult == NULL) | |
49 | - { | |
50 | - if (strMapMaxCount < strMapCount + 1) | |
51 | - { | |
52 | - // 領域が足りなくなったので追加する | |
53 | - if (strMapMaxCount == 0) | |
54 | - { | |
55 | - strMapMaxCount = 100; | |
56 | - pStrMap = (StrPair*)malloc(sizeof(StrPair) * strMapMaxCount); | |
57 | - } | |
58 | - else | |
59 | - { | |
60 | - strMapMaxCount += 100; | |
61 | - pStrMap = (StrPair*)realloc(pStrMap, sizeof(StrPair) * strMapMaxCount); | |
62 | - } | |
63 | - } | |
64 | - newSize = WideCharToMultiByte(CP_UTF8, 0, ws, ws_area_length, 0, 0, NULL, NULL); | |
65 | - if (newSize > 0) | |
66 | - { | |
67 | - int index = strMapCount; | |
68 | - char *beginPos = 0; | |
69 | - int postSize = 0; | |
70 | - strMapCount++; | |
71 | - pStrMap[index].ws = ws; | |
72 | - pStrMap[index].u8size = newSize; | |
73 | - beginPos = (char*)malloc(newSize); | |
74 | - pStrMap[index].u8s = beginPos; | |
75 | - postSize = WideCharToMultiByte(CP_UTF8, 0, ws, ws_area_length, beginPos, newSize, NULL, NULL); | |
76 | - pResult = beginPos; | |
77 | - } | |
78 | - else | |
79 | - { | |
80 | - static char sEmpty[] = ""; | |
81 | - pResult = sEmpty; | |
82 | - } | |
83 | - } | |
84 | - LeaveCriticalSection(&g_msgUtilLLock); | |
85 | - return pResult; | |
86 | -} | |
87 | - | |
88 | -/** | |
89 | - * MessageUtil_GetUTF8StaticBinaryBlock() で確保した領域をすべて破棄する | |
90 | - */ | |
91 | -void MessageUtil_FreeUTF8StaticBinaryBlocks() | |
92 | -{ | |
93 | - int i = 0; | |
94 | - if (!g_initialized) | |
95 | - { | |
96 | - InitializeCriticalSection(&g_msgUtilLLock); | |
97 | - g_initialized = TRUE; | |
98 | - } | |
99 | - EnterCriticalSection(&g_msgUtilLLock); | |
100 | - for (i = 0; i < strMapCount; i++) | |
101 | - { | |
102 | - free(pStrMap[i].u8s); | |
103 | - } | |
104 | - if (pStrMap) | |
105 | - { | |
106 | - free(pStrMap); | |
107 | - pStrMap = (StrPair*)NULL; | |
108 | - } | |
109 | - LeaveCriticalSection(&g_msgUtilLLock); | |
110 | -} |
@@ -1,21 +0,0 @@ | ||
1 | - | |
2 | -// 指定した文字列の UTF-8 バイナリ文字列の先頭アドレスを取得する u8("文字列リテラル") の形で呼び出す | |
3 | -#define u8(x) MessageUtil_GetUTF8StaticBinaryBlock(L ## x, sizeof(L ## x) / sizeof(wchar_t)) | |
4 | - | |
5 | -/** | |
6 | - * UTF-8文字列バイナリを取得する。取得した文字列のアドレスはアプリケーション終了まで有効。 | |
7 | - * 失敗した場合は "" が返る。 | |
8 | - * 必ず u8マクロと組み合わせて、u8("文字列リテラル") の形で呼び出す。引数に文字列変数を渡した場合の動作は不定。 | |
9 | - * | |
10 | - * @param[in] ws 文字列 | |
11 | - * @param[in] ws_area_length 文字列の長さ。終端NULL文字を含んだ値であること。ws: "" のとき、countof_ws: 1 | |
12 | - * @return wsで表される文字列のUTF8バイナリの先頭アドレス | |
13 | - */ | |
14 | -const char* const MessageUtil_GetUTF8StaticBinaryBlock(const wchar_t* const ws, size_t ws_area_length); | |
15 | - | |
16 | -/** | |
17 | - * UTF-8文字列群の文字領域を破棄する. | |
18 | - * | |
19 | - * MessageUtil_GetUTF8StaticBinaryBlock()で確保した文字列領域をすべて開放する。アプリケーション終了時に呼び出すこと. | |
20 | - */ | |
21 | -void MessageUtil_FreeUTF8StaticBinaryBlocks(); |
@@ -168,6 +168,8 @@ extern int FolderAttr; | ||
168 | 168 | extern int FolderAttrNum; |
169 | 169 | // ファイルアイコン表示対応 |
170 | 170 | extern int DispFileIcon; |
171 | +// ディレクトリ自動作成 | |
172 | +extern int MakeAllDir; | |
171 | 173 | |
172 | 174 | |
173 | 175 | /*----- オプションのプロパティシート ------------------------------------------ |
@@ -406,6 +408,8 @@ static INT_PTR CALLBACK Trmode1SettingProc(HWND hDlg, UINT message, WPARAM wPara | ||
406 | 408 | SendDlgItemMessage(hDlg, TRMODE_TIME, BM_SETCHECK, SaveTimeStamp, 0); |
407 | 409 | SendDlgItemMessage(hDlg, TRMODE_EOF, BM_SETCHECK, RmEOF, 0); |
408 | 410 | SendDlgItemMessage(hDlg, TRMODE_SEMICOLON, BM_SETCHECK, VaxSemicolon, 0); |
411 | + // ディレクトリ自動作成 | |
412 | + SendDlgItemMessage(hDlg, TRMODE_MAKEDIR, BM_SETCHECK, MakeAllDir, 0); | |
409 | 413 | |
410 | 414 | SendMessage(hDlg, WM_COMMAND, MAKEWPARAM(TRMODE_EXT_LIST, 0), 0); |
411 | 415 |
@@ -422,6 +426,8 @@ static INT_PTR CALLBACK Trmode1SettingProc(HWND hDlg, UINT message, WPARAM wPara | ||
422 | 426 | SaveTimeStamp = SendDlgItemMessage(hDlg, TRMODE_TIME, BM_GETCHECK, 0, 0); |
423 | 427 | RmEOF = SendDlgItemMessage(hDlg, TRMODE_EOF, BM_GETCHECK, 0, 0); |
424 | 428 | VaxSemicolon = SendDlgItemMessage(hDlg, TRMODE_SEMICOLON, BM_GETCHECK, 0, 0); |
429 | + // ディレクトリ自動作成 | |
430 | + MakeAllDir = SendDlgItemMessage(hDlg, TRMODE_MAKEDIR, BM_GETCHECK, 0, 0); | |
425 | 431 | break; |
426 | 432 | |
427 | 433 | case PSN_RESET : |
@@ -195,6 +195,8 @@ extern BYTE CertificateCacheHash[MAX_CERT_CACHE_HASH][20]; | ||
195 | 195 | extern BYTE SSLRootCAFileHash[20]; |
196 | 196 | // ファイルアイコン表示対応 |
197 | 197 | extern int DispFileIcon; |
198 | +// ディレクトリ自動作成 | |
199 | +extern int MakeAllDir; | |
198 | 200 | |
199 | 201 | /*----- マスタパスワードの設定 ---------------------------------------------- |
200 | 202 | * |
@@ -293,7 +295,7 @@ int ValidateMasterPassword(void) | ||
293 | 295 | * なし |
294 | 296 | *----------------------------------------------------------------------------*/ |
295 | 297 | |
296 | -void SaveRegistory(void) | |
298 | +void SaveRegistry(void) | |
297 | 299 | { |
298 | 300 | void *hKey3; |
299 | 301 | void *hKey4; |
@@ -615,6 +617,8 @@ void SaveRegistory(void) | ||
615 | 617 | WriteStringToReg(hKey4, "RootCertHash", Str); |
616 | 618 | // ファイルアイコン表示対応 |
617 | 619 | WriteIntValueToReg(hKey4, "ListIcon", DispFileIcon); |
620 | + // ディレクトリ自動作成 | |
621 | + WriteIntValueToReg(hKey4, "MakeDir", MakeAllDir); | |
618 | 622 | } |
619 | 623 | CloseSubKey(hKey4); |
620 | 624 | } |
@@ -635,7 +639,7 @@ void SaveRegistory(void) | ||
635 | 639 | * NO: 読み出し失敗(設定無し) |
636 | 640 | *----------------------------------------------------------------------------*/ |
637 | 641 | |
638 | -int LoadRegistory(void) | |
642 | +int LoadRegistry(void) | |
639 | 643 | { |
640 | 644 | void *hKey3; |
641 | 645 | void *hKey4; |
@@ -992,6 +996,8 @@ int LoadRegistory(void) | ||
992 | 996 | StrReadIn(Buf, sizeof(SSLRootCAFileHash), (char*)&SSLRootCAFileHash); |
993 | 997 | // ファイルアイコン表示対応 |
994 | 998 | ReadIntValueFromReg(hKey4, "ListIcon", &DispFileIcon); |
999 | + // ディレクトリ自動作成 | |
1000 | + ReadIntValueFromReg(hKey4, "MakeDir", &MakeAllDir); | |
995 | 1001 | |
996 | 1002 | CloseSubKey(hKey4); |
997 | 1003 | } |
@@ -1033,7 +1039,7 @@ int LoadRegistory(void) | ||
1033 | 1039 | * YES/NO=設定無し |
1034 | 1040 | *----------------------------------------------------------------------------*/ |
1035 | 1041 | |
1036 | -DWORD LoadHideDriveListRegistory(void) | |
1042 | +DWORD LoadHideDriveListRegistry(void) | |
1037 | 1043 | { |
1038 | 1044 | HKEY hKey1; |
1039 | 1045 | HKEY hKey2; |
@@ -1085,7 +1091,7 @@ DWORD LoadHideDriveListRegistory(void) | ||
1085 | 1091 | * なし |
1086 | 1092 | *----------------------------------------------------------------------------*/ |
1087 | 1093 | |
1088 | -void ClearRegistory(void) | |
1094 | +void ClearRegistry(void) | |
1089 | 1095 | { |
1090 | 1096 | HKEY hKey2; |
1091 | 1097 | HKEY hKey3; |
@@ -1980,7 +1986,7 @@ static int CloseReg(void *Handle) | ||
1980 | 1986 | if(WriteOutRegToFile(Handle) == TRUE) |
1981 | 1987 | { |
1982 | 1988 | // /* レジストリをクリア */ |
1983 | -// ClearRegistory(); | |
1989 | +// ClearRegistry(); | |
1984 | 1990 | } |
1985 | 1991 | } |
1986 | 1992 | /* テーブルを削除 */ |
@@ -523,7 +523,9 @@ SOCKET DoClose(SOCKET Sock) | ||
523 | 523 | * int 応答コードの1桁目 |
524 | 524 | *----------------------------------------------------------------------------*/ |
525 | 525 | |
526 | -int DoQUIT(SOCKET ctrl_skt) | |
526 | +// 同時接続対応 | |
527 | +//int DoQUIT(SOCKET ctrl_skt) | |
528 | +int DoQUIT(SOCKET ctrl_skt, int *CancelCheckWork) | |
527 | 529 | { |
528 | 530 | int Ret; |
529 | 531 |
@@ -531,7 +533,7 @@ int DoQUIT(SOCKET ctrl_skt) | ||
531 | 533 | if(SendQuit == YES) |
532 | 534 | // 同時接続対応 |
533 | 535 | // Ret = command(ctrl_skt, NULL, &CheckCancelFlg, "QUIT") / 100; |
534 | - Ret = command(ctrl_skt, NULL, &CancelFlg, "QUIT") / 100; | |
536 | + Ret = command(ctrl_skt, NULL, CancelCheckWork, "QUIT") / 100; | |
535 | 537 | |
536 | 538 | return(Ret); |
537 | 539 | } |
@@ -637,7 +639,7 @@ static int DoDirList(HWND hWnd, SOCKET cSkt, char *AddOpt, char *Path, int Num, | ||
637 | 639 | MainTransPkt.hWndTrans = hWnd; |
638 | 640 | MainTransPkt.Next = NULL; |
639 | 641 | |
640 | - Sts = DoDownLoad(cSkt, &MainTransPkt, YES, CancelCheckWork); | |
642 | + Sts = DoDownload(cSkt, &MainTransPkt, YES, CancelCheckWork); | |
641 | 643 | |
642 | 644 | //#pragma aaa |
643 | 645 | //DoPrintf("===== DoDirList Done."); |
@@ -91,10 +91,10 @@ typedef struct { | ||
91 | 91 | static LRESULT CALLBACK SocketWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); |
92 | 92 | static int AskAsyncDone(SOCKET s, int *Error, int Mask); |
93 | 93 | static int AskAsyncDoneDbase(HANDLE Async, int *Error); |
94 | -static int RegistAsyncTable(SOCKET s); | |
95 | -static int RegistAsyncTableDbase(HANDLE Async); | |
96 | -static int UnRegistAsyncTable(SOCKET s); | |
97 | -static int UnRegistAsyncTableDbase(HANDLE Async); | |
94 | +static int RegisterAsyncTable(SOCKET s); | |
95 | +static int RegisterAsyncTableDbase(HANDLE Async); | |
96 | +static int UnregisterAsyncTable(SOCKET s); | |
97 | +static int UnregisterAsyncTableDbase(HANDLE Async); | |
98 | 98 | |
99 | 99 | |
100 | 100 | /*===== 外部参照 =====*/ |
@@ -275,7 +275,7 @@ static LRESULT CALLBACK SocketWndProc(HWND hWnd, UINT message, WPARAM wParam, LP | ||
275 | 275 | |
276 | 276 | case WM_ASYNC_DBASE : |
277 | 277 | // APIの仕様上ハンドルが登録される前にウィンドウメッセージが呼び出される可能性あり |
278 | - RegistAsyncTableDbase((HANDLE)wParam); | |
278 | + RegisterAsyncTableDbase((HANDLE)wParam); | |
279 | 279 | // スレッド衝突のバグ修正 |
280 | 280 | WaitForSingleObject(hAsyncTblAccMutex, INFINITE); |
281 | 281 | for(Pos = 0; Pos < MAX_SIGNAL_ENTRY_DBASE; Pos++) |
@@ -450,7 +450,7 @@ static int AskAsyncDoneDbase(HANDLE Async, int *Error) | ||
450 | 450 | * |
451 | 451 | *----------------------------------------------------------------------------*/ |
452 | 452 | |
453 | -static int RegistAsyncTable(SOCKET s) | |
453 | +static int RegisterAsyncTable(SOCKET s) | |
454 | 454 | { |
455 | 455 | int Sts; |
456 | 456 | int Pos; |
@@ -516,7 +516,7 @@ static int RegistAsyncTable(SOCKET s) | ||
516 | 516 | * |
517 | 517 | *----------------------------------------------------------------------------*/ |
518 | 518 | |
519 | -static int RegistAsyncTableDbase(HANDLE Async) | |
519 | +static int RegisterAsyncTableDbase(HANDLE Async) | |
520 | 520 | { |
521 | 521 | int Sts; |
522 | 522 | int Pos; |
@@ -578,7 +578,7 @@ static int RegistAsyncTableDbase(HANDLE Async) | ||
578 | 578 | * |
579 | 579 | *----------------------------------------------------------------------------*/ |
580 | 580 | |
581 | -static int UnRegistAsyncTable(SOCKET s) | |
581 | +static int UnregisterAsyncTable(SOCKET s) | |
582 | 582 | { |
583 | 583 | int Sts; |
584 | 584 | int Pos; |
@@ -613,7 +613,7 @@ static int UnRegistAsyncTable(SOCKET s) | ||
613 | 613 | * |
614 | 614 | *----------------------------------------------------------------------------*/ |
615 | 615 | |
616 | -static int UnRegistAsyncTableDbase(HANDLE Async) | |
616 | +static int UnregisterAsyncTableDbase(HANDLE Async) | |
617 | 617 | { |
618 | 618 | int Sts; |
619 | 619 | int Pos; |
@@ -666,7 +666,7 @@ struct hostent *do_gethostbynameIPv4(const char *Name, char *Buf, int Len, int * | ||
666 | 666 | hAsync = WSAAsyncGetHostByNameM(hWndSocket, WM_ASYNC_DBASE, Name, Buf, Len); |
667 | 667 | if(hAsync != NULL) |
668 | 668 | { |
669 | - RegistAsyncTableDbase(hAsync); | |
669 | + RegisterAsyncTableDbase(hAsync); | |
670 | 670 | while((*CancelCheckWork == NO) && (AskAsyncDoneDbase(hAsync, &Error) != YES)) |
671 | 671 | { |
672 | 672 | Sleep(1); |
@@ -682,7 +682,7 @@ struct hostent *do_gethostbynameIPv4(const char *Name, char *Buf, int Len, int * | ||
682 | 682 | { |
683 | 683 | Ret = (struct hostent *)Buf; |
684 | 684 | } |
685 | - UnRegistAsyncTableDbase(hAsync); | |
685 | + UnregisterAsyncTableDbase(hAsync); | |
686 | 686 | } |
687 | 687 | return(Ret); |
688 | 688 | #else |
@@ -710,7 +710,7 @@ struct hostent *do_gethostbynameIPv6(const char *Name, char *Buf, int Len, int * | ||
710 | 710 | hAsync = WSAAsyncGetHostByNameIPv6M(hWndSocket, WM_ASYNC_DBASE, Name, Buf, Len, AF_INET6); |
711 | 711 | if(hAsync != NULL) |
712 | 712 | { |
713 | - RegistAsyncTableDbase(hAsync); | |
713 | + RegisterAsyncTableDbase(hAsync); | |
714 | 714 | while((*CancelCheckWork == NO) && (AskAsyncDoneDbase(hAsync, &Error) != YES)) |
715 | 715 | { |
716 | 716 | Sleep(1); |
@@ -726,7 +726,7 @@ struct hostent *do_gethostbynameIPv6(const char *Name, char *Buf, int Len, int * | ||
726 | 726 | { |
727 | 727 | Ret = (struct hostent *)Buf; |
728 | 728 | } |
729 | - UnRegistAsyncTableDbase(hAsync); | |
729 | + UnregisterAsyncTableDbase(hAsync); | |
730 | 730 | } |
731 | 731 | return(Ret); |
732 | 732 | #else |
@@ -745,7 +745,7 @@ SOCKET do_socket(int af, int type, int protocol) | ||
745 | 745 | Ret = socket(af, type, protocol); |
746 | 746 | if(Ret != INVALID_SOCKET) |
747 | 747 | { |
748 | - RegistAsyncTable(Ret); | |
748 | + RegisterAsyncTable(Ret); | |
749 | 749 | } |
750 | 750 | #if DBG_MSG |
751 | 751 | DoPrintf("# do_socket (S=%x)", Ret); |
@@ -769,7 +769,7 @@ int do_closesocket(SOCKET s) | ||
769 | 769 | |
770 | 770 | // スレッド衝突のバグ修正 |
771 | 771 | WSAAsyncSelect(s, hWndSocket, WM_ASYNC_SOCKET, 0); |
772 | - UnRegistAsyncTable(s); | |
772 | + UnregisterAsyncTable(s); | |
773 | 773 | // FTPS対応 |
774 | 774 | // Ret = closesocket(s); |
775 | 775 | Ret = FTPS_closesocket(s); |
@@ -792,7 +792,7 @@ int do_closesocket(SOCKET s) | ||
792 | 792 | if(BackgrndMessageProc() == YES) |
793 | 793 | CancelCheckWork = YES; |
794 | 794 | // スレッド衝突のバグ修正 |
795 | -// UnRegistAsyncTable(s); | |
795 | +// UnregisterAsyncTable(s); | |
796 | 796 | |
797 | 797 | #if DBG_MSG |
798 | 798 | DoPrintf("# Exit close"); |
@@ -929,7 +929,7 @@ SOCKET do_accept(SOCKET s, struct sockaddr *addr, int *addrlen) | ||
929 | 929 | DoPrintf("## do_sccept (S=%x)", Ret2); |
930 | 930 | DoPrintf("## Async set: FD_CONNECT|FD_CLOSE|FD_ACCEPT|FD_READ|FD_WRITE"); |
931 | 931 | #endif |
932 | - RegistAsyncTable(Ret2); | |
932 | + RegisterAsyncTable(Ret2); | |
933 | 933 | // 高速化のためFD_READとFD_WRITEを使用しない |
934 | 934 | // if(WSAAsyncSelect(Ret2, hWndSocket, WM_ASYNC_SOCKET, FD_CONNECT | FD_CLOSE | FD_ACCEPT | FD_READ | FD_WRITE) == SOCKET_ERROR) |
935 | 935 | if(WSAAsyncSelect(Ret2, hWndSocket, WM_ASYNC_SOCKET, FD_CONNECT | FD_CLOSE | FD_ACCEPT) == SOCKET_ERROR) |
@@ -717,10 +717,11 @@ DWORD WINAPI WSAAsyncGetHostByNameIPv6ThreadProc(LPVOID lpParameter) | ||
717 | 717 | } |
718 | 718 | else |
719 | 719 | PostMessage(pData->hWnd, pData->wMsg, (WPARAM)pData->h, (LPARAM)(ERROR_INVALID_FUNCTION << 16)); |
720 | - free(pData->name); | |
721 | - free(pData); | |
722 | 720 | // CreateThreadが返すハンドルが重複するのを回避 |
723 | 721 | Sleep(10000); |
722 | + CloseHandle(pData->h); | |
723 | + free(pData->name); | |
724 | + free(pData); | |
724 | 725 | return 0; |
725 | 726 | } |
726 | 727 |
@@ -315,7 +315,7 @@ int MakeToolBarWindow(HWND hWnd, HINSTANCE hInst) | ||
315 | 315 | |
316 | 316 | /* ドライブ名をセットしておく */ |
317 | 317 | GetLogicalDriveStrings(FMAX_PATH, Tmp); |
318 | - NoDrives = LoadHideDriveListRegistory(); | |
318 | + NoDrives = LoadHideDriveListRegistry(); | |
319 | 319 | Pos = Tmp; |
320 | 320 | while(*Pos != NUL) |
321 | 321 | { |