いつものしらべてもでてこない

調べた事を書きます

Windows Media Playerで前回再生したリストの曲からレジュームしたい

Windows Media Playerは前回再生したリストの曲からレジュームは出来ないが曲の頭から再生は出来る

 Windows10のWindowsMediaPlayer(WMP)は前回終了時に再生を中断した場所、曲の途中から再生を再開する事(レジューム)は出来ませんが前回再生していたリストの曲から再生を再開する事が出来ます。

前回再生していたリストの曲から再生する

 WMPを起動すると右側の再生タブが開かれていて 未保存のリスト が表示されていると思います。
← 未保存のリスト →
この←左矢印をクリックすると 最終再生リスト に移動します。このリストは前回再生していた曲を覚えている(カーソルが終了時の状態になっている)ので前回再生していた曲から再生を再開する事が出来ます。Ctrl+Pで再生と一時停止、Ctrl+Sで停止出来ます。

以上です。

Windows10で「バックアップは完了しましたが、一部のファイルがスキップされました」となる場合にWindowsMediaPlayerのアルバム情報を削除する方法。

 Windows10のWindowsMediaPlayer12でエクスプローラーからファイルを直接削除するとアルバム情報が削除されずに残り「バックアップは完了しましたが、一部のファイルがスキップされました」となる場合にアルバム情報を削除する方法。
 アルバムのフォルダをコピーして編集して色々試していたらバックアップは完了しますがエラーが発生するようになりました。これを解決する方法です。
 作業としてはxmlファイルをメモ帳で編集して保存するだけです。ただし念の為にアルバムリストからも編集して削除しておきます。

Music.library-msから削除する。

 スタートメニューをクリックするかWindowsキーを押すかCtrl+ESCを押した後に%appdata%と入力しEnterキーを押してappdataフォルダを開きます。
 %appdata%以下のフォルダを開きます。
AppData\Roaming\Microsoft\Windows\Libraries\Music.library-ms
フォルダを開くと以前削除した現在使用できないフォルダが表示されているのが確認できると思います。

 実はこのミュージックフォルダ、Music.library-msと言うのはxmlファイルで拡張子が.library-msと言うファイルです。xmlファイルはテキスト形式です。よってこれを直接編集して削除します。
 フォルダを1つ上に戻ってAppData\Roaming\Microsoft\Windows\Librariesを開きます。
 ミュージックフォルダをメモ帳にドラッグアンドドロップして開きます。
 該当部分を削除して上書き保存します。
<searchConnectorDescription>
アルバム名、情報
</searchConnectorDescription>
searchConnectorDescriptionの行を含むこれによって囲まれた部分を削除してください。

 削除した後にエクスプローラーでMusic.library-ms(ミュージック)をフォルダとして開くと削除した部分が消えた事を確認できます。

WindowsMediaPlayer上のアルバム情報の削除。

 WindowsMediaPlayerに表示されているアルバム情報を削除したい場合です。削除して表示されなくなったアルバム情報が含まれている場合があります。
 %appdata%以下の次のフォルダを開きます。
AppData\Local\Microsoft\Media Player
このフォルダにアルバム情報が入っています。

 wmpfolders.wmdbをメモ帳等のテキストエディタで開きます。
 xml形式でデータが入っているので不要な<Dir ... />部分を削除します。
 上書き保存して閉じます。
 他のファイルはバイナリファイルの為、開いてもちゃんと読めず上手く変更できません。ファイルを削除しても基本的には再作成されます。その為、削除すると容量が減ってファイルの中身が綺麗になる事があります。

以上です。

Windows10でデスクトップ個人設定背景のスライドショーの一覧をレジストリエディタを使ってリストから削除する。

 エクスプローラーで画像を開こうと思ったら背景画像に設定されてしまう事があります。スライドショーの一覧からこれを削除したい、その方法です。背景画像も同じ方法で一覧から削除できます。

 背景の一覧はレジストリに保存されています。その為レジストリエディタを起動して削除します。削除の際に誤って設定を消してしまっても元に戻せるように画面左側に表示されているキー(フォルダと似た見た目の物)をエクスポートしておくと安心です。

レジストリエディタでスライドショーの値を削除する。

 スタートメニューをクリックしてregeditと入力しEnterキーでレジストリエディタを起動してください。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Wallpapers を開く

 スタートメニューをクリックするかWindowsキーを押します。
 regeditと入力してEnterキーでレジストリエディタを起動します。

 以下のキーを開きます。キーボードのキーを押すとその頭文字の所に移動するのでキーを開くごとに1回ずつ押すのがお勧めです。
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Wallpapers

 Wallpapersのキーを開くと背景画像とスライドショーの値が並んでいます。

スライドショーの数を調節する

 SlideshowSourceDirectoriesSetは1になっていると思いますそのままにしておきます。
 SlideshowDirectoryPath1~SlideshowDirectoryPathNがスライドショーのフォルダリストです。リストは左側から順に番号が振られていて選択する事によって並び替えが可能です。削除して個人設定を開きなおすと自動で番号が詰められるので何番目か確認して削除しましょう。値は一見してわかる形式ではないので複数ある中から1つだけ削除したい場合は元に戻せるようにキーをエクスポートしておく事をお勧めします。
 個人設定からスライドショーの一覧が消えたことを確認したらレジストリエディタを閉じます。


以上になります。

ThunderbirdとSeaMonkey Mail間でメールアカウントやメールボックスを共有したり移行する方法。

 ThunderbirdSeaMonkeyのどちらも使いたいがデータが2つになるのは避けたいまたは移行したい、設定ファイルはアカウント等がpref.js、アドレス帳はabook.mab、メールボックスはMailまたはImapMailフォルダに入っていて基本的にはこれらをコピーすれば良いですがメールボックスは共通で1つにしておきたい、その方法です。
複数のPCで1つのメールアドレスを使う際も参考になると思います。
 具体的には両者のメール保存形式が同じmbox形式でそのまま使える為シンボリックリンクを使います。そして両者ともに同じMozillaGeckoエンジンを持ったアプリケーションで共通の設定で動くので設定ファイルをコピーして設定します。共有する前にファイル破損対策としてプロファイルフォルダの自動バックアップを必ず取るようにしてください。
 通常の利用方法ではないのと作業中や作業後にメールボックスを破損する恐れがある為、内容を良く理解した上で実行してください。メールアカウントのフォルダだけをリンクする事も出来ます。

メール共有の事前準備

 必要なのは「メールを受信した際にサーバに残しておく」と言う設定でこれは複数の端末で受信する際にも必要になります。メールボックスを2つのアプリケーションで共有しなくてもこれをしておけばほぼ大丈夫ですが共有はしていないので根本的な解決にはなりません。
 メールを受信する際には「サーバから削除する」か「サーバに残しておく」か設定できます。サーバから削除するのはサーバの容量を減らすためでこれは将来的には必須です。サーバに残しておく場合はメールボックスが一杯にならないように「受信したら何日後に削除する」と言う設定をします。サーバに残しておく場合はメールを受信するとリストを作成し同じメールは受信しなくなります。これにより他の端末で受信する事が可能になります。
 メールボックスを1つの端末内の複数のアプリケーションで共有する場合はシンボリックリンクを使います。その為コマンドプロンプトでの作業が必要になります。ジャンクションでも可能だと思いますがシンボリックリンクに比べてあまり推奨されていません。Mail(ImapMail)フォルダをリンクする方法とアカウントのフォルダをリンクする方法があります。
 プロファイルについてはデフォルトで作成されるプロファイルを使用している前提で説明します。プロファイルの選択を間違えないように注意して作業してください。

 各アプリケーションでメールアカウントを作成し設定が済んだら必要なファイルが出来上がるので終了してください。終了したらMailフォルダかプロファイルのバックアップ又はコピーを取っておきます。Mailフォルダを共有したい場合はメールボックスを上書きしないようにMailフォルダの中身をもう片方のアプリのMailフォルダの中に移動したらこれを共有するフォルダとして使います。共有しない側のフォルダは削除しておきます。メールアカウントのフォルダだけを共有する場合は新規に作成した同じメールアカウントのフォルダを削除してください。

メールを受信した際にサーバに残しておく設定

設定を開く

Thunderbirdの場合は右上の(横三本線)をクリックし「オプション」をクリック、「アカウント設定」をクリック。
SeaMonkeyの場合は上のメニューバーの「編集」をクリックし「設定」をクリック。
もしくは左のフォルダーペインのメールアドレスを右クリックしメニューの「設定」をクリックします。

アカウント設定

アカウント設定の画面が開いたら「サーバ設定」をクリックします。
中程に「サーバ設定」、その中に「新着メッセージがないか起動時に確認する」がありその下に「ダウンロード後もサーバにメッセージを残す」があります。
「ダウンロード後もサーバにメッセージを残す」をクリックしてチェックします。
その下の「ダウンロードしてから何日以上経過したメッセージは削除する」もクリックしてチェックします。ここの日数は14日にしておきます。

設定が終わったら右下の「OK」をクリックして設定を閉じます。

設定のコピー

 コピーしたい方へpref.jsとabook.mabをコピーします。
 エクスプローラーのアドレスバーかスタートボタンをクリックして%appdata%と入力します、スタートから入力するとフォルダの候補が出るはずです、Enterキーでフォルダを開きます。下の2つのどちらかでも大丈夫です。
%AppData%\Mozilla\SeaMonkey\Profiles
%AppData%\Thunderbird\Profiles

 Profilesの中に~.defaultと言うフォルダがあるのでそれを開きます。そこにpref.js ,abook.mabがあります。これらを右クリックメニューからコピーしてコピー先の~.defaultフォルダを開いて貼り付けます。アドレス帳が移動できない場合はエクスポートすれば他でインポートできます。
 それぞれのアプリケーションを1度起動してメールアカウントを作成し設定しておきます。2つ方法がありメールアカウントのフォルダを共有する方法とMailフォルダを共有する方法があります。メールアカウントのフォルダを共有する方が問題が少ないと思いますがMailフォルダをリンクした方が楽だと思います。Mailフォルダを共有する場合はフォルダが存在しているとシンボリックリンクを作成できない為、必要のない方のMailフォルダをコピーした後に削除してください、コピーしたファイルはリンク後に追加するので必要になります。

メールボックスの共有

 どちらを基準にしたいのかによりますがSeaMonkeyの方がファイルが多いようなのでSeaMonkeyのフォルダを基準に説明します。Mailフォルダをリンクする場合はThunderbirdのMail、ImapMailフォルダがあるとリンク作成が出来ないので削除しておきます。Thunderbirdを主体に使う方がお勧めです。普段メールを受け取っていた側のデータを新しい方に移動するかそのまま残す様にしてください。事前にバックアップは必ず取っておいてください。
 スタートボタンをクリックしたらcommandと入力しEnterキーでコマンドプロンプトを起動します。管理者権限が必要な場合はCtrl+Shift+Enterで起動してください。
 先ほどエクスプローラーで開いた~.default\Mailフォルダのアドレスバーの右の空いている部分を適当にクリックしてアドレスを文字列表示させます。
 アドレスの文字列が反転して選択されていると思うのでCtrl+Cを押すかこれを右クリックして「コピー」をクリックします。

 シンボリックリンク作成の書式は次の通りです。コマンドプロンプトで実行してください。フォルダ(ディレクトリ)作成の為に/Dオプションを付けます。
mklink /D リンク元 リンク先

mklink /D (半角スペース)まで入力したらCtrl+Vで先ほどのアドレスを貼り付けTabを押すと"で囲まれるので半角スペースを入力します。
 mklink /D "リンク元.default\Mail" あ(半角スペース)まで入力します。メールアカウントだけをリンクする場合はmklink /D "リンク元.default\Mail\outlook.com" の様にしリンク先も同様にしますがこちらはアカウントの数だけリンクを作成する必要があります。
リンク先はThunderbirdのフォルダなのでそちらをエクスプローラーで開き同様にアドレスをコピーして"を入力したらコマンドプロンプトに貼り付けて"を入力します。
mklink /D "リンク元.default\Mail" "リンク先.default\Mail"の入力ができたと思うのでEnterキーで実行します。
これでフォルダのシンボリックリンクが作成されました。リンク元のフォルダを開くとリンク先のフォルダに移動していると思います。シンボリックリンクについては調べてみてください。
 共有の為の作業は以上です。

移行できないもの

 ユーザーが追加した設定。追加したタグや追加したカスタムヘッダー等。

メールを共有して使う

 メールボックスが共通のファイルで同時書き込みで破損するのを防ぐ為に2つのアプリで同時に受信しないようにしてください。
メールパスワードを保存している場合は片方は自動で受信する設定を解除しアプリケーションを同時に起動せず手動で受信するようにしてください。
今後大きな変更があった際に問題が発生する可能性がある為自動バックアップは必ず取っておいてください。


以上です。

玄人志向Sil3132RでRAID1(ミラーリング)を削除(解除)してBIOSを切り普通のSATAポート2つとしてHDDを2台使う方法

題の通りで玄人志向のSil3132RでRAID1をしている状態でRAIDを使わずにSATAポートを2つ、2台のHDDで使いたい場合の方法です。
製品にバージョン違いがあるらしく、最近の物だとBIOSを切る事ができない様なのでその場合はBIOSから操作できなければRAIDを切って使う事は不可能だと思います。
作業をする前に基盤を見てBIOSと書かれたジャンパーピンがあるか確認して下さい。

RAID1(ミラーリング)を解除してもHDDのデータは消えません。Windowsでフォーマットした場合は例えばNTFS形式で2台に全く同じデータが入っています。
RAID0(ストライピング)の場合はそもそもデータを1台では保持していないので1台からデータは読み取れません。
concatinate、マトリックス形式の場合は単に連結して容量を足しているだけなので1番目のドライブの容量分は読み取れる様ですが2台目以降の分は物による様です。

先にバックアップを取りたい場合は一番下を先に読んでください。
4ポート版は4ポート個別には使えませんと仕様に書いてあった気がします。

手順

RAID1(ミラーリング)を削除する

PC起動時に画面の指示に従いF4キー等を連打してRAIDカードのBIOS画面に入ります。
RAID1を解体してHDDを2台で使いたいだけなら削除する必要は無いと思いますが確認していません、綺麗にする為に削除します。RAID1の削除には2TBのHDDで15分程度掛かります。
終わったらPCの電源を切り電源ケーブルを抜きます。
10秒ほど経ったらPCの前面や裏の金属部分を触って帯電若しくは静電気が溜まっていないかどうか確かめます。

RAIDカードのBIOSをoffにする

基盤の端にシルク印刷でBIOSと書かれたジャンパーピンが挿してあると思います。ジャンパーピンを隣に挿してoffに設定します。
"BIOS 1-2 on, 2-3 off"の様に書かれていると思うのでジャンパーピンを2-3に差し込みます。

OSを起動してドライバをインストールする

RAIDカードのBIOSを切ってPCを起動します、するとSil3132RRAIDドライバでは機能しない為、Sil3132SATAドライバを入れる必要があります。
ドライバCDから検索させて適したドライバをインストールします。

片方のHDDをオフラインからオンラインにする

ドライバのインストールが済むとHDDデバイスが自動的にインストールされてHDDが1つ表示されます。
もう1つのドライブはオフラインになっています。理由は同じIDのドライブが2つ接続された為に片方がofflineにされたからです。
コンピューターを右クリックし「管理」を開いて「ディスクの管理」から該当するオフラインのドライブを右クリックしオンラインにすれば2つとも表示されます。
ドライブレターが割り当てられていない場合は同様に右クリックメニューから「ドライブ文字」を割り当ててください。

バックアップについて

特殊なRAID1でない限りはRAIDを削除してもデータと言うよりディスク情報が削除される事は無いと思いますが管理方法や削除方法が違う場合はこの限りではありません。
そもそもRAID1は設定後なら1台でも動作可能(と言うか故障時の為に2台に同じデータを保存している)なので1台にしてもう1台は別の方法で接続して確認、データが読めなければフォーマットしてデータをコピーすると確実で良いと思います。
RAID1に限らず一般的にRAIDで使っていたHDDは故障しやすい状態になっている可能性が高いと思われます、SMART情報を確認し早期に新しいドライブの購入をお勧めします。


以上、よく確認し自己責任でお願いします。

サポート期限切れのWindows7 32bitを初めてインストールしインターネットに接続して認証しようとしたらエラーで出来ない場合にKB2533552を適用し認証、WindowsUpdate、更新する方法。

Windows7 SP1 32bitについて、通常サポートが終了した2020年4月現在ではインターネットに接続するだけだとライセンス認証が出来ない様だ。
同様にWindowsUpdateも出来ない様で再インストールするとちょっと困った状態になる。TLS1.2は関係あるのだろうか。
そこでKB2533552をインストールしてライセンス認証、WindowsUpdateする方法。

正直な所、本当にこれの所為だったのかは疑問ではあるがRyzenに32bit環境と言う事と新規のWindowsが必要かもしれない、再インストールすればわかりそうだが。
ライセンス認証は出来たがWindowsUpdateが出来なかっただけかもしれないので本記事に関しては「認証と更新を取り違えている可能性がある」と思って欲しい。

KB2533552のダウンロード

ライセンス認証をしておらずWindowsUpdateが出来ない状況なのでMicrosoftUpdateカタログ(WindowsUpdateカタログ)からダウンロードする必要がある。
これはWindows7付属のInternetExplorerのバージョンで出来ると思うが出来ない場合はFirefoxEsrやその他のブラウザ、その他のPCからダウンロードして持ってくる必要がある。
MicrosoftUpdateカタログを開いたらKB2533552をコピペ入力して検索するとダウンロード出来る。面倒なのでファイルの直リンクも記載しておく。
www.catalog.update.microsoft.com

次の様なページが表示されるのでWindows7用をダウンロードする。
f:id:bannan:20200405115457p:plain
ちなみに2020年1月以降のファイルは延長サポートに入っていないサポート期限切れのWindows7ではダウンロードできても実行できないものが殆どなので注意。

KB2533552.msu

http://download.windowsupdate.com/msdownload/update/software/crup/2011/05/windows6.1-kb2533552-x86_f2061d1c40b34f88efbe55adf6803d278aa67064.msu

ダウンロードしたらダブルクリック等で実行する。
終わったらライセンス認証する。

ライセンス認証

KB2533552を適用したのでライセンス認証する。
f:id:bannan:20200405112938p:plain

ライセンス認証できた。
以上。

ファイルの日付文字列から更新日時や作成日時をPowerShellを利用して一括変更する方法。フリーソフト。

2020年04月05日コード部分を更新。

スマホでファイルを移動していたら更新日時が書き換えられて写真の並び順がばらばらになってしまった。
どうやら本体の内蔵メモリからSDカードの様な別のデバイスに移動すると更新日時が再設定されるようだ。
これをPowerShellを利用して一括変更する方法。

PowerShell ISEを利用すればセキュリティ設定を変更しなくてもps.1ファイルからISEを起動して実行できます。
キーボードでのショートカット操作が下の方に書いてあります。
ps.1ファイルを選択した状態でアプリケーションキー又はShift+F10,EPowerShell ISEを起動したらCtrlを押しながらIACDVの順にキーを押して「Enterキー」で実行できます。

概要

Android等のスマホのファイルをSDカードに移動した上でスマホから取り出してPC上でPoweShellのファイルを実行して更新日時を変更します。
直接変更はadb shellを使えば出来るでしょうが一括処理はやや難しいと思います。
以前の記事の改良版になります。

以前の記事もご覧下さい。
bannan.hatenadiary.jp

PowerShellで一括変更。

フォルダ内の該当ファイルのみ変更しフォルダについては変更しません。
フリーソフトと書いてありますがプログラムをコピペしてPowerShellスクリプトファイルを作成します。ただしスクリプトファイルを実行する場合はセキュリティ設定の変更が必要になります。
セキュリティ設定を変更せずに実行したい場合はPowerShellを起動してスクリプトをペーストすれば実行できます。この場合はスクリプトファイルを作成する必要はありませんが何度も実行する場合はスクリプトファイルを作成しておいてコピペすると楽です。

ファイル名について

ファイル名から日時を設定するのでファイル名に日時の文字列が必要です。
一般的な YYYY-MM-DD_HH-MM-SS と言う様な形式になります。
様なと言うのは正規表現を利用して数値の間の接続文字はあってもなくても良い様にしてあるので桁数さえ合えば変更処理が出来るようにしています。(例、photo_2020w3i4_5432-01.jpg)
ファイル名の変更については以前の記事のFlexbleRenamerの部分をご覧下さい。

PowerShellについて

作成するフリーソフト?はテキストファイルにコピペして拡張子を.ps1に変更するだけのものです。
署名無しのPowerShellを使用する設定をした事が無い場合は右クリックから実行できません。
詳しくは説明しませんが「検索」か「エクスプローラーのアドレスバー」にPowerShellと打ち込んで「Enterキー」を押し起動したら Set-ExecutionPolicy RemoteSignedを入力して「Enterキー」を押 しておけば大丈夫だと思います。
RemoteSignedに設定するとセキュリティ上の危険性が少し高くなります、その為実行後は元の設定かRestrictedに変更しておく事をお勧めします。


PowerShellを使用する設定についてはこちらをご覧下さい。
https://technet.microsoft.com/ja-jp/scriptcenter/powershell_owner05.aspx?f=255&MSPPError=-2147217396technet.microsoft.com

www.atmarkit.co.jp


管理者権限が必要な場合はPowerShellCtrl+Shift+ENTER で管理者権限で起動して実行するか一時的にUACを切る等してください。

interprism.hatenablog.com

PowerShellのコード

デスクトップかエクスプローラーの右側の空白の適当な所を右クリックしてテキストファイルを作成してください。
テキストファイルを作成したら下のコードをドラッグして選択し右クリックメニューからコピーを選んでテキストファイルの方に貼り付けてください。
貼り付けたらファイル名と拡張子を TouchMe.ps1 に変更してください。
拡張子が表示されていない場合はエクスプローラーの設定で「登録されている拡張子は表示しない」のチェックを外してください。

拡張子を表示する方法
https://support.microsoft.com/ja-jp/help/978449


コードと処理に対応するファイルの名前。ファイルの名前の形式にある括弧内の物は有っても無くても可。日付の後のコメント部分は日本語対応。
(数字以外の文字)、日付時間の数字YYYYMMDDhhmmss形式(ハイフン等の接続文字を含む)、(ドット"."以外の文字列)、ドット"."、拡張子。

# This program is to set "CreationTime" and "LastWriteTime" with DateTime from Filename.

$args = Get-ChildItem -Path *;
foreach ($arg in $args) {
 # exclude directory
 if($arg.GetType().Name -eq "FileInfo"){
 # regular expressions, name + datetime + dot + file extension.
  $regex = [regex]"^[^\d]*(\d{4})[^\d]?(\d{2}|0?\d)[^\d]?(\d{2}|0?\d)[^\d]?(\d{2})[^\d]?(\d{2})[^\d]?(\d{2})[^.]*\..+$";
  $m = $regex.Matches($arg);
  if($m[0] -ne $null){
    # validation
   $num = [Int]("{0,0:#}" -f $m[0].Groups[2]);
   if($num -lt 1 -Or $num -gt 12){
    Write-Output("$arg : $num is not valid month.")
    continue;
   }
   $num = [Int]("{0,0:#}" -f $m[0].Groups[3]);
   if($num -lt 1 -Or $num -gt 31){
    Write-Output("$arg : $num is not valid day.")
    continue;
   }
   $num = [Int]("{0,0:#}" -f $m[0].Groups[4]);
   if($num -lt 0 -Or $num -gt 23){
    Write-Output("$arg : $num is not valid hour.")
    continue;
   }
   $num = [Int]("{0,0:#}" -f $m[0].Groups[5]);
   if($num -lt 0 -Or $num -gt 59){
    Write-Output("$arg : $num is not valid minute.")
    continue;
   }
   $num = [Int]("{0,0:#}" -f $m[0].Groups[6]);
   if($num -lt 0 -Or $num -gt 61){
    Write-Output("$arg : $num is not valid second.")
    continue;
   }
   # end of validation
   
   # datetime
   $dtime = "{0,0:#}/{1,0:#}/{2,0:#} {3,2:##}:{4,2:##}:{5,2:##}" -f $m[0].Groups[1], $m[0].Groups[2], $m[0].Groups[3], $m[0].Groups[4], $m[0].Groups[5], $m[0].Groups[6];
   Write-Output("$arg set $dtime");
   # 作成日時を設定
   Set-ItemProperty -LiteralPath $arg -name CreationTime -value $dtime;
   # 更新日時を設定
   Set-ItemProperty -LiteralPath $arg -name LastWriteTime -value $dtime;
  }
 }
}

コード終わり。

日付のチェック処理で01の様な文字をSystem.Text.RegularExpression.MatchCollection型からInt型にキャストする方法がどうにも見つからなかった為、正規表現で01の様な数字の場合に先頭の0を無視する形式で文字を取り出して型変換エラーを出さないようにしているが後ろの3グループの数字についてはしていない。

使い方

PowerShellスクリプト.ps1ファイルを変更したいファイルがあるフォルダにコピー又は移動して右クリックしメニューからから「実行」をクリックするだけです。

セキュリティ上の問題でPowerShellスクリプトファイルを実行できない場合はPowerShell上でスクリプトを入力、ペーストして実行する事が出来ます。右クリックメニューの編集からはPowerShell ISEを起動でき下の部分がPowerShellになっています。右クリックメニューの編集(E)はShift+F10,Eです。PowerShell ISEで実行したい場合はCtrlを押しながらIACDVの順にキーを押して「Enterキー」で実行できます。慣れると一瞬で実行できます。
PowerShell上から実行したい場合は該当フォルダを開いて「アドレスバーの空欄部分」をクリックし PowerShell と入力して「Enterキー」を押してPowerShellを起動してください。
PowerShellスクリプトのファイル名を打ち込んで「Enterキー」を押し実行すると変更のログを見る事が出来ます
その際は出力結果をテキストファイルにリダイレクトしておくと便利です。
TouchMe.ps1 > TouchLog.txt

日付が変なファイルがあるとログに残るのでわかります。
ログに出ないファイルは名前を見て日付となる数字が見つからなかったファイルです。

注意

フォルダ内の日付変更のみのプログラムで動作確認はしてありますがPowerShellの実行許可も含め自己責任でお願いします。


処理がすっきりした。
以上。