OSDN Git Service

Modify documents.
[ffftp/ffftp.git] / src / misc.c
index d5c8d1c..9dd1372 100644 (file)
@@ -241,6 +241,11 @@ INT_PTR CALLBACK ExeEscTextDialogProc(HWND hDlg, UINT message, WPARAM wParam, LP
 {\r
        switch (message)\r
        {\r
+               // 暗号化通信対応\r
+               case WM_SHOWWINDOW :\r
+                       SendDlgItemMessage(hDlg, COMMON_TEXT, EM_SETSEL, 0, 0);\r
+                       return(TRUE);\r
+\r
                case WM_INITDIALOG :\r
                        SendDlgItemMessage(hDlg, COMMON_TEXT, WM_SETTEXT, 0, lParam);\r
                        return(TRUE);\r
@@ -2074,3 +2079,42 @@ void DecodeLineFeed(char* Str)
        }\r
 }\r
 \r
+// 暗号化通信対応\r
+int ReplaceAllStrings(char* Out, char* In, char* From, char* To)\r
+{\r
+       int InLen;\r
+       int FromLen;\r
+       int ToLen;\r
+       int Count;\r
+       char* p;\r
+       int Len;\r
+       InLen = strlen(In);\r
+       FromLen = strlen(From);\r
+       ToLen = strlen(To);\r
+       Count = 0;\r
+       if(Out)\r
+       {\r
+               while(p = strstr(In, From))\r
+               {\r
+                       Len = p - In;\r
+                       strncpy(Out, In, Len);\r
+                       Out += Len;\r
+                       In += Len;\r
+                       strncpy(Out, To, ToLen);\r
+                       Out += ToLen;\r
+                       In += FromLen;\r
+                       Count++;\r
+               }\r
+               *Out = '\0';\r
+       }\r
+       else\r
+       {\r
+               while(In = strstr(In, From))\r
+               {\r
+                       In += FromLen;\r
+                       Count++;\r
+               }\r
+       }\r
+       return InLen + (ToLen - FromLen) * Count;\r
+}\r
+\r