トップ回答者
注目リンクのリンク登録について

質問
回答
-
記載いただいたコードでおおむね問題なさそうですけどね。
<script language="VBScript"> Const vbHide = 0 'ウィンドウを非表示 Const vbNormalFocus = 1 '通常のウィンドウで、最前面のウィンドウ Const vbMinimizedFocus = 2 '最小化で、最前面のウィンドウ Const vbMaximizedFocus = 3 '最大化で、最前面のウィンドウ Const vbNormalNoFocus = 4 '通常のウィンドウで、最前面ではない Const vbMinimizedNoFocus = 6 '最小化で、最前面にはならない Dim objWShell Set objWShell = CreateObject("WScript.Shell") objWShell.Exec("C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE /select outlook:calendar") Set objWShell = Nothing </script>
IEの設定で、SharePoint が該当するセキュリティのゾーンの設定で「スクリプトを実行しても安全だとマークされていない ActiveXコントロールの初期化とスクリプトの実行」を「有効」にしてもダメでしょうか?
…、良く考えたら、この方法は上記のセキュリティ設定をクライアントへ GPO などで配布する必要がありますね。
- 回答としてマーク ke-wata_ 2017年9月8日 12:16
2017年9月5日 0:34
すべての返信
-
IE11 限定で、かつ、IE11 のブラウザセキュリティ設定でセキュリティレベルを落とせるのであればスクリプトから WScript.Shell を利用して exe を起動できると思います。
windows10のIE11からローカルのexeを実行 (URIスキーマ,ActiveX)
http://qiita.com/tukiyo3/items/40bff09692bfd0792a0fこの場合、リンクからは直接起動できないので、SharePoint 上の別ページにスクリプトを自動実行するように埋め込んでおき、注目リンクからは、そのページを開くようなイメージでしょうか…
ただ、このような実装は以前の業務システムなどでも良く見られましたが、セキュリティの問題で最近はブラウザ側で禁止されている場合が多いですよね。
レジストリの配布をどうするか?という点が悩ましいですが、Takashi Shinohara さんも書かれている URI スキーマの登録を試してみるのが良いのかもしれないですね。
2017年9月4日 6:04 -
返信のほどありがとうございます。
セキュリティは下げて問題ないとして、書き方自体がよくわかっていません。
Outlookのカレンダーを直接開きたいのですが、例えば、TEST.aspxというファイルを作成したサイトのページに登録し、
リンク先をそこに指定しました。
TEST.aspxの中身を
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>WebページからEXEを起動する</title> <script language="VBScript"> Const vbHide = 0 'ウィンドウを非表示 Const vbNormalFocus = 1 '通常のウィンドウで、最前面のウィンドウ Const vbMinimizedFocus = 2 '最小化で、最前面のウィンドウ Const vbMaximizedFocus = 3 '最大化で、最前面のウィンドウ Const vbNormalNoFocus = 4 '通常のウィンドウで、最前面ではない Const vbMinimizedNoFocus = 6 '最小化で、最前面にはならない Dim objWShell Set objWShell = CreateObject("WScript.Shell") 'objWShell.Run "C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE" /select outlook:calendar, vbNormalFocus, False objWShell.Exec("C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE /select outlook:calendar") Set objWShell = Nothing </script> </head> <body> </body> </html>
としてみたのですが、うまくうごきません。
もう少し、ご教授ねがいます。
2017年9月4日 12:30 -
記載いただいたコードでおおむね問題なさそうですけどね。
<script language="VBScript"> Const vbHide = 0 'ウィンドウを非表示 Const vbNormalFocus = 1 '通常のウィンドウで、最前面のウィンドウ Const vbMinimizedFocus = 2 '最小化で、最前面のウィンドウ Const vbMaximizedFocus = 3 '最大化で、最前面のウィンドウ Const vbNormalNoFocus = 4 '通常のウィンドウで、最前面ではない Const vbMinimizedNoFocus = 6 '最小化で、最前面にはならない Dim objWShell Set objWShell = CreateObject("WScript.Shell") objWShell.Exec("C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE /select outlook:calendar") Set objWShell = Nothing </script>
IEの設定で、SharePoint が該当するセキュリティのゾーンの設定で「スクリプトを実行しても安全だとマークされていない ActiveXコントロールの初期化とスクリプトの実行」を「有効」にしてもダメでしょうか?
…、良く考えたら、この方法は上記のセキュリティ設定をクライアントへ GPO などで配布する必要がありますね。
- 回答としてマーク ke-wata_ 2017年9月8日 12:16
2017年9月5日 0:34