エントリー

ううっ、頭の中がぁ

交流会のチーム分けをしているんですが・・・

所属協会、チーム、年齢、ランク、男女比、総人数・・・・

1人動かしたら、壮大な移動が始まる・・・・

もう頭の中はウニウニです。

もう少しで終わることを願って、もうひと踏ん張り。

だあああぁぁ

結局さらに忘れてたぁ~

Winddows7の時もあったんですが、CCCPでは完全に治らなかったんだったわぁ~

結局、ffdshowに任せて設定いじって何とか完了。

 

忘れっぽくなってきたけど、ボケ予防にはいいのかも。

もう一つ忘れてた

動画再生時に、20分ぐらい再生していると、映像と音声が少しずつずれてきて気持悪い。

MPC-BE使ってるんだけど、どういえばWindows7の時にコーディック入れたな~って思い出した。

 

とりあえず、CCCPダウンロードしてインストール、無事音声ずれは解消されました。

ふ=3

短期間に、WindowsVista→Windows7→Windows10に移行して、何度も設定しているのに、忘れっぽくなってるな。

ネットに頼りすぎているのかも・・・

うまくいった

Windows7のインストールから初めて、また魔が差してWindows10にアップデート

もう一度、TVTestに挑戦

ちょっと思い当たる所があり、ドライバーとSDKを手持ちのものではなく、もう一度ダウンロードしなおして、インストール。

そしたら、普通に視聴できました、ハハハ

どうやらドライバ&SDKが古かったのか、壊れていたみたいです。

無事、EGPTimerも設定して、録画ができるようになりました。

さて、そうなると問題の、サーバー監視&温度管理アプリ

っと、思い出しあことが

そういえば、WMIは管理権限で動作させないと取得できないんだけど、管理権限下では、ネットワークドライブが取得できないんだなこれが。

時間が空くと忘れっぽくなるのは、老化かな~

思い出しながら、レジストリーいじって解決できました。

Windows10にしたら、動作が軽くというか滑らかになったような気がする、CoreDuo2 Q6600なので、今となっては低スペックのPCなんですけど、重い処理をしなければ操作性は他のPCとあまり変わらない。

まだもう少し現役で行けそう。

やっちまった

録画用&サーバ監視&空調管理をしているPC、つい最近Windows7にしたばかりなんだけど、どうも1週間に30分ぐらいWMIから取得しているHDD温度が、取得できない。

特に大きな問題は無いんですが、なんだか気持ち悪い。

原因をログから調べていると、WMIがコード10のエラーを吐いてるらしい。

この症状、Windows7やWindowsサーバ2008で良く起こる問題らしい。

 

色々と調べていると、エラーを記録させない方法はあるんですが、根本的な解決方法が見つからない。

Windows10にしたら出ないらしいので、気の迷いでWindows10へアップグレードしました。

アップグレード自体は、順調にいったんですが、その後が大変。

まず、録画用のPT1のドライバーを入れて。TVTestで確認すると

BonDriverが初期化できないとエラーを吐く

色々と調べて対策をしても、解決しない

サーバー監視のプログラムも、エラーで落ちる

これはWindows10の別のPCで開発したものだから、動作するはずなんだけど、なじぇ???

仕方がないので、Windows7に戻すを実行

ここでトラブルがあり、うまく戻らなくなってしまう( ノД`)シクシク…

って事で、Windwos7を上書きインストールしなおし、また一から設定のし直しです。

だいたい、インストール直後にWindowsアップデートすると、1600個以上のアップデートプログラムがあって、アップデートだけで何時間もかかるんだよ。

今日は時間切れなんで、放置して帰宅、あとは明日だな。

何をやってもダメな事ばかり~♬

って、とある魔術師の言葉が頭をよぎる、今日この頃。

何とか環境が

811.jpg

何回も試行錯誤して繋ぎなおして、やっと環境が整いました。

一番右側のモニターは、ノートPCに繋いでMouse without Bordersを使っていたんですが、文字しかコピペ出来ないので、R620にもう一つビデオカード追加して、4画面化(実際は一番右側を共有しているので、5画面ですが・・・)して、リモートディスクトップで繋ぐようにしました。

おかげで、色々とコピペ出来るようになったので、大変便利になりました。

まあ、基本的にメールやラインは、ノートPCの方が色々と都合がいいので、この形が自分的にベストな感じです。

ただ、R620君、ビデオカードが増えると、ファンが少し五月蠅くなったんですよ~

次は、防音対策しないと

録画用PC

  • 2020/06/24 13:35

810.jpg

EpgTimer+PT-1で録画用にしているPCがあるんですが、PCなんで当然他のアプリも起動しているわけです。


再生は、MPC-BEで再生しているんですが、一時停止や早送りなんかをいちいちマウス操作しないといけないのが面倒になってきました。

最近、こんなことばかり言ってるよなぁ~

専用PCにすればいいんでしょうけど、他のアプリも走っているんで、再生中にウインドウがアクティブじゃなくなっちゃうと、スペースキーとか受け付けないっていうか、別のアプリにキーを送っちゃうんです、ハイ
で、何とかならないかな~っていろいろ探していると、HidKeySequence.exeと、SendKey.exeを見つけた。

この2つを使って、10年前に購入した、USBテンキーを、ファンクションキーボードにしてみましょう。

HidKeySequenceは、キーボードデバイスを個別に認識するので、テンキーからのみ受け付けるようにできます。

押したテンキーを受け付けて、別のキーやマウスを含む動作を定義できます。
当初、マウスとのコンビネーションで設定していたんですが、連打するとダブルクリック扱いになって、別の動作が始まったるするんで、SendKeyの出番です。


SendKeyは、特定のアプリにキーコードを送ってくれるんでHidKeySequenceから、SendKeyに引数を付けて起動すれば、ウインドウがアクティブじゃなくても、動作させられます。


[テンキーのEnterで一時停止・解除を設定する場合]
SendKeys.exe "MPC-BE" [#32]


これで、一時停止が出来るようになりました。


他のキーも割り当てて、快適になりました。


これ、すっごく便利、他のアプリでも使えそうです。


テンキーがプログラムファンクションキーになるんです、あとはいつかシールでも作って貼ろうかな。

モニターの取り付け位置変更

809.jpg

キーボードやマウスを机から追い出したんですが、モニターは増えていきます。

実際、目の前に6面あります・・・・( ノД`)シクシク…

そうなると、机の上がまた圧迫されてきたので、モニターアームを導入しました。

2面×3本です

しかし、違うメーカーのモニタって、VISAの取り付け位置がこんなに違うとは思ってなかったです。

多少誤差があっても、センター付近だと思っていたんですが、LGのモニターと、LENOVOのモニターで、60~70mm取付位置が違うんです。

仕事で、縦で使用する事もあるんですが、LENOVOだと、大きく頭を振る形になります。

LGだと、ほぼセンターを中心に回転するんですが。

さて、そのモニターの中に、1つだけちょっとインチ数が小さい、モニター兼テレビがあるんですが、これがどうしても高さが合わなく、下のモニターと干渉してしまうので、VISAブラケットの取り付け位置を変更しました。

高さ変更するVISAブラケットも売ってるんだけど、高いのよコレ、モニターアームもう一個買えちゃう。

って訳で、ホームセンターで良さげなステー探してきました、本当は200mmのものが欲しかったんですが、150mmしか無かったので、とりあえず購入。

これで、35~40mmしか移動出来なかったんですが、後はアームの調整機能で、ギリ合わせた感じです。

実はこの後、このステーを、LENOVOのモニターに移動して、今度は35mm下げました。

今日手に入れた、IODATAのモニターが、LENOVOモニターよりちょうど35mm低かったんで・・・・(写真撮り忘れたので、テレビの方の写真です)

温度管理

サーバーを見に行かなくて良くなったんで、もう一つやりたかった事をやろうかと。

約10年以上前なんですが、猛暑の夏を乗り切れなかったPCが1台、月曜日に出勤すると、ブルースクリーンが出ていて、色々調べているとメモリーが熱でやられていました。

次の年から、サーバー機に入れ替えたおかげで、その後の猛暑も乗り越えてきたんですが、朝出勤するとファンが全開でとっても五月蠅い。

さらに、部屋が排熱でとっても熱い・・・

今年は猛暑だと言う噂もあるし、サーバーが増えたことと、常時電源が入っている、PCもあるので何とかしなければ。

KURO-RSは持っているんですが、エアコンの赤外線リモコンは、情報量が多いため、未対応。

って事で、トラ技やCQなんかとタイアップしている、ビット・トレード・ワンの赤外線リモコンキットを購入してみました。(AD00020)

このキット、フリスクサイズの基盤なんで、老眼の私には半田付けが辛い・・・

何とか完成して、HPからソフトをダウンロードして、テスト、無事動作の確認が出来ました。

ハード面は何とかなりそうなので、ソフトにかかります。

まず、温度の取得です。

USB温度計を購入しようかとも思ったんですが、PC内部には色々と温度センサーがあるんで、使えるものを探してみます。

CPUやGPUは負荷状態でかなり変動するので使えない、マザーボードの温度かHDDの温度が良さそう。

室温を色々と変えて、関係性をモニタリングしてみると、HDD温度が室温+10℃ぐらいでで推移していて、これが使えそうです。

当然、正確に+10℃ではなくバイアスがかかっているんですが、筐体の中の温度と言うことで、これを使おうと思います。(うちのマザーボードの温度は、良くわからない動きをするので・・・)

って分けで、HDDのS.M.A.R.Tから温度情報を取得します。(C#)

                ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\WMI", "SELECT * FROM MSStorageDriver_ATAPISmartData");
                foreach (ManagementObject queryObj in searcher.Get())
                {
                    byte[] arrVendorSpecific = (byte[])queryObj.GetPropertyValue("VendorSpecific");
                    int tempIndex = Array.IndexOf(arrVendorSpecific, (byte)194);
                    hddchk[0] = arrVendorSpecific[tempIndex + 5].ToString() ;
                }

さて、この情報を元に赤外線リモコンでエアコンを入れれば・・・・

提供されているDLLって、32ビットなんだよ~、アプリは64ビット

リモコンアプリのソースも公開されているんで、USBデバイスを直接操作って手もあるんですが、何か方法を考えてみます。

BtoIrRemoconってプロンプトアプリがあるんですが、うちの環境では何故かうまく動作しないんで、作ってみました。

[C# x86]

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using Microsoft.Win32.SafeHandles;
using USB_IR_Library;

namespace IRCommand
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            int i_ret;
            SafeFileHandle handle_usb_device = null;    // USB DEVICEハンドル
            string[] cmds = System.Environment.GetCommandLineArgs();
            byte[] data = new byte[103];
            byte[] code = new byte[100];
            if (cmds.Length > 1)
            {
                for (int i = 0; cmds[1].Length / 2 > i; i++)
                {
                    data[i] = Convert.ToByte(cmds[1].Substring(i * 2, 2), 16);
                }
                int mode = (int)data[0];
                int ilen1 = (int)data[1];
                int ilen2 = (int)data[2];

                for (int i = 0; i < 100; i++)
                {
                    code[i] = data[i + 3];
                }

                try
                {
                    // USB DEVICEオープン
                    handle_usb_device = USBIR.openUSBIR(this.Handle);
                    if (handle_usb_device != null)
                    {
                        // USB DEVICEへ送信 パラメータ[USB DEVICEハンドル、フォーマットタイプ、送信赤外線コード、赤外線コードのビット長]
                        switch (mode)
                        {
                            case 1:
                                i_ret = USBIR.writeUSBIRex(handle_usb_device, USBIR.IR_FORMAT.AEHA, code, ilen1, ilen2);
                                break;
                            case 2:
                                i_ret = USBIR.writeUSBIRex(handle_usb_device, USBIR.IR_FORMAT.NEC, code, ilen1, ilen2);
                                break;
                            case 3:
                                i_ret = USBIR.writeUSBIRex(handle_usb_device, USBIR.IR_FORMAT.SONY, code, ilen1, ilen2);
                                break;
                            case 4:
                                i_ret = USBIR.writeUSBIRex(handle_usb_device, USBIR.IR_FORMAT.MITSUBISHI, code, ilen1, ilen2);
                                break;
                        }
                    }

                }
                catch
                {
                }
                finally
                {
                    if (handle_usb_device != null)
                    {
                        // USB DEVICEクローズ
                        i_ret = USBIR.closeUSBIR(handle_usb_device);
                    }
                }
            }
            Application.Exit();
        }
    }
}

フォームには何も入れない空です。
フォームアプリにしたのは、この先何か追加するかもしてないからです。
これに、赤外線リモコンのアプリで取得したコードを引数で与えると、動作しました。
あとは、アプリからプロセス起動させれば、温度によって、エアコンを入れたり、消したり出来るようになりました。
あと一つ問題は、設置場所です。

ネット上では、赤外線の出力が弱いという噂がありましたが、近づけても動作しない時がありました。

通常砲弾型のLEDの場合、先端から直進する部分が一番出力が強く、角度が付くと、減衰していくんです。

このキットに含まれているLEDは、50% Power Angle が15degなんで、ほぼ直進するはずなんdすけど、離して変な角度のほうが認識率が高い(反射かな)

猛暑が来るまで色々と探ってみます。

サーバーのRAID状態

  • 2020/06/09 07:49

807.jpg

R620を導入して、色々と整理していったんですが、ソフトRAIDのサーバー3台の、RAID状態を確認するのが面倒になってきました。

ほんの数分の作業なんですが、なんとなく毎日やるのが面倒・・・歳かな

ターミナルでサーバーにログインして、cat /proc/mdstat するだけなんですけどね。

ハードRAIDのサーバーは、表示ランプやLCDがあるので一目瞭然なので楽なんです。

もう一台、データ収集用PCが常時稼働していて、これでサーバ容量の監視をしているんですが、これにちょっと組み込んでみようかと。

ちなみに、組み込むのは、時代遅れのCoreDuo2 Q6600 Windows7のマシンなんですが、色々あってアップグレード出来ないんです(最近までWindowsVistaでした笑)

 

そうと決まれば、さっそく組み込みです。

ソースがC#なので

                for (int iloop = 1; iloop < 4; iloop++)
                {
                    ConnectionInfo info = new ConnectionInfo(ipAdd[iloop], 22, "****", new AuthenticationMethod[] { new PasswordAuthenticationMethod("USER", "PASSWORD") });
                    SshClient ssh = new SshClient(info);
                    ssh.Connect();
                    if (ssh.IsConnected)
                    {
                        SshCommand cmd = ssh.CreateCommand("cat /proc/mdstat");
                        cmd.Execute();
                        var stdOut = cmd.Result;
                        var stdErr = cmd.Error;
                        if (stdOut != string.Empty)
                        {
                            string[] rd = stdOut.Split('/');
                            string[] rd1 = rd[1].Split('[');
                            string[] rd2 = rd1[1].Split(']');

                            hddchk[iloop] = rd2[0];
                        }
                        ssh.Disconnect();
                    }
                }

を、1日1回実行する関数に追加(ユーザー名とパスワードはひみちゅ)

iloop=0は自分自身でRAIDが無いので除外です。

正直、正規表現など使えば、取得した文字列の分解はもっと簡単になるんでしょうけど、フォーマットが変わったときのデバッグ用です。

あくまで、自分用なので・・・・客先用だとちゃんとしますよ。

これで、いちいち確認に行かなくても良くなりました。

 

ページ移動

ユーティリティ

新着エントリー

ううっ、頭の中がぁ
2020/07/11 16:13
だあああぁぁ
2020/07/09 16:32
もう一つ忘れてた
2020/07/08 08:58
うまくいった
2020/07/04 16:20
やっちまった
2020/07/03 23:21

新着コメント

Re:2017ふれまにっ杯募集
2017/01/30 from tatsuru3284
Re:ついに
2016/03/18 from redinpules.stt.TV
Re:ついに
2016/03/17 from Tatsuru
Re:ついに
2016/03/17 from redinpules.stt.TV
Re:県オープンの余韻
2016/02/18 from Tatsuru

過去ログ

Feed