-/*=============================================================================\r
+/*=============================================================================\r
*\r
-* \82q\82`\82r\8aÖ\8cW\r
+* RAS関係\r
*\r
===============================================================================\r
/ Copyright (C) 1997-2007 Sota. All rights reserved.\r
\r
#define STRICT\r
\r
-#define WINVER 0x400\r
+// UTF-8対応\r
+//#define WINVER 0x400\r
\r
+// IPv6対応\r
+#include <winsock2.h>\r
#include <windows.h>\r
#include <stdio.h>\r
#include <stdlib.h>\r
#include <mbstring.h>\r
#include <malloc.h>\r
#include <windowsx.h>\r
-#include <winsock.h>\r
+// IPv6対応\r
+//#include <winsock.h>\r
#include <ras.h>\r
#include <rasdlg.h>\r
#include <raserror.h>\r
static BOOL CALLBACK DialPassCallBackProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
\r
\r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
\r
static HINSTANCE m_hDll = NULL;\r
static HINSTANCE m_hDll2 = NULL;\r
\r
\r
\r
-/*----- RAS\83\89\83C\83u\83\89\83\8a\82ð\83\8d\81[\83h\82·\82é ---------------------------------------------\r
+/*----- RASライブラリをロードする ---------------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*\r
* Note\r
-* RAS\83\89\83C\83u\83\89\83\8a\82Í\95K\82¸\83C\83\93\83X\83g\81[\83\8b\82³\82ê\82é\82à\82Ì\82Å\82Í\82È\82¢\82Ì\82Å\81A\83X\83^\83e\83B\83b\83N\82É\r
-* \83\8a\83\93\83N\82µ\82È\82¢\81B\r
+* RASライブラリは必ずインストールされるものではないので、スタティックに\r
+* リンクしない。\r
*----------------------------------------------------------------------------*/\r
\r
void LoadRasLib(void)\r
}\r
\r
\r
-/*----- RAS\83\89\83C\83u\83\89\83\8a\82ð\83\8a\83\8a\81[\83X\82·\82é -------------------------------------------\r
+/*----- RASライブラリをリリースする -------------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
void ReleaseRasLib(void)\r
}\r
\r
\r
-/*----- RAS\82ª\8eg\82¦\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ---------------------------------------------\r
+/*----- RASが使えるかどうかを返す ---------------------------------------------\r
*\r
* Parameter\r
-* \82È\82µ\r
+* なし\r
*\r
* Return Value\r
-* int RAS\82ª\8eg\82¦\82é\82©\82Ç\82¤\82©\r
+* int RASが使えるかどうか\r
* YES/NO\r
*----------------------------------------------------------------------------*/\r
\r
}\r
\r
\r
-/*----- \8c»\8dÝ\82ÌRAS\83R\83l\83N\83V\83\87\83\93\88ê\97\97\82ð\95Ô\82· ---------------------------------------\r
+/*----- 現在のRASコネクション一覧を返す ---------------------------------------\r
*\r
* Parameter\r
-* RASCONN **Buf : \88ê\97\97\82Ö\82Ì\83|\83C\83\93\83^\82ð\95Ô\82·\83\8f\81[\83N\r
+* RASCONN **Buf : 一覧へのポインタを返すワーク\r
*\r
* Return Value\r
-* int \8cÂ\90\94 (-1=\83G\83\89\81[)\r
+* int 個数 (-1=エラー)\r
*\r
* Note\r
-* Buf\82Ì\97Ì\88æ\82Í\8cÄ\8fo\91¤\82Å\8aJ\95ú\82·\82é\82±\82Æ\r
+* Bufの領域は呼出側で開放すること\r
*----------------------------------------------------------------------------*/\r
\r
static int GetCurConnections(RASCONN **Buf)\r
/*----- RasHangUp()------------------------------------------------------------\r
*\r
* Parameter\r
-* HRASCONN hRasConn : \83n\83\93\83h\83\8b\r
+* HRASCONN hRasConn : ハンドル\r
*\r
* Return Value\r
-* DWORD \83X\83e\81[\83^\83X\r
+* DWORD ステータス\r
*\r
* Note\r
-* \90Ø\92f\82ª\8a®\97¹\82·\82é\82Ü\82Å\91Ò\82Â\r
+* 切断が完了するまで待つ\r
*----------------------------------------------------------------------------*/\r
\r
static DWORD RasHangUpWait(HRASCONN hRasConn)\r
}\r
\r
\r
-/*----- \8c»\8dÝ\82ÌRAS\83R\83l\83N\83V\83\87\83\93\82ð\90Ø\92f\82·\82é ---------------------------------------\r
+/*----- 現在のRASコネクションを切断する ---------------------------------------\r
*\r
* Parameter\r
-* RASCONN *RasConn : \90Ú\91±\88ê\97\97\r
-* int Num : \8cÂ\90\94\r
+* RASCONN *RasConn : 接続一覧\r
+* int Num : 個数\r
*\r
* Return Value\r
-* int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+* int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
*----------------------------------------------------------------------------*/\r
\r
static int DoDisconnect(RASCONN *RasConn, int Num)\r
int i;\r
int Sts;\r
\r
- Sts = SUCCESS;\r
+ Sts = FFFTP_SUCCESS;\r
if(Num > 0)\r
{\r
SetTaskMsg(MSGJPN220);\r
for(i = 0; i < Num; i++)\r
{\r
if(RasHangUpWait(RasConn[i].hrasconn) != 0)\r
- Sts = FAIL;\r
+ Sts = FFFTP_FAIL;\r
}\r
}\r
return(Sts);\r
}\r
\r
\r
-/*----- RAS\82ð\90Ø\92f\82·\82é ---------------------------------------------------------\r
+/*----- RASを切断する ---------------------------------------------------------\r
*\r
* Parameter\r
-* int Notify : \8am\94F\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
+* int Notify : 確認するかどうか (YES/NO)\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
void DisconnectRas(int Notify)\r
}\r
\r
\r
-/*----- RAS\82Ì\83G\83\93\83g\83\8a\88ê\97\97\82ð\83R\83\93\83{\83{\83b\83N\83X\82É\83Z\83b\83g\82·\82é -------------------------\r
+/*----- RASのエントリ一覧をコンボボックスにセットする -------------------------\r
*\r
* Parameter\r
-* HWND hDlg : \83_\83C\83A\83\8d\83O\83{\83b\83N\83X\82Ì\83n\83\93\83h\83\8b\r
-* int Item : \83R\83\93\83{\83{\83b\83N\83X\82Ì\83\8a\83\\81[\83X\94Ô\8d\86\r
-* char *CurName : \8f\89\8aú\92l\r
+* HWND hDlg : ダイアログボックスのハンドル\r
+* int Item : コンボボックスのリソース番号\r
+* char *CurName : 初期値\r
*\r
* Return Value\r
-* int \83G\83\93\83g\83\8a\90\94\r
+* int エントリ数\r
*----------------------------------------------------------------------------*/\r
\r
int SetRasEntryToComboBox(HWND hDlg, int Item, char *CurName)\r
}\r
\r
\r
-/*----- RAS\82Ì\90Ú\91±\82ð\8ds\82¤ -------------------------------------------------------\r
+/*----- RASの接続を行う -------------------------------------------------------\r
*\r
* Parameter\r
-* int Dialup : \83_\83C\83A\83\8b\83A\83b\83v\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
-* int UseThis : \95K\82¸\82±\82Ì\83G\83\93\83g\83\8a\82É\90Ú\91±\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
-* int Notify : \8dÄ\90Ú\91±\91O\82É\8am\94F\82·\82é\82©\82Ç\82¤\82© (YES/NO)\r
-* char *Name : \90Ú\91±\90æ\r
+* int Dialup : ダイアルアップするかどうか (YES/NO)\r
+* int UseThis : 必ずこのエントリに接続するかどうか (YES/NO)\r
+* int Notify : 再接続前に確認するかどうか (YES/NO)\r
+* char *Name : 接続先\r
*\r
* Return Value\r
-* int \83X\83e\81[\83^\83X (SUCCESS/FAIL)\r
+* int ステータス (FFFTP_SUCCESS/FFFTP_FAIL)\r
*----------------------------------------------------------------------------*/\r
\r
int ConnectRas(int Dialup, int UseThis, int Notify, char *Name)\r
BOOL Flg;\r
OSVERSIONINFO VerInfo;\r
\r
- Sts = SUCCESS;\r
+ Sts = FFFTP_SUCCESS;\r
if(Dialup == YES)\r
{\r
if(m_hDll != NULL)\r
{\r
- /* \8c»\8dÝ\82Ì\90Ú\91±\82ð\8am\94F */\r
+ /* 現在の接続を確認 */\r
DoDial = 1;\r
if((Num = GetCurConnections(&RasConn)) != -1)\r
{\r
\r
if(DoDial != 0)\r
{\r
- /* \90Ú\91±\82·\82é */\r
+ /* 接続する */\r
SetTaskMsg(MSGJPN221);\r
- Sts = FAIL;\r
+ Sts = FFFTP_FAIL;\r
\r
Num = 0;\r
VerInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);\r
DlgParam.reserved = 0;\r
DlgParam.reserved2 = 0;\r
if((*m_RasDialDlg)(NULL, Name, NULL, &DlgParam) != 0)\r
- Sts = SUCCESS;\r
+ Sts = FFFTP_SUCCESS;\r
}\r
else\r
SetTaskMsg(MSGJPN222);\r
(DialogBoxParam(GetFtpInst(), MAKEINTRESOURCE(dial_password_dlg), GetMainHwnd(), (DLGPROC)DialPassCallBackProc, (LPARAM)&Param) == YES))\r
{\r
if(DialogBoxParam(GetFtpInst(), MAKEINTRESOURCE(dial_dlg), GetMainHwnd(), (DLGPROC)DialCallBackProc, (LPARAM)&Param) == YES)\r
- Sts = SUCCESS;\r
+ Sts = FFFTP_SUCCESS;\r
}\r
}\r
}\r
}\r
\r
\r
-/*----- RAS\83_\83C\83A\83\8b\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N -----------------------------------\r
+/*----- RASダイアルウインドウのコールバック -----------------------------------\r
*\r
* Parameter\r
-* HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-* UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-* WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-* LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+* HWND hDlg : ウインドウハンドル\r
+* UINT message : メッセージ番号\r
+* WPARAM wParam : メッセージの WPARAM 引数\r
+* LPARAM lParam : メッセージの LPARAM 引数\r
*\r
* Return Value\r
* BOOL TRUE/FALSE\r
case WM_DIAL_MSG :\r
if(lParam != 0)\r
{\r
- /* \83G\83\89\81[\94\90¶ */\r
+ /* エラー発生 */\r
if((*m_RasGetErrorString)((UINT)lParam, (LPTSTR)Tmp, RAS_NAME_LEN+25) != 0)\r
sprintf(Tmp, MSGJPN224);\r
RasHangUpWait(hRasConn);\r
}\r
else if(wParam & RASCS_DONE)\r
{\r
- /* \8fI\97¹ */\r
+ /* 終了 */\r
EndDialog(hDlg, YES);\r
}\r
else\r
{\r
- /* \83X\83e\81[\83^\83X\95Ï\8dX */\r
+ /* ステータス変更 */\r
MakeRasConnMsg(Param->szPhoneNumber, wParam, Tmp);\r
SendDlgItemMessage(hDlg, DIAL_STATUS, WM_SETTEXT, 0, (LPARAM)Tmp);\r
}\r
}\r
\r
\r
-/*----- RasDial()\82Ì\83R\81[\83\8b\83o\83b\83N -----------------------------------------------\r
+/*----- RasDial()のコールバック -----------------------------------------------\r
*\r
* Parameter\r
-* UINT unMsg : \83\81\83b\83Z\81[\83W\r
-* RASCONNSTATE rasconnstate : \83X\83e\81[\83^\83X\r
-* DWORD dwError : \83G\83\89\81[\r
+* UINT unMsg : メッセージ\r
+* RASCONNSTATE rasconnstate : ステータス\r
+* DWORD dwError : エラー\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
static VOID WINAPI RasDialFunc(UINT unMsg, RASCONNSTATE rasconnstate, DWORD dwError)\r
}\r
\r
\r
-/*----- RasDial()\82Ì\83X\83e\81[\83^\83X\83\81\83b\83Z\81[\83W\82ð\8dì\90¬\82·\82é -----------------------------\r
+/*----- RasDial()のステータスメッセージを作成する -----------------------------\r
*\r
* Parameter\r
-* char *Phone : \93d\98b\94Ô\8d\86\r
-* RASCONNSTATE rasconn : \83X\83e\81[\83^\83X\r
-* char *Buf : \95¶\8e\9a\97ñ\82ð\83Z\83b\83g\82·\82é\83o\83b\83t\83@\r
+* char *Phone : 電話番号\r
+* RASCONNSTATE rasconn : ステータス\r
+* char *Buf : 文字列をセットするバッファ\r
*\r
* Return Value\r
-* \82È\82µ\r
+* なし\r
*----------------------------------------------------------------------------*/\r
\r
static void MakeRasConnMsg(char *Phone, RASCONNSTATE rasconn, char *Buf)\r
}\r
\r
\r
-/*----- \83\86\81[\83U\96¼\81A\83p\83X\83\8f\81[\83h\93ü\97Í\83E\83C\83\93\83h\83E\82Ì\83R\81[\83\8b\83o\83b\83N ----------------------\r
+/*----- ユーザ名、パスワード入力ウインドウのコールバック ----------------------\r
*\r
* Parameter\r
-* HWND hDlg : \83E\83C\83\93\83h\83E\83n\83\93\83h\83\8b\r
-* UINT message : \83\81\83b\83Z\81[\83W\94Ô\8d\86\r
-* WPARAM wParam : \83\81\83b\83Z\81[\83W\82Ì WPARAM \88ø\90\94\r
-* LPARAM lParam : \83\81\83b\83Z\81[\83W\82Ì LPARAM \88ø\90\94\r
+* HWND hDlg : ウインドウハンドル\r
+* UINT message : メッセージ番号\r
+* WPARAM wParam : メッセージの WPARAM 引数\r
+* LPARAM lParam : メッセージの LPARAM 引数\r
*\r
* Return Value\r
* BOOL TRUE/FALSE\r