アフィリエイト広告を利用しています

広告

この広告は30日以上更新がないブログに表示されております。
新規記事の投稿を行うことで、非表示にすることが可能です。
posted by fanblog

2015年02月05日

腕時計が届きました。

昨日の午前中に既に届いていたようですが、
私が在宅中にもかかわらずに、宅配ボックスに入れられていました。

「なかなか届かないなー」と思って
運送会社の配送状況ページを見ると配送済になっていたので
宅配ボックスに行って取ってきました。

「そんな事もあるさ」と気を取り直して開けてみると
ソーラー電波時計なので、開けた瞬間に針が動き出して、
現在時刻と日付に合わさったので感動しました。
見た目もイイ感じです。

これで、いつ就活のために外出することになっても大丈夫です。
watch.png
【このカテゴリーの最新記事】
posted by m4bashi at 20:39| 就活

2015年02月04日

パスワード変更画面を追加

xHis(Excel履歴管理ツール)のログイン画面に
「ログイン後にパスワード変更」チェックボックスを追加しました。
チェックしてログインに成功した場合に、パスワード変更画面を表示します。

パスワード変更画面をログイン直後にのみ表示させることで、
旧パスワードの入力は、ログイン時の1回のみとしました。

パスワード変更画面
posted by m4bashi at 18:55| Excel履歴管理

2015年02月03日

古いlog4netのログファイルを削除

xHis(Excel履歴管理ツール)のクライアントモジュールのログは、
log4netで次のように、ファイル名に年月日を付けて出力しています。
xHis_cl.20150203.log
使い続けるとログファイルがいっぱいできます。

そこで、古いログファイルを削除する指定を
log4netの設定でしたかったのですが、やり方がわからないので、
クライアントモジュールで1ヶ月以上前のログファイルを削除することにしました。

ログファイルの削除自体は簡単ですが、
難題はlog4netの出力先を、クライアントモジュールから取得する方法です。
何等かの障害発生時に原因調査のために、
ログファイルをサーバに送信するツールにも応用できると思ったので
今回のプログラミング内容をアップしておきます。

■ App.config
<configuration>
<configSections>
<section name="log4net" type=" log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>
<log4net>
<appender name="DayRollingLogToFile" type="log4net.Appender.RollingFileAppender">
<File>ap_log\xHis_cl</File>
:
</appender>
:
</log4net>
</configuration>

■ C#ソースコード
// 古いlog4netのログファイルを削除
try
{
XmlElement log4netCollection =
(XmlElement)ConfigurationManager.GetSection("log4net");
XmlNodeList nodeList = log4netCollection.SelectNodes("appender");
foreach (XmlNode appender in nodeList)
{
XmlNodeList childList = appender.ChildNodes;
foreach (XmlNode child in childList)
{
if (child.Name == "File")
{
string fileValue = child.InnerText;
string fileName;
string fileHeder = fileValue;
string path = ".";

// '\\' でフォルダを指定している場合に、フォルダとファイルヘッダを分離
int idxBS = fileValue.LastIndexOf('\\');
if (idxBS >= 0)
{
if (idxBS == 0)
{
path = "\\";
}
else
{
path = fileValue.Substring(0, idxBS);
}

fileHeder = fileValue.Substring(idxBS + 1);
}

// '/' でフォルダを指定している場合に、フォルダとファイルヘッダを分離
int idxS = fileValue.LastIndexOf('/');
if (idxS >= 0)
{
if (idxS == 0)
{
path = "/";
}
else
{
path = fileValue.Substring(0, idxS);
}

fileHeder = fileValue.Substring(idxS + 1);
}

string fullPath = System.IO.Path.GetFullPath(path);

// 1ヶ月以上前のログファイルを削除
DateTime dateToDel = System.DateTime.Today.AddMonths(-1);
string fileToDel = string.Format("{0}.{1}.log",
fileHeder, dateToDel.ToString("yyyyMMdd"));
string[] listLogFile = System.IO.Directory.GetFiles(path, fileHeder + ".*");
int len = listLogFile.Length;

for (int i = 0; i < len; i++)
{
fileName = System.IO.Path.GetFileName(listLogFile[i]);
if (fileName.CompareTo(fileToDel) < 0)
{
System.IO.File.Delete(listLogFile[i]);
}
}
break;
}
}
}
}
catch {}

2015年02月02日

サーバからの処理結果にurlを追加

xHis(Excel履歴管理ツール)のサーバからの処理結果として、
エラーコードとエラーメッセージを返していましたが、
クライアントでメッセージボックスを表示するとともに、
必要に応じてWebページを表示できるようにurlを追加しました。
(表示したくないときは未指定)

例えば、クライアントモジュールが古いときに更新ダウンロードを促したり、
有償サポートが切れたときに、復活手続きを促したりする用途で使用します。

今日のワンポイント

【C#】
・相対パスから絶対パスを取得
string fullPath = System.IO.Path.GetFullPath(@"tmp\data");

・自分のバージョンを取得
System.Reflection.Assembly as
= System.Reflection.Assembly.GetExecutingAssembly();
System.Version version = as.GetName().Version;


【PHP】
・ディレクトリの存在確認
file_exists($dir)
posted by m4bashi at 21:16| Excel履歴管理

腕時計を購入しました。

楽天でソーラー電波腕時計(CITIZEN Q&Q ブラック×オレンジ)を購入しました。
6,300円の出費で、収入のない私には辛いところですが
これも就活のためです。

退職日の翌日に、10年以上使っていた腕時計が壊れていました。
退職後に退職手続きのために、もとの会社に出向いた際に、
壊れていることに気づかずに、電車で外出してとても苦労しました。

次の就職先が決まってから、自分へのご褒美に買おうとも思いましたが、
やはり、就活にも支障をきたすので思い切って買いました。

時計が届いたら、また、詳細をアップします。
posted by m4bashi at 20:30| 就活

2015年02月01日

ログイン先の切替え機能を制作

先週金曜日1/30に、ハローワークに登録してきましたが、
3×2.5cmの写真が2枚、次回までに必要と言われたので
今日、近所のコイデカメラで焼増ししてきました。
履歴書用の4×3cmは既に撮ってあったので、今回は焼増しです。
就活は出費がかさみます。

コイデカメラに単1アダプターが売っていたので、ついつい買ってしまいました。
家のガスレンジに単1電池が必要で、ここだけエネループじゃなかったためです。
次回電池交換への投資です。

趣味のプログラミングでは、暗号化した個別設定情報を復号化して、
画面上でハンドリングする機能を制作し、
xHis(Excel履歴管理ツール)に追加しました。

(1)ログイン接続先の切替え機能(名称とURL)
(2)パスワード忘れ接続先(URL)

ちなみに、Excelシートデータの保存先は、また別の接続先で、
ログイン接続先のデータベースに保存先を保持しています。

また、パスワードの暗号化は別の方式です。

ログイン画面
posted by m4bashi at 20:31| Excel履歴管理

2015年01月31日

暗号化アルゴリズムを強化

今日は土曜日なので直接的な就活はお休みにして
趣味のプログラミングに集中します。

50過ぎで転職回数も多い私は
普通に面接受けても間違いなく落とされるので
趣味のプログラミングも間接的な就活です。

xHis(Excel履歴管理ツール)は、
サーバサイドに、Apache + PHP + MySQL
クライアントサイドに、.NET WPF(C#) + Excel
通信方式に、https
の構成で、Excelのシート単位に更新履歴を管理します。

これまでの職場では、
データベースは、Oracle、PostgreSQL、SQL Server
サーバサイドは、Apache(C++)、Tomcat(Java)、ASP(C#)のWebアプリケーション
クライアントサーバアプリケーションは、MFC(C++)
Webアプリケーション以外の通信方式は、Windows socket
での開発が主体でしたので
これまでの職場では経験していない技術を中心に
趣味のプログラミングで磨いて
就活にも活かすつもりです。

タイトルの暗号化アルゴリズムは、独自方式で個別設定情報を
暗号化するもので、クライアントサイドのC#モジュールに組み込みました。
(パスワードの暗号化は一般的な方式で別になります)
文字列をバイナリデータとして暗号化して、
バイナリモジュールの中に埋め込みました。
特にオンプレミス化で重要になると考えています。

汎用化のために思った以上に時間がかかりましたが、
xHis以外アプリケーションでも使えるので良しとします。

明日は、暗号化した個別設定情報を復号化して(アルゴリズムは今日作成済)、
画面上でハンドリングする機能を制作します。
posted by m4bashi at 20:44| Excel履歴管理
プロフィール
m4bashiさんの画像
m4bashi
平日は、隣の市まで CAD/CAM の勉強に行き、 休日は、趣味のプログラミングをしています。 25年以上にわたってシステム開発一筋の仕事をしてきました。 2015年1月末に趣味のプログラマーとしてサイトを立ち上げ、 制作したアプリケーションを公開しています。 まだ、一つ目のアプリケーションを公開したばかりで、 操作マニュアルやQ&Aをこれから、少しずつ作っていくつもりです。 そして、少しでも世の中に役立つアプリケーションを 制作していきたいと願っています。
ブログ
プロフィール
<< 2015年04月 >>
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
リンク集
カテゴリアーカイブ
月別アーカイブ
最新記事
×

この広告は30日以上新しい記事の更新がないブログに表示されております。