Becky!のbmfファイルを読み込む

複数人にメールで提出や回答を促す場合、誰から返信がないかを一覧にしたい。
リストをExcelで作成してメールの送信者を見ながら自分でチェック、というのはめんどくさい。
てわけで、どうにかツールを作れないだろうかと思案。
でもbmfファイルなんてVBJavaじゃサポートされてないだろーから、素データを読み込まんといかん。ただ、bmfファイルは文字コードが「JIS」(「Shift−JIS」でなくて「JIS」!)だし、一部BASE64変換とかで7ビット配置になってたりするし、なんかめんどくさそう。。
と思ってたら、コマンドプロンプトの一文で、bmfファイルからtxtファイルへの変換が行えるらしー!

copy *.bmf aaaa.txt
これならVBでもJavaでも読み込み形式がサポートされてるし、なんとかなるかも!

                                      • -

フォルダの全メールをテキストに出力し、しかもシフトJISにしたいということなら、Uemuraさんの「ShiftJIS Export PlugIn for B2」を使うと簡単。
Uemuraさんのページ
http://www1.kcn.ne.jp/~ufbmf001/b2pin.html

NOD32が正常にインストールできない

NO32v.2.7をアンインストール→NO32v.3.0インストールで、「v.2.7がアンインストールされていません」のエラーがでる。

「プログラムの追加と削除」からアンインストールしたのが原因か??
ということで、調査。

まず、レジストリ
■「プログラムの追加と削除」に表示される、NOD32レジストリ

reg query  "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{383EB320-3ABC-4159-A451-4A5957C6B501}" /s
「エラー: 指定されたレジストリ キーまたは値が見つかりませんでした」の結果から、レジストリは正常に削除されているもよう。
■ソフトウェアのレジストリ
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\ESET" /s
ずらっとレジストリキーが列挙される。どうやらこれが原因らしい。

つぎ、インストールフォルダ。
「C:\Program Files\ESET」に実行ファイルなどが残ったまんま。レジストリだけ削除されて、本体が残ってる状態のもよう。

つぎ、Windowsの一時フォルダ(TEMPフォルダ)。
まあ当然「C:\Documents and Settings\ユーザー名\Local Settings\Temp」に「nodtmpb」が残ってる。

IPMessengerでユーザが表示されない

複数のPCでIPMessengerの設定をしたら、なぜかユーザ一覧が表示されたりされなかったりする。IPはかぶっていない。更新ボタンを押すタイミングで表示/非表示が切り替わってしまう。
ユーザ一覧の表示設定にすべてチェックを入れてみると、どうやらホスト名がかぶっているために発生するもよう。
コンピュータ名=ホスト名
のようなので、PCのコンピュータ名を一意にしたら解決。

BIOSパスワード設定

パソコン教室では教えない、ビジネスパソコン術(http://job-pc.net/archives/27/32/000238.html)さんより

 ただし、この設定はある程度の知識を必要としまうので、自己責任でお願いします。 特に、初心者の方は行わないほうが無難です。


 BIOSから、パスワードの設定を行います。


 BIOS設定画面に入るには、機種によって多少の違いがありますが、電源投入直後にファンクションキーを押すというのが一般的です。
 私のパソコンのは、【F1】をBIOS設定画面が表示されるまで、押し続けます。


 【Security】⇒【Password】⇒【Power-on Password】で、自分の好みのパスワードを設定します。
 パスワードは確認を含めて2度打ち込みます。


 設定終了後は、【Esc】キーで、Exitします。


 これで次回電源投入時に、パスワードの入力画面(カーソルが点滅する)になります。
 そこでパスワードを入力しないと、Windowsすら起動できなくなっています。

VBAでクエリを実行し、結果を取得する

Public Sub Sample()

Dim myDB As Database
Dim myRS As DAO.Recordset
Dim myQuery As QueryDef
Dim mySQL As String

'SQLステートメントを定義する
mySQL = "SELECT * FROM 社員テーブル;"

'カレントデータベースを変数に代入する
Set myDB = CurrentDb
'クエリを作成する
Set myQuery = myDB.CreateQueryDef("", mySQL)
'クエリを実行してレコードセットを開く
Set myRS = myQuery.OpenRecordset(dbOpenDynaset)
'レコードセットの内容を表示する
Do Until myRS.EOF
Debug.Print myRS!社員コード & " " & myRS!部署コード
myRS.MoveNext
Loop
'レコードセットを閉じる
myRS.Close

End Sub