[Ttssh2-commit] [4523] getpassword マクロコマンドを機能アップデートした。

Zurück zum Archiv-Index

svnno****@sourc***** svnno****@sourc*****
2011年 7月 25日 (月) 21:20:59 JST


Revision: 4523
          http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=4523
Author:   yutakapon
Date:     2011-07-25 21:20:59 +0900 (Mon, 25 Jul 2011)

Log Message:
-----------
getpassword マクロコマンドを機能アップデートした。

 ・ファイル名に環境変数を含められるようにした。
 ・コマンドの実行結果を result に格納するようにした。

cf.
getpassword limitations 
http://logmett.com/forum/viewtopic.php?f=6&t=1750
プロンプト用の引数を追加しろとある件は、別途保留。

Modified Paths:
--------------
    trunk/teraterm/ttpmacro/ttl.c


-------------- next part --------------
Modified: trunk/teraterm/ttpmacro/ttl.c
===================================================================
--- trunk/teraterm/ttpmacro/ttl.c	2011-07-23 15:10:10 UTC (rev 4522)
+++ trunk/teraterm/ttpmacro/ttl.c	2011-07-25 12:20:59 UTC (rev 4523)
@@ -1958,6 +1958,8 @@
 	TStrVal Str, Str2, Temp2;
 	char Temp[512];
 	WORD VarId, Err;
+	int result = 0;  /* failure */
+	char filepath[1024];
 
 	Err = 0;
 	GetStrVal(Str,&Err);
@@ -1971,20 +1973,30 @@
 	if (Str2[0]==0) return Err;
 
 	GetAbsPath(Str,sizeof(Str));
+
+	// ƒtƒ@ƒCƒ‹ƒpƒX‚Ɋ‹«•Ï”‚ªŠÜ‚Ü‚ê‚Ä‚¢‚é‚È‚ç‚΁A“WŠJ‚·‚éB
+	ExpandEnvironmentStrings(Str, filepath, sizeof(filepath));
+
 	GetPrivateProfileString("Password",Str2,"",
-	                        Temp,sizeof(Temp),Str);
+	                        Temp,sizeof(Temp), filepath);
 	if (Temp[0]==0) // password not exist
 	{
 		OpenInpDlg(Temp2, Str2, "Enter password", "", TRUE);
 		if (Temp2[0]!=0) {
 			Encrypt(Temp2,Temp);
-			WritePrivateProfileString("Password",Str2,Temp,Str);
+			if (WritePrivateProfileString("Password",Str2,Temp, filepath) != 0) {
+				result = 1;  /* success */
+			}
 		}
 	}
-	else // password exist
+	else {// password exist
 		Decrypt(Temp,Temp2);
+		result = 1;  /* success */
+	}
 
 	SetStrVal(VarId,Temp2);
+
+	SetResult(result);  // ¬Œ÷‰Â”Û‚ðÝ’è‚·‚éB
 	return Err;
 }
 



Ttssh2-commit メーリングリストの案内
Zurück zum Archiv-Index