DMMGamePlayer【ウマ娘】起動時のユーザーアカウント制御(UAC)の回避
※2021年3月14日から2021年5月31日までに公開していた実行方法を取りやめ、2021年6月1日にこの記事を更新しました。詳しくは以下で説明しております。
※DMMGAMEPLAYER BETAは非対応です。旧型のやつをお使いください。
※ 2021年6月1日19:16 バッチファイルが開かない不具合を修正しました。
ウマ娘を起動するときに毎回ユーザーアカウント制御が出てきます。
最初は気にならなかったのですが、一日に何回も起動するとうんざりしてきたので、回避する方法を探してみました。応用でプリコネRにも適用できました。
こちらのブログでは、ユーザーアカウント制御を完全に無効にしない方法なので、他のアプリではユーザアカウント制御の操作が求められます。
さらに、ウマ娘を起動させたのにDMMGamePlayerも起動されるので自動で消えるようにしました。
Linuxを少ししか触っていないため、プログラマーの方から怒られる書き方をしているかもしれません。
対象は
- ウマ娘だけユーザアカウント制御を回避したい
- ユーザアカウント制御を完全に無効にしたくない
- DMMGamePlayerを消すのがめんどくさい方
です。
ご参考になれば幸いです。
※非公式な起動方法なので、公式が不適切と判断した場合即座に使用をやめてください。
※また、コマンドプロンプトやタスクスケジューラの操作をします。
※全て自己責任でお願いいたします。一切の責任を負いかねます。
- この仕組み
- なぜバッチファイルとVBSが分かれているのか
- バッチファイルとは何か
- VBSとは何か
- 前回に作成してしまったのだが
- 手順1 バッチファイルの作成
- 手順2 VBSの作成
- 手順3 フォルダーに入れる
- 手順4 タスクスケジューラを起動する
- 手順5 タスクスケジューラにパスを貼り付け
- 手順6 ショートカット作成
- 手順7 アイコン設定
※2021年5月31日までに公開していた実行方法を取りやめたので、お手数ですが再度設定をお願いします。
もしも前回に作成した方は以下を削除してください。
タスクスケジューラ内 名前「Umamusume」
ショートカットは流用できます。
この仕組み
デスクトップにあるショートカットからタスクスケジューラのタスクを実行
↓
タスクを実行することで、管理者権限を付与したまま、VBSを実行させる
↓
VBSからバッチファイルを実行する
↓
バッチファイルからウマ娘を起動
↓
ウマ娘が起動したか判定
↓
もしもウマ娘が起動したら、DMMGAMEPLAYERを消す
↓
終了
なぜバッチファイルとVBSが分かれているのか
コマンドプロンプト(黒い画面)が見えるから。
バッチファイルとは何か
コマンドプロンプトに指示を出すファイル
VBSとは何か
Visual Basic Script
Microsoftのプログラミング言語
前回に作成してしまったのだが
タスクスケジューラの『Umamusume』を消すだけで、他は流用できます。
手順1 バッチファイルの作成
『メモ帳』を開いて、
@echo off
rem ウマ娘が起動するまでの時間設定
set TIME_OUT=20
rem ウマ娘を起動する
echo start_umamusume
start dmmgameplayer://umamusume/cl/general/umamusume
setlocal enabledelayedexpansion
for /l %%i in (1,1,%TIME_OUT%) do (
rem ウマ娘が起動しているかの判定
tasklist | find "umamusume.exe" > nul
if !ERRORLEVEL! == 0 (
rem DMMGamePlayerを消す
echo killdmmgameplayer
taskkill /IM dmmgameplayer.exe
taskkill /IM dmmgameplayer.exe
goto END
) else (
echo wait
)
timeout /t 1 > nul
)
endlocal
rem 設定時間までに起動しない場合
echo timeout
:END
exit
までコピペします。次に【名前を付けて保存】をクリック。
名前は『startuma.bat』にしておきます。
インデントがなくて見にくいと思いますが、インデントをつけるとそのままコピペ
するとはてなブログの性質上なのか、バッチファイルが実行できなくなります。ご了承ください。
DMMGamePlayerを自動で閉じたくない方は
@echo off
rem ウマ娘を起動する
echo start_umamusume
start dmmgameplayer://umamusume/cl/general/umamusume
exit /b
とコピペしてください。
手順2 VBSの作成
同じく『メモ帳』を開いて、
Option Explicit
Dim objWshShell
Set objWshShell = WScript.CreateObject("WScript.Shell")
'startuma.batを非表示で実行する
objWshShell.run "cmd /c startuma.bat", 0
Set objWshShell = Nothing
までをコピペします。次に【名前を付けて保存】をクリック。
名前は『startbat.vbs』にしておきます。
手順3 フォルダーに入れる
エクスプローラーから「ドキュメント」に移動します。
新規作成でフォルダーを作成して、名前を『umamusumestartbats』とします。
手順1と手順2で作成したファイルを、入れます。
この時点で「startbat.vbs」をクリックしたらユーザアカウント制御がでますが、ウマ娘が起動すると思います。
手順4 タスクスケジューラを起動する
『Windowsキー』+『R』を同時押しすると、
ファイル名を実行して実行が開くと思います。
そこに
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools\Task Scheduler.lnk
と入力して【OK】を押す。
そうしたらタスクスケジューラが起動します。
右側の【タスクの作成…】をクリック
※もしも前回に作成した方は以下を削除してください
名前「Umamusume」
全般の中に
名前を『Umamusume』と入力(名前はなんでもよいです)
必ず、【最上位の特権で実行するにチェック】を入れてください。*1
説明は入れなくて結構です。
手順5 タスクスケジューラにパスを貼り付け
操作に移動します。左下の【新規】をクリックします。
新しい操作が開いたと思います。
操作に【プロブラムの開始】を設定する。
プログラム / スクリプトは【参照】をクリックして、「umamusumestartbats」内の「startbat.vbs」を選択。
例 C:\Users\{ユーザー名}\Documents\umamusumestartbats\startbat.vbs
開始(オプション)に上記のパスをコピーして、最後の「starbat.vbs」を消します
例 C:\Users\{ユーザー名}\Documents\umamusumestartbats\
適当な値を入れたら、【OK】をクリック。
下準備は完了です。
『Umamusume』を選択して右側の【実行】を押し、ウマ娘が起動したら、成功です。
手順6 ショートカット作成
前回の手法で作成している場合はここで終了です。お疲れさまでした。
やっていない方はショートカットを作成しなければ、このままでは起動できません。
デスクトップ上で右クリックをして
新規作成→ショートカット をクリック
C:\Windows\System32\schtasks.exe /run /tn Umamusume
と入力する。
青いところはタスクの名前にしてください。
入力したら、【次へ】をクリック
ショートカットの名前は
と入力して、【完了】をクリックします。
飾りっ気のない、ショートカットができました。
このままでも、ダブルクリックしたらウマ娘が起動すると思います。
手順7 アイコン設定
DMMGamePlayerを起動してMyゲームを開く。
ウマ娘のアイコンの左上あたりに インフォメーションがあるのでクリックする。
上記の【ダウンロード先フォルダを表示】をクリック。
ダウンロード先フォルダを表示を押すとエクスプローラーが開くので、場所をコピーしておく。
先ほど作ったショートカットを右クリックして、プロパティを開く。
実行時の大きさを『最小化』に変更しておく。
次に、【アイコンの変更】をクリック。
もしも、これが出たら【OK】 を押す。
【参照】をクリック
エクスプローラーが開きます。
先ほどのパスを貼り付けると、ファイルが出てきます。
その中の
umamusume.exe (ウマ娘アイコンがあるやつ)
を選択して、【開く】をクリック。
アイコンが出てきたら【OK】をクリック
また【OK】を押します。
お疲れ様です。本家と全く同じのアイコンが完成しました。
私の環境では実行できましたが、個人によりできない場合があります。
不明点がある場合はtwitterまたは、コメントまでお問い合わせください。
*1:これを設定しないとユーザアカウント制御が出てきます。