Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ファイルの場所を管理者としてコマンドプロンプトを開く、に対応する #608

Closed
m-tmatma opened this issue Nov 10, 2018 · 11 comments
Labels
enhancement ■機能追加
Milestone

Comments

@m-tmatma
Copy link
Member

ファイルの場所を管理者としてコマンドプロンプトを開く、に対応する

#549 に加えて、管理者権限のコマンドプロンプトがあると便利だと思う。

https://clown.hatenablog.jp/entry/20110524/uac

にあるように sakura.exe とは別に requireAdministrator を設定した exe を
別に用意してそれを ShellExecute で起動する (上記サイトでは ShellExecuteEx とあるが
ShellExecute でもいいと思う)

powershell も対応してほしい、という話になると思うが、
通常版の powershell がまだ未検討なので、またあとで考える。

@m-tmatma
Copy link
Member Author

なお、該当プログラムは CUI アプリとしてではなく GUI アプリで実際の UI なしで作る予定。
理由は、エラーなどで MessageBox を表示させてとき CUI アプリだとコンソール画面が出るので
sakura.exe から呼ばれる exe としてブサイクだから。

@KENCHjp
Copy link
Member

KENCHjp commented Nov 10, 2018

GUI アプリで実際の UI なしで作る予定。

管理者権限は結構センシティブなので、悪用されないように要注意ってかんじですかね。
どうやって悪用するかは思いもつきませんが。

@berryzplus
Copy link
Contributor

UAC周りは色々とごちゃごちゃしてますね。

管理者権限のコマンドプロンプトがあると便利だと思う。

まずこれは賛成です。

前提として「管理者権限のコマンドプロンプト」は気軽に使えるべきではありませんが、
サクラエディタを使う人の大半はレガシーコマンドが実行できる環境を必要する人な気がします。
「実装すべきじゃない」と突っ撥ねるよりは、やったほうがいいと思います。

sakura.exe とは別に requireAdministrator を設定した exe を
別に用意してそれを ShellExecute で起動する

この実現方法はやーです(笑

oleVerbに"runas"を指定してあげれば普通にcmdを管理者権限で起動できたような。
(ちょっと未確認ですが)

@KENCHjp
Copy link
Member

KENCHjp commented Nov 10, 2018

管理者権限のコマンドプロンプトがあると便利だと思う。
まずこれは賛成です。

Me To.

この実現方法はやーです(笑

Me To.

でも出来るのかなぁ。。。

@m-tmatma
Copy link
Member Author

別アプリから cmd.exe を管理者権限で実行するのは出来ました。
sakura.exe からは確認してないですが。

@m-tmatma
Copy link
Member Author

oleVerbに"runas"を指定してあげれば普通にcmdを管理者権限で起動できたような。
(ちょっと未確認ですが)

"runas" で管理者権限で起動はできました。
しかし、ShellExecute の第四引数は効かないみたいで /k cd が必要みたいです。

@berryzplus
Copy link
Contributor

そのあたりは柔軟に対応でw

ネットワークドライブのことを考えると /k pushd path/to/open のがいいように思います。

そういえば、cdコマンドってドライブ変えられましたっけ?

C:\Windows\System32> cd N:\共有フォルダ
C:\Windows\System32> N:
N:\共有フォルダ> cd C:\Windows
N:\共有フォルダ> C:
C:\Windows> pushd N:\共有フォルダ
N:\共有フォルダ> _

みたいな動きになるような。

@k-takata
Copy link
Member

cd /d で。

@berryzplus
Copy link
Contributor

@k-takata さん

cd /d で。

そんなオプションが存在していたとは知りませんでした。

windows8.1で help cd 叩いてみた結果↓

C:\work\sakura-mygithub>help cd
Displays the name of or changes the current directory.

CHDIR [/D] [drive:][path]
CHDIR [..]
CD [/D] [drive:][path]
CD [..]

マジで知りませんでした。

@m-tmatma
Copy link
Member Author

m-tmatma commented Nov 17, 2018

#618 で対応

@m-tmatma
Copy link
Member Author

↑チケット番号間違えたので修正

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement ■機能追加
Projects
None yet
Development

No branches or pull requests

4 participants