2015年3月10日火曜日

WSHでDB接続する

メール送信は先程確認できたので、今度は監視スクリプトの方に着手。データベースに接続して、処理状況を監視させたい。

先ほどはJScriptでしたが、今度はWSHというか、VBScriptというか。あまり実装内容に違いはないけれども。最終的にはWSHに統一する予定。

WSHでDB接続する方法はこんな感じ。
WSH サンプル集 > データを取得する

これに倣って実行すると、以下のエラーが発生。

ActiveXコンポーネントはオブジェクトを作成できません。:’ADO.Connection’

Windows 7 (64bit)だと駄目なんだろうか。よく分からないが、以下の記事を見てADODB.Connectionに変えてみると次のステップへ。
【VBS】ADOでDB接続に接続し、SQLを実行しようとすると”型が一致しません”というエラーが発生する

うーん、昔々はRDOだったのがDAO、ADOになったところまではついていっていたつもりだったが、暫く離れている間に訳のわからん状況になっている。気にせず次に進もう。

ADODBだと、ドライバー名を指定しなければいけないらしい。
何とかいろいろ探して、以下のリンクで解決。
ConnectionString Property (ADO)

これでやっとDB接続まで完了、と思ったら次のボスキャラが登場。

[Microsoft][ODBC Driver Manager] 指定されたDSNには、ドライバーとアプリケーションとのアーキテクチャーの不一致が含まれています
何ですか、これは。グーグル先生にもう一度聞いてみると、ちゃんと答えてくれます。
ODBC接続で 「ドライバーとアプリケーションとのアーキテクチャの不一致」 なエラーの解決法


うーん、32bitと64bitのミスマッチという原因は理解したけど、ODBCドライバーを入れ直す、って。。。
その手は使えないので、他の対処方法が必要。

久しぶりにSEをやると、一日があっという間に終ってしまう。次回へ続く。

JScriptからGmailアカウントで送信できない

システムのエラー監視を設定する必要があって、以前作成したスクリプトを引っ張り出してきて実行してみました。すると、何故かメールを送信する段階でエラーになる。

前に作ったのは、以下のリンク先そのままのスクリプトで、以前は実行できたのに。
【JavaScript】GmailアカウントでSMTP送信するスクリプト
定型メールの送信を自動化する~GmailとJavaScriptの華麗な連携技(第13回)

で、利用したアカウントには、以下のようなメールが届いていました。

We recently blocked a sign-in attempt to your Google Account [xxxxx@gmail.com].

Sign in attempt details
Date & Time: Tuesday, March 10, 12:04 PM GMT+9
Location: Chuo, Tokyo, Japan

If this wasn't you
Please review your Account Activity page at https://security.google.com/settings/security/activity to see if anything looks suspicious. Whoever tried to sign in to your account knows your password; we recommend that you change it right away.

If this was you
You can switch to an app made by Google such as Gmail to access your account (recommended) or change your settings at https://www.google.com/settings/security/lesssecureapps so that your account is no longer protected by modern security standards.

To learn more, see https://support.google.com/accounts/answer/6010255.

Sincerely,
The Google Accounts team


言われたように、リンク先に飛んで、Less Secure Apps(安全性の低いアプリ)をONにすると、無事メール送信が出来ました。どうやら、2012年以降にセキュリティが強化された模様。

調べてみると、以下の記事に遭遇。2014年7月からとのこと。
メーラーからGmailへの接続時に認証(パスワード)のエラーが生じる場合の対処方法


乗っ取られるのは嫌なのでOFFに再設定。
Windows7からWindows8.1にアップグレードしないといけない。

2015年3月8日日曜日

Eclipseが起動しない

とある調べごとをするために、超久しぶりにEclipse(4.2 JUNO)を起動しました。いや、正確に表現すると、起動しようとしました。すると、Exit Code=13が出て起動できない。

おそらく、この前Javaのアップデートがあったからかなーと思いつつ、ググってみるとどうやらその通り。
急にEclipceが起動しなくなった。起動時にエラーがでる時の対処法。
JavaのJDK/JREをアップデートしたらEclipseがerrorcode=13で起動しない
Cannot run Eclipse; JVM terminated. Exit code=13
How to Solve the Error "Java was started but returned exit code" in Eclipse


記載にあるとおりに、eclipse.iniに-vm指定をすると起動するようになりました。

と、ここまでで止めても良かったのですが、多少時間があったのでもう少し掘り下げてみようかと。


Eclipse.iniの設定を元に戻す
とやはりExit Code=13が出てきます。参照している先はC:\ProgramData\Oracle\Java\javapath\javaw.exe。
PATH変数を見ると、これが一番最初に書かれている。これをC:\Program Files\Java\jre6\binに変えて再起動。無事、起動を確認。
ということは、これで別のアプリが動かなくなるはずなので、この状態で様子を見ます。

Exit Code=13
って、何ぞや、という話です。どうやら、上のリンクを見ていると、13は、EclipseとJavaについて、何bitバージョンかがずれているという話みたいですが、EclipseのExit Code一覧があると便利に違いない。

。。。と思って30分ほど調べてみたのですが、簡単には出てきませんでした。1、2、13とか、ピンポイントには出てくるんですが、一覧にはなかなか出会えません。こちらも継続して調査しようかと。


 ということで休日の暇つぶしにいろいろ探ってみましたが、宿題が残る結果となりました。

2015年2月14日土曜日

ワトソン博士を有効にする

相変わらず、XPのデバッグを続けています。

この前、やっとデバッグのプロセスが確認できたので、現地端末にダンプファイル出力設定に出かけました。

最初、起動した状態の端末を渡されたので、drwtsn32.exeを起動し、ダンプ出力先を設定し保存。
念のため、再度drwtsn32.exeを再起動すると、設定した筈の値が反映されていない。
おかしいなー、OKボタン押さなかったのかなーと思って再度試したのですが結果は変わらず。

まあ、ユーザー権限でログオンしていたから機能制限がかかっていた、というオチなんですけどね。
でも、普通に起動できるんだ、という点に僅かばかり感動。

アドミン権限で入り直して無事設定反映。念のため、仕込んでおいたアベンド発生手順を実行。
。。。と、ダンプファイルが出力されない。何故だ。


ここで許可されていた現場での作業時間がタイムアップしたので現場を撤収。


どうも、事前にテストしていた端末と現場の端末では何かしらの設定が違うらしい。
とりあえず、気になるのは以下の記事にあるレジストリ関連。
Windows のワトソン博士を有効または無効にする方法
技術/Windows/メモリダンプ取得方法メモ


次回行ったら確かめてみよう。

2015年2月5日木曜日

Visual Studioでダンプファイルを解析する

つまらないことで嵌ってしまったので、自戒と備忘のために記載。

Windows7やらWindowsXP(!?)やらでダンプを取得するところまではこれまでに書いたとおり。
Window7でダンプを取得する
WindowsXPでダンプ出力する


この際に取得したダンプの解析方法ですが、ダンプファイルを開いて、Visual Studioが開くところまでは記憶の通り。
でも、ここからの記憶が曖昧で、どうやって該当ソースコード箇所の特定まで行くか、が覚えていなかったんですよねーーー(だって2年ぶりくらいだったし、、、)

ダンプファイルを開いただけだと、何も起こらない、ということに気付くのに暫しの時間を要しました。そう、「デバッグ開始」をしないといけなかったんですよね。

で、デバッグの開始をしたのですが、次に出てきたのがアセンブラの画面(自分が試したサンプルではstrcat.asm)。これでは、ソースコードのどこがおかしいか、分からない。


で、また気付くのに暫しの時間を要しました。そう、「呼出し履歴」 をみて、デバッグ位置を変更しなければいけない。たったこれだけだったんですけど、すごく嵌りました。


やっぱり、ツールは定期的に使わないと忘れてしまう、ということを痛感した出来事でした。
(最近はEclipse系の使用が多くて、Visual Studioを使うことも間が空いてしまっていました)

2014年12月13日土曜日

SIMフリーiPhonse5sをiOS8.1にアップグレードした結果

昨晩、帰宅してから、宣言通り、iPhone5sをiOS8.1にアップグレードすることにしました。

参考にした記事では、アップデートに数時間かかったということで、気合を入れて開始。。。したのですが、結果、あっさりと15分程度でアップデート完了。 正確にはiOS8.1.2で、1.1GBと表示されていたのですが、家の光回線+11.g無線環境でこの時間でした。

なんか少し拍子抜けした感じですが、パスコード認証して設定を普通に進めると、無事、待受け画面に到達。

したのですが、何か感じる違和感。ということで、気付いた範囲での差異や、確認した事項は次の通り。
(iOS7の画面を正確に覚えている訳ではないので、勘違いもあるかもしれない。ちなみに、私は言語設定をEnglishにしているので、以下、メニュー等の表記は英語設定時のものです)

1. iCloudへの登録必須(?)
今まではiCloudを使っていなかったのですが、OSアップデートの際、iCloudへの登録画面が出てきました。特に拒否することもないので登録しましたが、これは今までのアップデートでも同様なのだろうか。。。

2. アプリの追加
Health、 Podcasts、Tipsが追加されていました。
Healthについては、iOS8の目玉だったので予想通り。他は何故だろう。

3. 時刻表示の変更(?)
ふと見ると、時刻表示にPMとか書いてある。今までは24時間表示だったはず。
SettingsからGeneral -> Date & Time -> 24-Hour Timeというのがあって、これがOFFになっていました。これをONにすると今まで通りの24時間表記に。こんなメニュー、今まであったかなーと暫く自問自答。


4. スクリーンロックへの日付と曜日の表示追加
スクリーンロックでの表示が、今まで時刻だけだったのが、日付と曜日も表示されるようになりました(ような気がする)。

5. 言語設定変更時の待ち時間増加
普段は言語設定をEnglishにしているのですが、動作確認も兼ねて日本語に変更してみる。
まあ、普通に変更できたのですが、従来と比べて、設定変更に時間がかかるようになっています。
以前はそのまま変更できたのに、iOS8になると「言語設定中」の画面になり、切り替わるのに数秒待たされるようになりました。

6. APN構成ファイル
OCNモバイルOneを使っていて、ある記事には再度ホームページから構成ファイルを再インストールと書いてあったので少々不安でしたが、私の場合は、特に設定変更せずに使用可能でした。

7. テザリング
SIMフリーiPhone5sでは、iOS7ではテザリングができませんでしたが、iOS8からは可能になる!!!というのが、今回、私がアップグレードした主たる理由。ということでチェック。
設定にPersonal Hotspotというのがありました!OCNモバイルOneだと、構成ファイルをインストールし直さないといけないと書いてあった記事もありましたが、私の場合は何もせずとも出てきました。

このメニューのPersonal HotspotをONにすると、無事、PCや他のAndroidタブレットから接続可能に。感涙です。うるうる。



ということで、無事、アップグレード完了。すんなりいって一安心。

2014年12月12日金曜日

SIMフリーiPhonse5sをiOS8.1にアップグレードする。

iPhone6から大々的にSIMフリーが広がり、昨年の同時期を思い起こすと感慨深いものがあります。
それはさておき、そろそろiOS8.1にアップグレードしようかと。

3大キャリアのSIMならそれほど気にしないのですが、OCNモバイルOneを使っているので、今まで様子を見て来た訳です。

世間にはいろいろとチャレンジャーな方が居られるようで、2014/9月時点で果敢にもチャレンジされたようです。
iPhone 5c(docomo版)+iOS 8でOCNモバイルONEのSIMの通信OKでテザリングも可能なことを確認しました 
iOS 8.02 の iPad mini Retina テザリングは「OCN モバイル ONE」でOK確認済み

そう、上記にも書かれていますが、iOS 8にすると、今までSIMフリーで出来なかったテザリングが出きるようになるらしいです。SIMフリー版の唯一の欠点と思っていただけに、これは嬉しい。


さて、 そんな感じで実証報告がある訳ですが、念のためOCNのホームページでも確認してみます。
動作確認済みデータ端末一覧 - OCN モバイル ONE -

素晴らしい。
しかも、構成プロファイルもダウンロードできるようになっています。ついで、以下のようなページも出来て、SIMフリー初心者でも簡単に導入できるようになっている。
iPhone 5s / 5c(SIMフリー版)をお使いの方


うーん、去年、さんざん悩んだのが嘘のような、サポートの充実ぶり。


という訳で、今週末にアップグレードすることに決定。