痔になりやすい生活習慣とは?

わけあって、学校(養護学校)初心者向けにhtmlでメニューを作っています。
さて、スタートボタンやディスクトップにショートカットを使わず、htmlの中からバッチファイルやexeファイルを起動できるでしょうか?

もし可能ならば、教えてください。OSはWindows XPで起動したいファイルはexeファイルとバッチファイルです。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

<html><head></head>


<body>
<a href="file:///c:/windows/system32/calc.exe">電卓</a>
</body>
</html>
    • good
    • 22
この回答へのお礼

OK!完璧な回答です。
どうもありがとうございました。

お礼日時:2006/05/21 21:13

クライアントにあるEXEやBATなら条件付きで実行可能ですが、クライアントが表示しているhtmlからサーバーのEXEやBATを起動するのは無理です。



サーバー上のプログラムを実行したいなら、JavaやCGI(Perl or PHP)を使用します。
    • good
    • 3
この回答へのお礼

早速のご回答ありがとうございました。
2.の方の回答と併せて、試させて頂きます。
一番初めの回答、ありがとうございました。

お礼日時:2006/05/21 21:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QHTMLからフォルダを開きたい

いつも大変お世話になります<(_ _)>

Webサーバー上にあるWebページ(HTML)の中に、ローカルPCのフォルダを開くリンクを付けたいのですが、
<a href="file://c:\windows">OPEN</a>
としても、何も反応しません。

いろいろ調べたのですが、上記の方法しか見あたりません。

なお、ブラウザのアドレス欄に file://c:\windows と入力すると、フォルダの内容が表示されます。
※Firefoxだと、ファイルの一覧になりますが・・・

何か環境によって挙動が異なるのでしょうか?
それとも、セキュリティ上の観点から最近じゃ出来なくなっているのでしょうか?

是非ともお助け下さい。宜しくお願い致します。

Aベストアンサー

file:///C:/windows/
/は三つでは・・・
 IEの場合はエクスプローラ(ファイルマネージャ)が開くような・・・
 IEはファイルマネージャーと一体のブラウザなので・・・

★実は、ローカルサーバーが必要です。
 apacheでも何でも良いので、WEBデータの入っているフォルダーを
<VIRTUALHOST 127.0.0.1>
C:\Document and settings\my document\web
 とかに指定して、Windowsのhostsファイルで、適当なサーバー名を指定しておきます。
myLocalhost 127.0.0.1
とか・・・

 そうすると
http://myLoclahost/
 で開けます。

 

QローカルのHTMLからexeファイルを起動したい

とあるシステム?の修正を頼まれています。
現在の仕様は以下になります。

1)CD内にFlashで作成したexeファイル自動実行。
2) 1)のメニュー内のボタンを押すと、同じCD内にあるexeファイルを起動する。
3)CD内にはhtmlファイルや画像等のコンテンツもあり、それらも1)のメニュー内から起動可能。

この1)をHTMLで作成したいのですが、2)のローカル内にあるexeを起動させることは可能なのでしょうか?試してみたところ、警告ダイアログ等が出てしまいます。PC初心者も対象にしているものなので、できれば一発で起動できるようにしたいです。
やはりVC++等でexeファイルを作成しないとダメでしょうか?

自分が扱えるのはHTML、PHP、Javascript、Java、VBなので、できればこの中で作成出来ればいいのですが…。
ご教授お願いします。

Aベストアンサー

>この1)をHTMLで作成したいのですが
#1さんの言うようにHTAにしては如何でしょう。
拡張子を.htaにするだけです。
>ローカル内にあるexeを起動させる~
可能です。尚、Exploreの「開く」と同じ操作は
以下のようにすれば可能です。

/**
* ファイルを関連付けられているアプリケーションで開く
* @param ファイル名 対象ファイルのパス名
* @return インスタンス 32未満なら失敗
*/
function 開く(ファイル名) {
  var vbs = new ActiveXObject("ScriptControl");
  vbs.Language = "VBScript";
  vbs.ExecuteStatement("Dim A");
  vbs.ExecuteStatement("Set A=CreateObject(\"Excel.Application\")");
  var 戻り値 = vbs.Eval("A.ExecuteExcel4Macro(\"CALL("
        + "\"\"SHELL32\"\","
        + "\"\"ShellExecuteA\"\","
        + "\"\"JJJCJJJ\"\","
        + "0,0,\"\"" + ファイル名 + "\"\",0,0,1"
        + ")\")");
  vbs.ExecuteStatement("A.Quit");
  vbs.ExecuteStatement("Set A=Nothing");
  vbs.Reset();
  return 戻り値;
}

**** 使用例 ****

var 結果 = 開く("D:\\hoge.jpg");
if ( 結果<32 ) alert("ファイルを開けません");

何でJavaScript内でVBScriptを実行させているかと言うと、
Excelのインスタンスを消去するためです。

>この1)をHTMLで作成したいのですが
#1さんの言うようにHTAにしては如何でしょう。
拡張子を.htaにするだけです。
>ローカル内にあるexeを起動させる~
可能です。尚、Exploreの「開く」と同じ操作は
以下のようにすれば可能です。

/**
* ファイルを関連付けられているアプリケーションで開く
* @param ファイル名 対象ファイルのパス名
* @return インスタンス 32未満なら失敗
*/
function 開く(ファイル名) {
  var vbs = new ActiveXObject("ScriptControl");
  vbs.Language = "VBScript";
  v...続きを読む

Q指定したURLを表示させるバッチファイル

IEが起動してない状態で、IEを起動させて指定したURLを表示させるバッチファイルを教えて下さい。
バッチファイルAを実行すると、○●○●○●というURLでIEが起動し、バッチファイルBを実行すると、△▲△▲△▲というURLでIEが起動する。そういうことです。
よろしくお願いします。

Aベストアンサー

私がやった通りのことを書きます。ご参考に。
(1)インターネットエクスプローラーがExplore(最後rなし)と言うプログラム名であることを知る。
(2)スタート-検索-ファイルやフォルダ-Explore
で検索する。
(3)C:¥Program Files\Internet Explorerにあることを知る。(eのマークによりプログラムファイルであることを知る。)(こちらは最後にrがつく)
(4)バッチファイルを作る。メモ帳に
cd "c:\Program Files\Internet Explorer"
Iexplore "http://www.okweb.ne.jp/kotaeru.php3?qid=610162"
と入れて、url.batと言うファイル名で保存。
urlは任意の名で良い。「.bat」は必須です。
”http://・・は任意のURLで可。
(5)メモ帳を閉じる。私の場合はc:¥My Documentsに保存されたことに留意。
(6)スタート-プログラムからDos画面をだす。(98の場合)
(7)CD "c:\My Documents"エンタを入れる。
(8)urlエンタと入れる。.batは不要。
(9)上記のOKWEBの画面になり、止まる。

私がやった通りのことを書きます。ご参考に。
(1)インターネットエクスプローラーがExplore(最後rなし)と言うプログラム名であることを知る。
(2)スタート-検索-ファイルやフォルダ-Explore
で検索する。
(3)C:¥Program Files\Internet Explorerにあることを知る。(eのマークによりプログラムファイルであることを知る。)(こちらは最後にrがつく)
(4)バッチファイルを作る。メモ帳に
cd "c:\Program Files\Internet Explorer"
Iexplore "http://www.okweb.ne.jp/kotaeru...続きを読む

Qホームページのリンクからプログラムの実行

ホームページのリンクからプログラムを実行
させたいのですが、これって可能でしょうか?
もし、できない場合、何か別の方法はあるのでしょうか?

例えば、aaa.exeというプログラムをリンクをクリックすることで実行したいのです。。
(HTMLソースで、<a href>(パス)../aaa.exe</a>
で指定すれば出来そうなイメージなのですが、
試す環境がないのです。)

ご教授宜しくお願いします。

Aベストアンサー

>よろしければ、サーバ上でcgi環境でexeを実行する方法も詳しく教えてください。。
今までのカキコ見て、今回の件とは関係ないですよ。
exeファイル実行するのはあくまでサーバ側で、ユーザ側には何も起こりませんよ。

で、javascript使おうが、何しようが、
「ユーザがダウンロードを選択」+「ユーザが実行を行う(IEで言うと「開く」)」の
手続きは、セキュリティの観念から絶対行うようになっています。

一応、
>メッセージが毎回出てしまうのですよね。
を回避するなら、ActiveXにすれば、回避出来ます。
(初めの一回だけユーザの承諾は必要)

まあ、正直。
手っ取り早いのは、「ホームページのリンクからプログラムを実行」
を諦めて、No2さんの記述通り、ユーザに実行させた方が楽ですよ。

QHTMLファイルからexeファイルを起動させたい

イントラネット上のWEBサイトから業務アプリケーション(exe)
ファイルを起動させようとしています。ブラウザから起動させようと
するとアラートが2個でるのでこれを表示させない方法を教えてください。

現在のHTMLの記述
<a href="\\○○\exe\MENU.exe">
 ↑○○というサーバーのexeフォルダにあるMENU.exeを起動
アラート内容1
 ファイルのダウンロード:セキュリティの警告
  このファイルを実行または保存しますか
   ↑このファイルは常に実行したい
アラート内容2
  発行元を確認できませんでした。このソフトウェアを実行
  しますか?
   ↑このファイルは常に実行したい

Aベストアンサー

WindowsサーバにIIS, TS, TSACをインストール

\inetpub\wwwroot\tsweb\default.htm を解析する

with MsRdpClient
.Server = Document.location.hostname
.FullScreen = FALSE
.DesktopWidth = 800
.DesktopHeight = 600
.Width = 800
.Height = 600
.UserName = "myname"
.AdvancedSettings2.ClearTextPassword = "mypassword"
.SecuredSettings.StartProgram ="C:\myfolder\myapp.exe"
.SecuredSettings.WorkDir ="C:\myfolder"
.Connect
end with

QHTMLで別PCのフォルダを開く

例えばネットワーク上に”192.168.100.250”というPCがあるとします。

このPCはフォルダウィンドウでフォルダ内を閲覧出来る場合、

別のサーバーのHTMLファイルから、

このフォルダを開く事は出来ますか?

以下のコードを追加して、testをクリックしても何も起こりません。。。

<a href="file:\\192.168.100.250\test">test</a>

どなたかお分かりになる方教えてください。

Aベストアンサー

[ANo.7] の続きね。

Firefox を例にするね。

■ ウェブブラウザのセキュリティ第1段階

1) Firefox でロケーションバーに "file:///c:/" を入力すると、『C:\』のフォルダの一覧が表示される。他のフォルダを入力すれば、同じように、そのフォルダの一覧が表示される。

2) 質問者さんは、悪意のあるウェブページとは知らずに、"http://example.org/akuinoaru.html" をダウンロードして、デスクトップに保存したとする。

その HTML の内容は↓これ。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
  <title>Akuinoaru JavaScript Sample</title>
  <script type="text/javascript" src="http://example.org/akuinoaru.js"></script>
</head>
<body>
  <h1>Akuinoaru JavaScript Sample</h1>
  <div>
    <iframe id="iframe" width="100%" height="600" src="."></iframe>
  </div>
</body>
</html>

3) 質問者さんは、保存した HTML を Firefox で開くとする。

4) すると、デスクトップにあるファイルの一覧が表示される。

5) 『4)』とほぼ同時に "http://example.org/akuinoaru.js" が実行される。

6) akuinoaru.js は、表示されたフォルダの中にあるファイルを、
"http://example.org/akuinoaru.php" へ全て送信するという JavaScript だとする。

ということで、質問者さんの PC の中のファイルが、攻撃者のサーバに送信される。


つまり、『信頼できない HTML ファイルをダウンロードして、ウェブブラウザで開くのはすごく危険』ということ。


■ ウェブブラウザのセキュリティ第2段階

1) ウェブブラウザは、PC にウェブページのキャッシュを持つ。
つまり、自分でダウンロードしなくても、もともと HTML ファイルはダウンロードされているということ。

2) ここで、"http://example.org/akuinoaru.html" は "file:///ウェブページのキャッシュフォルダ/キャッシュファイル" へリンクを張ってあったとする(※)。

通常、このリンクはウェブブラウザによってセキュリティー上無効にされているけれど、これが有効だったとする。

3) 質問者さんは、上のページのリンクをクリックしたとする。

4) 以下、『ウェブブラウザのセキュリティ第1段階』の 『4)』と同じ。

今回は、リンクをクリックする想定をしたけど、実際はクリックしなくても、キャッシュファイルを表示させることができるから、悪意のあるページにアクセスしたら、すぐに、質問者さんの PC の中に保存されているファイルは、攻撃者のサーバに送信されてしまう。

このようなことが起こらないように、http://xxxxxx から file:/// へのリンクは無効にされている。


という説明で大丈夫かな?


※2) 実際には、キャッシュファイルのパスは固定じゃないから、JavaScript でがりがり生成して何回もトライしてキャッシュファイルのパスを見つける必要がある。でも危険なことには違いはない。

[ANo.7] の続きね。

Firefox を例にするね。

■ ウェブブラウザのセキュリティ第1段階

1) Firefox でロケーションバーに "file:///c:/" を入力すると、『C:\』のフォルダの一覧が表示される。他のフォルダを入力すれば、同じように、そのフォルダの一覧が表示される。

2) 質問者さんは、悪意のあるウェブページとは知らずに、"http://example.org/akuinoaru.html" をダウンロードして、デスクトップに保存したとする。

その HTML の内容は↓これ。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional...続きを読む

QJavaScriptでコマンドプロンプト

何度も質問失礼します。
HTMLの中にJAVAScriptでボタンを配置して、ボタンを押すとコマンドプロンプトの命令を実行出来たりしないでしょうか?

HTMLの中にボタンを配置して、ボタンを押したらJavaScriptが実行され、コマンドプロンプトのadl命令が実行されて別のアプリケーションが起動する・・・というものですが・・・
グーグルで調べてみましたがいまいちよくわからなかったです。

分かる方がいましたら、ご教授お願いします。
よろしくお願いします。

Aベストアンサー

それができてしまうと明らかにセキュリティホールになるので、普通はできないと思います。

yyr446 様の書いているとおり、ローカルや社内でしか使わないような仕掛けならブラウザのセキュリティレベルを調整することで実現できますが、デフォルトではJavaScriptからローカルPCのコマンドを起動するようなことはできないですね。
もし可能なら、そのJavaScriptが仕掛けられたサイトを見るだけでコマンドプロンプトを起動して「del *.*」とかできちゃいますし。

プログラム実行に限らず、基本的にJavaScriptからはローカルの環境にあるものはいじれません。
Cookieはファイルには残りますが、ファイルそのものを操作してるわけではないですしね。

というところでご回答になったでしょうか。
もしやりたいことがもっと具体的にあるのであれば、それを書いていただけると別の(JavaScriptを使わない)解決策があるかもしれません。

Q外部ファイルを実行

javascriptで
<script type="text/javascript" src="test.js" ></script>
を記述すると、
HTML読み込み時にtest.jsを実行するのですが、
ボタンクリック時に外部ファイルを実行するコードはどのように記述すればいいのでしょうか?

よろしくお願いします。

Aベストアンサー

当方、本日手が空いたので色々試行錯誤してみましたが
javascriptを動的に呼び出すのは少し難しいようですな。

[test.js]
function test() { alert('moge'); }
というファイルがあるとして、


[例1]
<input type='button' value='go' onclick='on()' />
<script type='text/javascript'><!--
function on(){
 document.write('<script type="text/javascript" src="./test.js"></script>');
}
// --></script>

これだとグローバルスコープでtest.jsの定義が使えるのですが、
画面が再描画されるため意図した動作をせず。
再描画させず、意図させた場所のみ更新させHTMLparseを行わせるという挙動ってできるのですかねぇ。


[例2]
<input type='button' value='go' onclick='on()' />
<script type='text/javascript'><!--
var jsStr = "";
function on(){
 getCode();
 eval(jsStr);
 test();
}

function getXMLHTTPObj(){
 try{
  return new ActiveXObject("Msxml2.XMLHTTP");
 }catch(e){
(snip.)
 }
}
function getCode(){
 // make instanse
 var reqSend = getXMLHTTPObj();
 // get instanse
 if(reqSend){
  reqSend.onreadystatechange = function(){
   if(reqSend.readyState == 4 ){
    jsStr = reqSend.responseText;
   }
  }
  reqSend.open('POST', "./test.js", false);
  reqSend.setRequestHeader('content-type', "application/x-www-form-urlencoded;charset=UTF-8;");
  reqSend.send();
 }
}
// --></script>

XMLHTTPで呼んでevalしてみる。
使えなくもないですが・・・・
最初から<script>で呼べよという話に。


[例3]
<script src="common1.js"></script>
<script src="common2.js"></script>
<script src="common3.js"></script>
<script src="test.js"></script>(typeはsnip)
<input type="button" onclick='test()' />

スタンダード。
必要な奴は必要なときに逐次呼ぶのが普通。


外部読み込みはprototype.jsとかにありそうな気はしますけどね。
使ったことないですが。

当方、本日手が空いたので色々試行錯誤してみましたが
javascriptを動的に呼び出すのは少し難しいようですな。

[test.js]
function test() { alert('moge'); }
というファイルがあるとして、


[例1]
<input type='button' value='go' onclick='on()' />
<script type='text/javascript'><!--
function on(){
 document.write('<script type="text/javascript" src="./test.js"></script>');
}
// --></script>

これだとグローバルスコープでtest.jsの定義が使えるのですが、
画面が再描画さ...続きを読む

QJavaScriptによる.exeファイルの実行

JavaScriptファイルJS.htmlの実行によって
同ディレクトリ内のバッチファイルDIR.batファイルを実行し
DIR.batがDIR.txtを生成するのを待ってDIR.txtをJavaScriptの内部変数var strに読み込ませる方法を教えてください

なおDIR.batの内容はdir>DIR.txtです

Aベストアンサー

>cgiがhtmlにデータを渡すときの
>テクニックは利用できないのでしょうか?
サーバーからクライアントのブラウザに文字列を送信するみたいな
機能は無いと思います。
iis + Microsoft .NET Frameworkとか導入すると
nubouさんの希望に沿うことができるかもしれません。

ローカルコンピュータではアプローチを
変えたほうがスマートにできるのではないのでしょうか。

>ハンズしてしまいました
これは
WshShell.Run( p + "dir.bat " + p ,0,0);

WshShell.Run( p + "dir.bat " + p ,0,1);
にしてみてください。
どうでしょう?

Qホームページでファイルをダウンロードさせる

お世話になります。
会社のホームページを制作中です。
マニュアルなどをアップしておき、ユーザーにダウンロードしてもらうページを作ろうと思っています。
<ベクターのような>
参考になる情報ありましたら教えてください。
宜しくお願いいたします。

Aベストアンサー

ダウンロードについて、
参考URLのページに分かりやすく書いてあるようです。
例もあるのでぜひ参考にしてください。

参考URL:http://www.tohoho-web.com/wwwxx013.htm


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング