何も考えずにコピーして使うように指示してあったサイトのScriptにバグがあった件

とあるサイト
VBSを毎回「管理者として実行」する方法 - masahirorの気まま記録簿 に

これを呪文のように、単純にコピペでVBSに記載。
そして、管理者として実行したいVBSのソース冒頭に、

Call runasCheck()
と記載するだけで、実行管理者権限で実行しなおしてくれる。

なんて書いてたのでわたしもそのまま使ってたんですが、どうもScriptの動作がおかしいので調べてみたところバグがありました ((((・ω・))))

strArgs = ""
' フラグの取得
If args.Count > 0 Then
  If UCase(args.item(0)) = "/RUNAS" Then
    flgRunasMode = True
  End If
  strArgs = strArgs & " " & args.item(0)

End If

元のソース

strArgs = ""
' フラグの取得
For Each pt in args
  If UCase(pt) = "/RUNAS" Then
    flgRunasMode = True
  Else
    strArgs = strArgs & " " & pt
  End If
End If

こうしないと、第2パラメータ以降が渡されませんね ・ω・

調べてみたら、何も考えずにコピペしてるサイトがほかにもありました ・ω・
とりとめもないはなし。: インストーラのないアプリケーションを、Program Files にコピーして、ついでにショートカットも作っちゃうスクリプト。

VBSで管理者権限で実行しなおす|としじ|note

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です