VBAでテキストファイルを作成して、データを記入するようなコードを作った時に、このデータを処理する時にエラーが発生した
原因は、Windows11のメモ帳がUTF-8がデフォルトに変わった為で、ANSIで処理する際に不具合が起きた
起動オプションを付けることで解決
shellPath = “notepad.exe /a ”
Shell shellPath, vbNormalFocus
VBAでテキストファイルを作成して、データを記入するようなコードを作った時に、このデータを処理する時にエラーが発生した
原因は、Windows11のメモ帳がUTF-8がデフォルトに変わった為で、ANSIで処理する際に不具合が起きた
起動オプションを付けることで解決
shellPath = “notepad.exe /a ”
Shell shellPath, vbNormalFocus
セットアップは、USB フラッシュドライブに Windows をインストールすることはできませんの表示でインストールできない
何かのきっかけで通常の内蔵ディスク (ハードディスク、SSD) にインストールされている Windows が、Windows To Go で起動されている環境と誤認されているのが原因
Windows To Go 環境と誤認されている状態を回復するには、以下のレジストリ値を削除するか、データを 0 に設定します。
キー : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
名前 : PortableOperatingSystem
変更後に再起動
以下は、通常不要な操作だが、参考としてメモ
内蔵ディスクと重複している USB デバイスのディスク ID を削除するには、USB デバイスを接続した上で以下の手順を実行
※USB デバイスの内容が削除されるので、事前に必要に応じてバックアップして、復元する処理が必要
コマンドプロンプトを管理者で実行
diskpart
list disk
表示されたディスク一覧から、USB デバイスのディスクの番号を確認
select # (# は上で確認したディスクの番号) コマンドを実行してディスクを選択
clean コマンドを実行
exit コマンドを実行し、diskpart を終了
Windows起動時に、キーボードレイアウトの選択と表示されて、選択するとメンテンナンス画面になり、修復操作でしても、修復できませんでしたとなり、どうにもならなくなった
原因として考えられることは、起動用USB作成等で、いろいろ実験したためと思われる
クローンソフトなどでコピーした時も起こりうる
後で振り返ると、ブートマネージャーが書き換えられ、OSデバイスが見つからなくて、修復ツールのパーティションが起動していたので、OSのデバイス位置を修正してやればよかった
以下に、回復させて手順をメモしておく
1,ボードレイアウトの選択後、コマンドプロンプトを起動を選択
2,bootrec /scanos でOSのドライブを調べる
3,検出されたドライブ名がCになっていたらOKだが、違っていたら、以下のコマンドで戻す
Eドライブが検出されたとき、dir e: などで目的のドライブかを確認して、以下のコマンドで修正 /l はエル
bcdboot E:¥windows /l ja-jp /s c:
c: ENTERでドライブ切替
c:>bootrec /rebuildbcd で再構築
※マルチブートで複数ある時は、ここではEなので、EをY選択して追加する
これで、起動可能に回復した
知り合いから回復依頼
マルウェアらしきものに感染し、050*****に電話させられ、費用を要求され、よく分からずリモート設定までしてしまったとの事
スタートメニュー等々が開かなくなっており、再起動したらPINコードが壊れているとのことでログインすら出来ない状態
対処
BIOSでUSB起動にして、WindowsをUSB起動して、隠し技でコマンドプロンプトを埋め込む
Shft+F10 Utilman.exe cmd.exe
通常起動、コマンドプロンプトでローカルアカウントを作成し、管理者グループへ入れて、ログイン
net user admintemp /add PassworsXX
net localgroup administrators admintemp /add
操作が効かないので、コマンドで設定を起動してみるが、エラー
復元でもポイントが見つからないとのメッセージ
アカウント管理もエラー、PCリセットもNG
一旦、サインアウトすると、再度、ログイン出来なくなり、再度、ローカルアカウントを作成する必要あり。
コマンドでrstrui.exe も復元ポイント見つからない
コマンドで、systemreset -factoryreset でPCリセットもエラーで実行不可
諦めて、再度、USBでWindows10起動
メーカのリカバリメディアも何もないとの事で、最悪、初期化してWindows10をインストールしようと進める
直ぐにインストール画面の下の回復をやってみると、Windows11を復元が選べる
試しにやってみると、直近の自動保存イメージからリカバリで出来た
結果的にPCリセットしなくても良かったので、結果オーライ
タスクマネージャーで不審なタスクが無いか確認
スタートアップとサービスもチェック
ブラウザの履歴なども念のため削除で一応、問題なし
IISでActivePerl を利用したCGI掲示板を動作させる
ActivePerl-5.14
IIS8.5
Windows Server 2012 R2
IISマネージャでサイトを選択し、「ハンドラマッピング」を開き、「スクリプトマップの追加」を選択
以下の項目を入力する
要求パス *.cgi
実行可能ファイル参照して選択 C:\Perl\bin\perlis.dll
名前 Perl(任意)
IISを再起動する
一般に表示されている情報では、perl.exeをマッピングするが、それでは動作しなくて、perlis.dllを指定する必要があった
また、CGI表示の際にContent-type: text/htmlが上部に表示される問題は、CGIの修正で回避できた
以下の行が記載されている場所へ1行追記
print “Content-Type: text/html; charset=utf-8\n\n”;
追記した例
print “HTTP/1.1 200 OK\n”;
print “Content-Type: text/html; charset=utf-8\n\n”;
※上記をコピーすると、”が全角になるので、半角に修正が必要
shell:sendto
ユーザ
shell:startup
or
C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
オールユーザ
shell:common startup
or
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
Windowsキー+Pauseボタンで設定を呼び出せるし、Windowsキー+Xキーでも事足りることも多いが、コントロールパネルを開きたい時がある
Windowsキー+Rのファイル名指定して実行あるいはショートカットを作成して、コントロールパネルの項目を開く
コントロールパネルを開くには(Windows11でも同様)
control
又は
shell:ControlPanelFolder
個人用設定]-[テーマ]画面にある「関連設定」の[デスクトップアイコンの設定]で、デスクトップアイコン表示もできる
コントロールパネル項目の名前を確認するには、Windows PowerShellで、
Get-ControlPanelItem
表示されるCanonicalNameをcontrol /name に続けて入力してコマンドを実行
例 電源オプション
control /name Microsoft.PowerOptions
例 デバイスとプリンター
control /name Microsoft.DevicesAndPrinters
例 デバイス マネージャー
control /name Microsoft.DeviceManager
例 RemoteApp とデスクトップ接続
control /name Microsoft.RemoteAppAndDesktopConnections
例 管理ツール
control /name Microsoft.AdministrativeTools
例 既定のプログラム
control /name Microsoft.DefaultPrograms
例 プログラムと機能
control /name Microsoft.ProgramsAndFeatures
SDメモリーカードは、書き込み禁止となっていて、レジストリ修正し、再起動が必要
拡張子 .reg のファイルに下記を書き込み実行
SD書き込み禁止解除.reg
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\StorageDevicePolicies]
“WriteProtect”=dword:00000000
control userpasswords2 か netplwiz コマンドをWindowsキー+Rで入力し、実行
入力が必要のチェックを外して、パスワード入力
空パスワードの設定では、使えない機能があるので、設定するが、ログインを自動でさせたい時に利用
Windows11でも有効