HTAをもっと流行らせる計画 Part2at TECH
HTAをもっと流行らせる計画 Part2 - 暇つぶし2ch277:デフォルトの名無しさん
09/09/21 15:33:05 .net
なんでhtaにステータスバーを最初から入れなかったのかな?

278:デフォルトの名無しさん
09/09/23 22:14:53 .net
その前にメニューバーだろ。Windows的に。

279:デフォルトの名無しさん
09/09/23 23:29:30 .net
>メニューバー
付いて無いものはしょうがないしねぇ。

代替手段としては

MS Officeが入ってるなら
簡単なツール バーを HTA に追加する
URLリンク(www.microsoft.com)
とか

HTC使うとか
PSDKの Samplesディレクトリにある \Web\behaviors\library\coolbar みたいな
// 余談だけどPSDKの \Samples\Web\behaviors\library\ には他にもHTCのサンプル(menuとか)色々あるね

あ、あと前スレでXML使ったライブラリとか紹介されてたっけ。

あとは
YUIやJQueryなんか使う方法とか、か。

280:デフォルトの名無しさん
09/09/24 12:04:31 .net
>>275
メニューバーの代替で "coolbar"とか "簡単なツール バーを" とかちょっと強引過ぎたか

こっちの方がいいかも

JSLook

Menu Bar, Tool Bar, Status Bar ほかWindowsアプリケーションのようなUI、
HTA向きの(というか流用できそうな)javascript製GUIライブラリ。
//まだ開発中みたいだし、ライセンスもよく分からないし、紹介していいものかどうか迷ったんだけど
//学習用にも使えそうだし、とりあえず取扱注意ってことで

URLは…ググル先生に聞いて下さい。

//中級者以上の人は自分で実装する人も少なくないだろうし
//方法は他にも色々あるけど、とりあえずここまで

連投スマソ

281:デフォルトの名無しさん
09/10/04 07:11:22 .net
<hta:application>の閉じタグってどうするのが実装的には正しいのか気になった
閉じない、<hta:application />、</hta:application>のどれだろう

msdnのHTA Developers Centerでは閉じてないんだけど、みんなはどうしてる?

282:デフォルトの名無しさん
09/10/04 09:21:40 .net
>>277
リファレンスには

"
 The HTA:APPLICATION element requires a closing tag.
 
 <HTA:APPLICATION ... > ... </HTA:APPLICATION>
 
 Because the HTA:APPLICATION element is an empty tag, it can also be closed using the following shortcut.
 
 <HTA:APPLICATION ... />
"
ってあるね

HTA:APPLICATION Object
URLリンク(msdn.microsoft.com)(VS.85).aspx



283:デフォルトの名無しさん
09/10/04 10:34:51 .net
>>278
閉じる決まりなのか。知らなかった。

284:デフォルトの名無しさん
09/10/04 12:35:43 .net
タグなんだから閉じるのは当たり前だろうga

もしかして<br>や<pr>は閉じちゃだめとか思ってないか?

285:デフォルトの名無しさん
09/10/04 13:21:50 .net
<pr>……?

286:デフォルトの名無しさん
09/10/04 13:25:36 .net
<pgr>

287:277
09/10/04 13:25:39 .net
>>278
ありがとう
これからは</hta:application>で閉じるようにするよ

>>280
閉じなければならないけど、sgmlのDTDによっては「閉じは"省略"しなければならない」だね
語弊があってスマソ

288:278
09/10/04 16:02:18 .net
>>283
いやいや 別に省略形で構わないんじゃないの? <HTA:APPLICATION ... /> みたいに。

289:デフォルトの名無しさん
09/10/04 22:48:50 .net
HTAはHTML Applicationであって、XHTMLではないとか、そんな話じゃね

290:278
09/10/04 23:53:42 .net
いやだからリファレンスに "~it can also be closed using the following shortcut.~" ってあるんだから
閉じタグの</hta:application> 使っても省略形の <hta:application ... /> でも好きな方使えばいいじゃん。
XHTMLとかは関係ないでしょ、この場合。

一応断っておくけど >>280-282 は俺とは別の人ね
// ID出ない板は面倒くさいな

291:デフォルトの名無しさん
09/10/29 10:50:14 .net



岡田外務大臣キタ━━━(゚∀゚)━━━ !!!!!
h‍ttp‍:‍/‍/‍q‍b5.2‍ch.net/t‍est/rea‍d.cgi‍/sak‍u2ch/1256‍630318/1



早く記念カキコしないと埋まっちゃうwww


292:デフォルトの名無しさん
09/10/29 12:37:40 .net
規制されるよ

293:デフォルトの名無しさん
09/11/04 01:01:36 .net
最初のスレからGUI関係の情報サルベージしてきた (『YUIやJQueryなんか』以外)

MAKOTO3.NET - dhtml samples - 154,157 「oncontextmenuイベント」
URLリンク(www.makoto3.net)

dhtmlgoodies - DHTML List based context menu(javascript)
URLリンク(www.dhtmlgoodies.com)
dhtmlgoodies - Menu Scripts (ついでに追加)
URLリンク(www.dhtmlgoodies.com)

DHX - DHML GUI部品色々
URLリンク(scbr.com)

JavaScript DHTML examples - GUI Components
URLリンク(www.java2s.com)

jshtaframework - GUI関係ではMenuとかStatusBarとかToolBarとか
URLリンク(code.google.com)

HTALite Framwork, rev b - GUI関係ではToolbarとかStatusBarとかPopUp(


294:tooltip?)とか ttp://www.scriptinganswers.com/vault/Misc%20VBScript%20or%20WSH/ MSDNから追加 Behaviors Library ttp://msdn.microsoft.com/en-us/library/ms531433%28VS.85%29.aspx こういうのもありかな? CSS Menu, CSS Menu Generator - Horizontal, Vertical, Drop Down, DHTML CSS Menu ttp://www.mycssmenu.com/ Licenseはそれぞれのサイトで確認よろ



295:デフォルトの名無しさん
09/11/09 06:22:56 .net
WindowsPE3.0にHTA実行環境が追加できるらしいね。
データ復旧をするときに自作ツールが使えて便利かも。

URLリンク(www.computerworld.jp)
WinPE-HTA-Package:HTAアプリケーションのサポート
WinPE-MDAC-Package:MDAC(Microsoft Data Access Component)のサポート
WinPE-Scripting-Package:WSHのサポート
WinPE-WMI-Package:WMIのサポート
WinPE-XML-Package:Microsoft XML Parserのサポート

Windows7のインストーラにはメモ帳がついてるんだけど、ペイントもつけてくれてればよかったのにな。
エラーのときとか画面を保存できるし。


296:デフォルトの名無しさん
09/11/29 00:52:57 .net
ふつうに作ったhta、
Windows7でも問題なく動いてます?

297:デフォルトの名無しさん
09/11/29 14:39:32 .net
htt関連のコントロールが使えないのが地味に痛い。
ガジェットと統合してくれたらいいのになあ、と思うが絶対にないだろう。

298:デフォルトの名無しさん
09/11/29 14:41:59 .net
はい?

299:デフォルトの名無しさん
09/12/15 05:31:41 .net
IE8みたいに、システムのDPIに合わせて自動的にズームする機能つかないかなあ
<hta:application autozoom="yes"> とか

120DPIだと画面が小さい小さい・・・

300:デフォルトの名無しさん
10/02/06 14:36:31 .net
あけました、おめでとうございました。

301:デフォルトの名無しさん
10/02/06 15:33:04 .net
ずっと巡回してたのに明けてないのにまだ気付かなかったw

302:デフォルトの名無しさん
10/02/06 19:38:08 .net
来年もよろしく

303:デフォルトの名無しさん
10/02/18 02:27:33 .net
>>289
別にJQueryとかYUIでよくないか?

304:デフォルトの名無しさん
10/02/18 12:21:48 .net
ちょっと釣られてみるか

HTAで使うようなStatusBarなんかの需要があった場合、選択肢は色々あるってだけの話
>>289にも(『YUIやJQueryなんか』以外)ってあるだろ?
誰もJQueryとかYUIを使っちゃ駄目なんていってないんだから使いたきゃどんどん使えよ

305:デフォルトの名無しさん
10/02/20 06:58:16 .net
何が釣られてみるだカスが
わざわざそんな誰も使ってないようなの出さなくていいんじゃないのって事
誰も使用感すらレポしてねえし

306:スレタイ嫁
10/02/20 09:32:14 .net
久しぶりにカキコミがあると思えば…

307:デフォルトの名無しさん
10/02/20 11:45:31 .net
あーレポね。んじゃ>>289の中から少しだけ。
・HTALite Framwork
コンポーネントとしてHTCファイルが一つのシンプルなフレームワーク、UIもシンプル、HTA作る時の雛型として使ったりする。
 - 最初からToolbar、StatusBarが使える。
 - JQuery,YUIにはHTCないので>>299的にいえばその辺で選択肢が広がるか。
・menuはdhtmlgoodiesのを使った事があるくらいかな。他のは試してない。
・もう一つのフレームワーク、jshtaframeworkもまだ試してない。
・dhtmlgoodiesみたいなサイトは手抜きしたい時なんかにワンポイントで必要なものを探すのに見たりするかな。
//最近HTA書いてねー身なんでこれ以上はやめとく

どっちにしてもHTAは色んな使い方がされてんだから情報も色々あっていいんじゃね、って思うけどね。スレタイ的に。

308:デフォルトの名無しさん
10/02/23 13:34:16 .net
URLリンク(itpro.nikkeibp.co.jp)

309:hidebou
10/02/23 14:11:13 .net
何年か前にHTABOXというツールを書いた者です。
HTAという機構は素晴らしいのですが結局MSHTA.EXE経由では自由度が低かったものですから
MSHTA.EXEに代わる実行EXEをフリーソフトとしてリリースしました。
「HTABOXコア」
URLリンク(www.vector.co.jp)
まだサーバーの準備が整っていないのでエンコード機能を提供できるのは後日になりますが
お暇な時に遊んでいただいてご意見をいただければ助かります。

310:デフォルトの名無しさん
10/02/23 14:29:59 .net
正真正銘のメニューいいですのう
topmostを希望します。

311:デフォルトの名無しさん
10/02/23 14:41:24 .net
メニューはちゃんとアクセレータも使えるんですね!
って、本物なんだから当たり前か。でも凄い

312:hidebou
10/02/23 21:21:23 .net
お試しいただいてありがとうございます。
メニューについては本当に基本的な部分しか記述していなくて、お恥ずかしいのですが
いままでのHTAには不足していた部分ですので、喜んでいただいて励みになります。



313:hidebou
10/03/03 20:44:53 .net
正直なところMSHTA.EXEを置き換えていいものなのかについて今更ながら悩んでいます。
その先に何が起こるのかについて怯えていると言っていい状況です。
これを実現するのが夢でしたが、私は私自身を支えきれなくなりそうです。

314:デフォルトの名無しさん
10/03/03 21:27:56 .net
期待してます!!

315:hidebou
10/03/04 02:28:07 .net
ありがとうございます。それは危険だというご意見もあろうかと思うのですが、
エンコーダーのリリース準備を進めさせていただきます。

316:デフォルトの名無しさん
10/03/05 18:29:07 .net
HTABOXコア、個人的にはプログレスバーとスクロールバーとツリーボックスと…
あぁキリが無いやw

この辺のオブジェクトの増加に力を入れて欲しいです。

317:hidebou
10/03/05 21:11:55 .net
ご要望ありがとうございます。

ツールバーとツリービューに関しては開発過程で実験済みですので、スクリプトから
簡便に呼び出せるオブジェクトに仕上げて追加したいと考えておりますが、本体XEが
複雑になるのは避けたいので、スクリプトから各種コモンコントロールを扱うDLLを
設計する手法になるだろうと思います。

最も望ましいのは私以外の方がそういうライブラリをどんどん発表できる受け皿として
HTABOXが認知されてゆくことだとも考えております。

318:デフォルトの名無しさん
10/03/06 16:23:06 .net
別スレ作れよ

319:hidebou
10/03/06 16:58:59 .net
ご迷惑かけて申し訳ありません。
今夜、自身のURLにご意見をいただけるよう整備いたします。

320:デフォルトの名無しさん
10/03/06 17:04:24 .net
過疎スレなんだから別に構わんだろ

321:デフォルトの名無しさん
10/03/06 20:15:26 .net
石頭w

322:デフォルトの名無しさん
10/03/06 22:04:33 .net
えー他スレ見るのめんどいからこのスレに逐一報告してよ

323:hidebou
10/03/07 02:55:12 .net
ぐうたらでサーバーの整備を遅らせた私が悪いわけですから、背中を押していただいた
気持ちで、本番サーバーへの移行を行っています。

324:hidebou
10/03/07 16:24:15 .net
サーバーの準備が整いました。
URLリンク(kuroda.bglb.jp)
がHTABOXのトップページです。同ページからHTBOXコア1.10のLZHをロードできます。
このLZHにはエンコーダーであるhtabox.htmが含まれます。この動作を見ればHTABOX
の全体像をご理解いただけるのではと考えております。サイト各ページの最下部にスレッド
形式掲示板へのリンクを置きましたので、お気軽にご意見をお寄せください。

325:デフォルトの名無しさん
10/03/07 18:25:37 .net
今時lzhは無いわー、と思った。zipでいいじゃん。

326:hidebou
10/03/08 10:03:06 .net
補足させてください。
名前を引き継ぎましたので旧HTABOXと同じ隠蔽手法と思っている方もいらっしゃるでしょうが、
まったく別の原理でソースが見えない状態を作っていることを付け加えます。

327:デフォルトの名無しさん
10/03/08 21:15:23 .net
起動に必要なファイル(hta,html,icon等)を単一EXEにして実行出来るようにするの出来ないですか?
EXEアイコンも好きなのにしたいんですが・・・。

328:hidebou
10/03/09 00:01:26 .net
その質問に理由を説明しながらお答えすると長くなり、不快に思う方もいらっしゃる
かも知れませんので、319:にあるURLの掲示板で回答をいたします。

329:デフォルトの名無しさん
10/03/09 08:51:00 .net
>>321
具体的には秘密?

>>313
こいつ、この世に存在しなければよかったのに。


330:hidebou
10/03/09 09:01:54 .net
>>324
秘密どころか、原理と実験ソースを当サイトで公開しています。

331:デフォルトの名無しさん
10/03/09 09:05:05 .net
拡張子 html と引数指定の時に拾ってくれないのですが……

あと、メニューは
<tr>
 <td>めにゅー1</td>
 <td>めにゅー1-1</td>
 <td>めにゅー1-2</td>
</tr>
のほうが直感的ではないでしょうか。
さらに言えば ul とかで階層メニューを作れるとうれしい。

332:hidebou
10/03/09 09:24:06 .net
「拡張子 html と引数指定の時に拾ってくれないのですが…… 」
の意味をもう少し具体的に

333:hidebou
10/03/09 09:29:34 .net
ulはツリービュー用に使う予定です

334:hidebou
10/03/09 09:34:30 .net
いやulでもメニューのほうがいいかな?悩んでいます

335:デフォルトの名無しさん
10/03/09 12:10:54 .net
>>327
test.exe と test.html を同じディレクトリに置いたり、
コマンドラインから test.exe data.html とか入力して実行しても
ファイルを発見できないときの表示になるということです。

また、
> <hta:application>で唯一有用な機能である
とか言われると他の項目を使っている人は悲しくなると思うのですが、
ウィンドウスタイルを変更したりする API は実装される予定はあるのでしょうか。

ついでに、自分自身のウィンドウハンドルはできれば window オブジェクトのメソッドとかで取得できると
楽チンでうれしい。

336:hidebou
10/03/09 13:28:17 .net
>>330
起動時の不具合をこちらでも確認しました。同じディレクトリに自身と同じ
名前のhtmが既存し、別名のhtmをドロップ起動すると起こっているようです。
早急に対応いたします。
WindowのスタイルについてはしかるべきAPIを追加いたします。
有益な情報をありがとうございました。

337:hidebou
10/03/09 14:01:37 .net
>>330
引数での起動ファイル指定時、アイコンドロップだとフルパスが取得できますが、
手動指定だと入力したファイル名しかないことを見落としていました。
同名htmがある場合は引数よりファイルの存在が優先されるのは仕様です。

338:hidebou
10/03/09 15:25:23 .net
第一引数で起動する場合、カレントディレクトリを基準に絶対パス変換を行う修正
が完了しました。できれば330さんに問題が解決したか確認していただけると助かります。
URLリンク(kuroda.bglb.jp)

339:デフォルトの名無しさん
10/03/09 16:12:22 .net
すれ違いだ

340:hidebou
10/03/09 17:16:56 .net
スレッド作成しました。以降HTABOXコア関連の話題は下記へお願いします。

スレリンク(tech板)

341:324
10/03/09 20:40:46 .net
>>325
あー、そうなのね。

>>321を見て、フリだけかよと思って
しまったもので。

今度、サイトを見にいくよ。


342:デフォルトの名無しさん
10/03/10 10:48:22 .net
>>336
URLリンク(kuroda.bglb.jp)

343:デフォルトの名無しさん
10/03/19 18:29:02 .net
IE8をインストールしたら
HTAのフォント表示がおかしくなった
英文の時はいいんだけど
日�


344:{文を表示する時にバカデカいサイズになってしまう



345:デフォルトの名無しさん
10/03/19 20:54:41 .net
お気に入りの整理で使われているshellnamespaceはhtaでは使えないのですか?

346:デフォルトの名無しさん
10/03/21 09:13:43 .net
HTA から標準入出力を使うというのは
神ブログ等に記載があるが、
自作の何かを試してみて「無効なハンドルです」と言われた場合
window.close()してから
objFso.StdOut.WriteLine などすれば良いと思う

347:デフォルトの名無しさん
10/03/21 13:16:54 .net
勘違いかも
コマンドラインを | sort など
パイブラインやリダイレクトに食わせる
必要があるということかな

348:デフォルトの名無しさん
10/03/21 14:27:06 .net
CreateProcess()でsubsystem=windowsのexeを起こすとき、
標準入出力でconsoleは引き継がないというのがOSのルールだよ

349:デフォルトの名無しさん
10/03/21 16:04:43 .net
ありがとー確認します
いま(人力)OCRを作ってるのさ

350:デフォルトの名無しさん
10/03/21 16:48:57 .net
メモ00:
<HTA:(タブや空白)APPLICATION
id="xxx"
>
と書いてたらid属性が機能しなかった。知らねえよそんなの。
というか HTAコロンAPPLICATION タグということかな。

メモ01:
iframe 内から親ウィンドウが見えないなーと思ったら、
iframe タグの application 属性を yes にする必要あり
MSDN の HTML Applications 概要に説明あり

351:デフォルトの名無しさん
10/03/21 21:04:12 .net
スクリプトエンジンにperl使えば何でもあり。極めて楽チン。

352:デフォルトの名無しさん
10/03/21 21:51:54 .net
あなたがそう言うなら

353:デフォルトの名無しさん
10/03/22 22:22:16 .net
perl 使わんでも、ActivexPosh 使えば何でもあり。

354:デフォルトの名無しさん
10/03/27 22:52:52 .net
HTA をwsfにて使用
hta.wsf (をUnicode で保存)

<?xml version="1.0"?>
<package>
<job id="main"><script language="VBScript"><![CDATA[
Set objShell = CreateObject("Wscript.Shell")
Set objDOM = CreateObject("MSXML2.DOMDocument")
objDOM.Load Wscript.ScriptFullName
objShell.Run "mshta.exe " & """about:" & _
objDOM.childNodes(1).childNodes(1).childNodes(0).nodeValue & """"
Set objDOM = Nothing
]]></script></job>
<job id="HTA"><![CDATA[
<head><HTA:APPLICATION></head>
<body>helloworld</body>
]]></job>
</package>


355:デフォルトの名無しさん
10/03/28 00:03:02 .net
Windows7でデスクトップ左端の分離ツールバーができなくなったんだけど、
だれかHTAで作ってくれないか?

356:デフォルトの名無しさん
10/03/28 18:05:15 .net
>>348
それをやるメリットがよく分からない

357:デフォルトの名無しさん
10/03/28 20:35:26 .net
.wsf に vbs と js と hta を
入れて「ひとりパイプライン」を作ると。
ファイルが一つで済んで
デスクトップが散らばらない

358:デフォルトの名無しさん
10/03/28 22:07:21 .net
>>351
なにをいってるのか意味がよく分らない

359:デフォルトの名無しさん
10/03/29 00:11:53 .net
<html><head><script language="VBScript">
sub window_onload
msgbox typename(WebOC.object.Document)
end sub
</script></head><body>
<object id="WebOC" classid="clsid:8856F961-340A-11D0-A96B-00C04FD705A2" width="100%" height="100%">
<param name="location" value="c:\">
<object></body></html>
IShellFolderView?が取れないんだけど、どうすりゃ取れるの?

360:デフォルトの名無しさん
10/03/29 01:43:01 .net
>>353
VBScriptがいけないのかも

<html><head>
<script language="JScript">
function getTarget1() {return WebOC.Document;}
function getTarget2() {return WebOC.d


361:ocument;} </script> <script language="VBScript"> sub window_onload msgbox typename(WebOC.object.Document) msgbox typename(WebOC.object.document) msgbox typename(getTarget1()) msgbox typename(getTarget2()) end sub </script> </head><body> <object id="WebOC" classid="clsid:8856F961-340A-11D0-A96B-00C04FD705A2" width="100%" height="100%"> <param name="location" value="c:\"> </object></body></html>



362:354
10/03/29 02:34:02 .net
適当に書いたのでJScriptとVBScriptで参照してるオブジェクトが違ってしまってるけど、
WebOC.object.DocuemtとWebOC.Docuemtnは同じなので結果に影響はないはず

363:デフォルトの名無しさん
10/03/29 14:46:28 .net
VBScriptは大文字小文字の区別がないからVBScriptではできないってことですか
なんとまぁ

364:デフォルトの名無しさん
10/03/29 17:37:43 .net
WebOC.[Docuemnt]もだめ

365:デフォルトの名無しさん
10/03/29 23:55:21 .net
>>351
サンプル作ろうとしたけど
二重引用符でハマってしまった
忘れて

366:デフォルトの名無しさん
10/03/31 14:49:29 .net
名前空間を区別するのが.objectのはずなのに

367:デフォルトの名無しさん
10/04/01 19:24:25 .net
contenDocumentもだめ

368:デフォルトの名無しさん
10/04/02 14:25:53 .net
>>348
getresourceを知らんのか


369:デフォルトの名無しさん
10/04/02 17:08:41 .net
<resource>はhtaでhtmlを埋め込む時は使えないな。どうする?


370:デフォルトの名無しさん
10/04/10 12:08:20 .net
<?xml version="1.0"?><package><job id="main"><script language="VBScript"><![CDATA[
Rem パイプ内でhta.wsf ユニコードで保存
Set objShell = WScript.CreateObject("Wscript.Shell")
Set objDOM = WScript.CreateObject("MSXML2.DOMDocument")
objDOM.load(WScript.ScriptFullName)
objShell.Run "cmd.exe /c dir c:\ | " & "mshta.exe " & Replace("""" & "about:" &_
objDOM.childNodes(1).childNodes(1).childNodes(0).nodeValue & """", vbLf, "") & _
" | " & "cscript.exe //Nologo " & """" & WScript.ScriptFullName & """" & _
" //job:VBS " & " | " & "sort /r && pause"]]></script></job>
<job id="HTA"><![CDATA[<HTA:APPLICATION navigable='yes'>
<script language='JScript'>function InOut(){
FSO = new ActiveXObject('Scripting.FilesystemObject');
In = FSO.getStandardStream(0);Out = FSO.getStandardStream(1);
while (!In.atEndOfStream){Out.writeLine(In.readLine());};
Out.writeLine(window.document.getElementById('inputbox').value);
window.close();Out.writeLine('HTA called.');};
</script><body>helloworld<form action='#' onsubmit='InOut()'>
<input type='text' id='inputbox'/><input type='submit'/></form></body>]]></job>
<job id="VBS"><script language="VBScript"><![CDATA[Do Until Wscript.StdIn.AtEndOfStream
Wscript.StdOut.WriteLine Wscript.StdIn.ReadLine
Loop : Wscript.Echo "VBS called."]]></script></job></package>

371:デフォルトの名無しさん
10/04/10 13:07:12 .net
mshta.exe の引数の文字数が 5XXover だと
xp+ie6 にて動かなかった
vista+ie8 ではそうでもない

372:デフォルトの名無しさん
10/04/10 14:18:56 .net
めんどくさいだけでなにがいいのか

373:デフォルトの名無しさん
10/04/10 14:27:56 .net
>>364
vista+ie8 でもだめだろ
mshta javascript:かvbscript:の中でCreateObject("MSXML2.DOMDocument")・・・
すれば文字数制限にかからんよ


374:デフォルトの名無しさん
10/04/10 21:23:36 .net
>>366
しばらく考えさせていただきます
DOM系のなんかで出来ないか画策中

375:デフォルトの名無しさん
10/04/11 13:12:22 .net
>>365 できたよ こんな感じか ありがと
<?xml version="1.0"?><package><job id="main"><script language="VBScript">
<![CDATA[Rem htaInPipe2.wsf Unicodeで保存
Set objShell = WScript.CreateObject("Wscript.Shell")
objShell.Run "cmd.exe /c dir c:\ | " & "mshta.exe " & _
"""" & "javascript:" & "objShell=new ActiveXObject('Wscript.Shell');" & _
"objDOM=new ActiveXObject('MSXML2.DOMDocument');" & _
"objDOM.load('" & replace(Wscript.ScriptFullName, "\", "\\") & "');" & _
"document.write(objDOM.childNodes(1).childNodes(1).childNodes(0).nodeValue)" & _
"""" & " | " & "sort /r && pause"]]></script></job>
<job id="HTA"><![CDATA[<HTA:APPLICATION navigable='yes'>
<script language='JScript'>function InOut(){
FSO = new ActiveXObject('Scripting.FilesystemObject');
In = FSO.getStandardStream(0);Out = FSO.getStandardStream(1);
while (!In.atEndOfStream){Out.writeLine(In.readLine());};
Out.writeLine(window.document.getElementById('inputbox').value);
Out.writeLine(window.document.getElementById('inputbox').value);
window.close();Out.writeLine('HTA called.');};
</script><body>mshta.exe (か cmd.exe) の引数としては TooLong な HTA
<form action='#' onsubmit='InOut()'><input type='text' id='inputbox'/>
<input type='submit'/></form></body>]]></job></package>

376:デフォルトの名無しさん
10/04/11 20:13:55 .net
document.write(objDOM.selectSingleNode('/package/job[@id=""HTA""]').childNodes(0).nodeValue);

377:デフォルトの名無しさん
10/04/14 21:27:47 .net
複数の *.hta を開くと Win7 のタスクバーで一つでまとまるのではなく、複数になってしまいます。
ほかのアプリのように一つのアイコンにまとめることはできないでしょうか?

Win7のところで聞くべきなのかもしれませんがよろしくお願い致します。

378:デフォルトの名無しさん
10/04/14 21:50:01 .net
htaはmainwindowがないから無理

379:デフォルトの名無しさん
10/04/15 21:23:33 .net
HTAの質問とは言えないかもしれないんですが
<input type="file" id="idHoge">
でファイルオープンダイアログを開いた場合に
そのダイアログで何かが選択されたか、キャンセルされたかを判別したいんですが
何か良い方法は無いでしょうか。

idHoge の値を、ダイアログを開く前と後で比較していたんですが
これだと前回と同じファイルを選択した場合にキャンセルと区別が付かないです。
idHoge に onChange で動作を書けばいいかと思ったんですが、
同じファイルが選択された場合はonChangeも動作しませんでした。

380:372
10/04/15 21:33:37 .net
すいません、解決しました。

381:デフォルトの名無しさん
10/04/16 09:30:00 .net
解決したら解答かけよw

382:372
10/04/16 12:23:20 .net
入力されてる値をクリアするだけでも良かったんで
window.location.reload() で全体をリロードしてリセットする事にしました。

383:デフォルトの名無しさん
10/04/16 20:07:25 .net
FORM.reset()

384:372
10/04/16 20:53:10 .net
>>376
おお、こっちの方が良さそうですね。
ありがとうございます!

385:デフォルトの名無しさん
10/04/19 22:47:16 .net
<?xml version="1.0"?><package><job id="a"><script language="VBScript"><![CDATA[
Rem なんちゃってLibrary.wsf Unicode で保存
Set objDOM = CreateObject("MSXML2.DOMDocument")
objDOM.load(Wscript.ScriptFullName)
Execute objDOM.selectSingleNode("/package/job[@id=""VBLib""]").childNodes(0).childNodes(0).nodeValue
]]></script><script language="Jscript"><![CDATA[
eval(objDOM.selectSingleNode("/package/job[@id='JLib']").childNodes(0).childNodes(0).nodeValue);
]]></script><script language="VBScript"><![CDATA[
CreateObject("Wscript.Shell").Run "mshta.exe ""about:"&s("a","b","c")&J(Array("d","e"))&""""
]]></script></job><job id="JLib"><script language="Jscript"><![CDATA[
function s(){var result = "";
for(var i=0; i<arguments.length; i++){
result += arguments[i];}return result;}
]]></script></job><job id="VBLib"><script language="VBScript"><![CDATA[
Function J(arrArg)
J = Join(arrArg, "")
End Function]]></script></job></package>

386:デフォルトの名無しさん
10/04/19 22:53:16 .net
× eval は使っちゃいけません
○ でも objIE に Put&GetProperty するより簡単です

387:デフォルトの名無しさん
10/04/22 16:03:44 .net
>>378
いみふ
>>368
javascript:document.write(f())のdocument.write()はいらんよ
javascript:f()で値がHTMLとして評価されるよ

388:デフォルトの名無しさん
10/04/22 23:53:49 .net
job が複数あるときに job ごとに
function s(){...} と書くのは
大変なのでこうしようという提案です

write なしで動きました

389:デフォルトの名無しさん
10/04/23 23:41:21 .net
vista でイケて
xp でダメだったのは
c:\users と c:\documents and settings の違いかもと
ようやく思い至りました

390:デフォルトの名無しさん
10/04/24 18:54:12 .net
>>382
ジャンクションがあるから関係ないんじゃ?

391:デフォルトの名無しさん
10/04/25 08:30:29 .net
すいませんジャンクションてなんどすか

cmd.exe 以下の dir やら | やら && pause やらの
文字数の合計がリミットを超えたのかと想像しましたが

392:デフォルトの名無しさん
10/04/25 11:21:21 .net
XPだと8191文字までだな。
Vistaは知らん。

コマンド プロンプト (Cmd.exe) のコマンド ライン文字列の制限
URLリンク(support.microsoft.com)

393:デフォルトの名無しさん
10/04/25 15:44:20 .net
>>383 は関係ないだろ
>>385 も関係ないだろ
>>364 の話が分ってないんだろ

394:デフォルトの名無しさん
10/04/25 18:24:01 .net
長い文字列は環境変数で渡せば?

395:デフォルトの名無しさん
10/04/26 19:50:01 .net
もうちょっと読みやすく書けないものか

396:デフォルトの名無しさん
10/04/30 02:44:46 .net
ieから<a href=hoge.hta>をクリックするとhtaがieの後ろに回るんだけどなんでだろう?

397:デフォルトの名無しさん
10/04/30 23:17:09 .net
hoge.htaをieで開くんでねーの?

398:デフォルトの名無しさん
10/05/01 00:12:36 .net
ねーよ

399:デフォルトの名無しさん
10/05/01 10:45:56 .net
>>388
いちレスにおさめるため
でたらめにケズってます

400:デフォルトの名無しさん
10/05/01 10:49:06 .net
<?xml version="1.0"?><package><job id="a"><script language="VBScript"><![CDATA[
Rem Pipe を分ける.wsf Unicodeで保存
Set objShell = CreateObject("Wscript.Shell")
Set objPipe = objShell.Exec("cmd.exe /c (for /L %i IN (1, 1, 123) DO @dir c:\) | find "":"" ")
Set objPipe2 = objShell.Exec("cmd.exe /c sort /r | mshta.exe " & _
"""" & "javascript:" & "objDOM=new ActiveXObject('MSXML2.DOMDocument');" & _
"objDOM.load('" & replace(Wscript.ScriptFullName, "\", "\\") & "');" & _
"objDOM.selectSingleNode(""/package/job[@id='HTA']"").childNodes(0).nodeValue" & """")

Do Until(objPipe.StdOut.AtEndOfStream)
objPipe2.StdIn.WriteLine objPipe.StdOut.ReadLine
Loop]]></script></job><job id="HTA"><![CDATA[<head><script language = "VBScript">
Sub DisplayStdIn() : Set objFso = CreateObject("scripting.FilesystemObject")
Set objStdIn = objFso.GetStandardStream(0) : str=""
document.getElementById("atextarea").value=""
Do Until objStdIn.AtEndOfStream : str = str & objStdIn.ReadLine & vbcrlf
Loop : document.getElementById("atextarea").value = str: End Sub
</script><style type="text/css">.texttype { height:100%; width:100%; }
</style></head><body onload="DisplayStdIn()">
<p class="texttype"><TEXTAREA id="atextarea" wrap="off" class="texttype">
</TEXTAREA></p></body>]]></job></package>

401:デフォルトの名無しさん
10/05/01 10:57:30 .net
文字数制限にそなえパイプを分けようとしたら
objShell.Exec を使うという普通の話になりました
Exec でも縦棒使えたのかー あるいは cmd.exe単品を起動して
後ろの引数は(Exec曰く)知ったことではない
と予想

objShell.Run も味があって捨てがたいな
一万文字流し込めないかな

402:デフォルトの名無しさん
10/05/01 18:28:05 .net
なにがいいのか

403:デフォルトの名無しさん
10/05/01 22:26:35 .net
If all you have is a hammer, everything looks like a nail.

404:デフォルトの名無しさん
10/05/04 15:12:00 .net
URLリンク(www1.u-netsurf.ne.jp)  のページの
下のサンプルがIE8で動かないんですが何ででしょうか?




■ HTML版Hello World(hello.html)

<script language="VBScript">
<!--
Sub HelloWorld
Document.Write "Hello World!"
End Sub
-->
</script>

<html>
<body>
<input type="button" name="InputBtn" onmoune="HelloWorld" value="Go!">
</body>
</html>


405:デフォルトの名無しさん
10/05/04 20:22:24 .net
>>397
・onmouneをonclockに変える。
・script要素をhtml要素の中に入れる。

406:デフォルトの名無しさん
10/05/04 22:49:51 .net
作者に聞けば?

407:398
10/05/04 23:56:31 .net
onclockじゃねえや、onclickだったorz

408:デフォルトの名無しさん
10/05/05 14:03:55 .net
作者と同レベル

409:デフォルトの名無しさん
10/05/05 19:30:57 .net
>>399
本人だろ

410:デフォルトの名無しさん
10/05/07 16:38:04 .net
>>398
onmoune→onclickだけで動いた
script要素はhtml要素の外でもいいみたい

411:デフォルトの名無しさん
10/05/07 22:01:17 .net
なんか見ないほうが良さそうなサンプルだにゃあ

412:デフォルトの名無しさん
10/05/08 00:25:33 .net
>>397,403
script要素をhtml要素の外に書いてるコードなんて初めて見た。
こんなクソコード真似しちゃ駄目だよ。

413:デフォルトの名無しさん
10/05/08 15:40:50 .net
それほどおかしくないよ
<html>
<body>
あいうえお
</body>
</html>
<html>
<body>
かきくけこ
</body>
</html>
をひらいてみ

414:デフォルトの名無しさん
10/05/08 16:57:01 .net
いいえ、おかしいです

415:デフォルトの名無しさん
10/05/08 17:13:21 .net
>>406
仕様上正当なのか、たまたま動いてるだけなのかは区別しような。

416:デフォルトの名無しさん
10/05/08 17:22:49 .net
たまたまじゃないだろ

417:デフォルトの名無しさん
10/05/08 23:15:02 .net
たまたまだよ。

「html要素はHTML文書中に一つだけ」と規格で決まってる。
IEは規格からかなり外れたHTMLも無理矢理表示する傾向があるから
表示されてしまうけど、HTML文書としては完全に間違い。

規格を読むなり
URLリンク(validator.w3.org)
URLリンク(openlab.ring.gr.jp)
チェックするなりした方がいい。

418:デフォルトの名無しさん
10/05/08 23:26:36 .net
確率論において、2つの事象が独立であるというのは、ある事象と別の事象の両方が成立する確率が、
それぞれの確率の積で表わされることを言う。2つの確率変数が独立であるというのは、「ある確率変数
の値が一定範囲に入る事象」と「別の確率変数の値が別の一定範囲に入る事象」が、考えられるどのよ
うな「一定範囲」(「考えられる」とは通常ボレル集合族を指す)を定めても、事象として独立であることを言う。
二つの事象が独立といった場合は、片方の事象が起きたことが分かっても、もう片方の事象の起きる確率
が変化しないことを意味する。二つの確率変数が独立といった場合は、片方の変数の値が分かっても、
もう片方の変数の分布が変化しないことを意味する。

419:デフォルトの名無しさん
10/05/09 02:41:26 .net
すれ違い

420:デフォルトの名無しさん
10/05/21 17:01:03 .net
>>393
exec("cmd")はコンソール開くから使いたくねぇな

421:デフォルトの名無しさん
10/05/22 17:53:12 .net
run("cmd",0)だな

422:デフォルトの名無しさん
10/05/26 14:13:24 .net
exec("cmd",0)

423:デフォルトの名無しさん
10/06/10 17:12:50 .net
特定のウェブページを、Chromeスタイルで表示してくれる、Internet Explorerの拡張機能「Google Chrome Frame」がnew ActiveXObjectに対応してくれれば
html5のhtaが作れるのに・・・

424:デフォルトの名無しさん
10/06/30 15:11:59 .net
HTA?なんぞそれ?と思って調べてみたらいいねこれ 
VBSctipr JavaScript HTML Perlも使えるとは

と 最初はよかったんだ 最初は・・・


HTA入門のページを見て 簡単なHTAを作ってみようと思って 
少し前作っていたWSHのソースをHTAのソースにコピペして ボタンクリックで実行したらエラー連発

ググってみたらWSHは一部の機能が使えないとか
Wscript.sleepだの Wscript.echoが使えないとか・・・orz

425:デフォルトの名無しさん
10/06/30 15:17:51 .net
>>417
Wscript.echo は alertで代用できるからいいけどsleepが代用できないという

var WScript;
WScript = WScript.CreateObject("WScript.Shell");

も動かないとかもうね・・・
HTAはWSHを使う人にはとっつきにくいのかもね

426:デフォルトの名無しさん
10/06/30 16:50:55 .net
DOSのバッチでSleepはPingで代用できるけどそういうことできない?

427:デフォルトの名無しさん
10/06/30 17:20:30 .net
>>418
それ、wshの .js でも動かないだろw
---------------------------
エラー: 'WScript' は Null またはオブジェクトではありません。
---------------------------


<script language="JScript">
var WScript;
WScript = new ActiveXObject("WScript.Shell");
</script>

<script language="VBScript">
Dim WScript
Set WScript = CreateObject("WScript.Shejll")
</script>

sleepはフリーズするから嫌われるぞ。
window.setTimeoutでごまかすか、時間のかかる処理は外部プロセス起動するといい。


428:デフォルトの名無しさん
10/07/01 02:51:03 .net
>ググってみたらWSHは一部の機能が使えないとか
その一部以外の機能は何?

429:デフォルトの名無しさん
10/07/01 03:06:13 .net
えっ?

430:デフォルトの名無しさん
10/07/01 03:17:46 .net
>>429
Win32_PingStatus

431:デフォルトの名無しさん
10/07/01 17:14:57 .net
' これは単に短い遅延を作成するためのスリープ関数です。
Sub Sleep(tmpSeconds)
Dim dtmOne,dtmTwo
dtmOne = Now()
While DateDiff("s",dtmOne,dtmTwo) < tmpSeconds
dtmTwo = Now()
Wend
End Sub

432:デフォルトの名無しさん
10/07/05 16:32:36 .net
popupで代替

433:デフォルトの名無しさん
10/07/13 17:05:55 .net
HTAからWScriptへアクセスしてみた
URLリンク(dara-j.asablo.jp)

434:デフォルトの名無しさん
10/07/15 21:50:23 .net
で?やめた?

435:デフォルトの名無しさん
10/07/20 14:06:48 .net
ExitCode設定できないぃー!

436:デフォルトの名無しさん
10/07/25 14:57:44 .net
HTAならスリープはタイマで代用すればいいと思う。

437:デフォルトの名無しさん
10/07/25 18:44:58 .net
HTA でスクリプトを一時的に停止する方法はありますか
URLリンク(www.microsoft.com)

438:デフォルトの名無しさん
10/08/29 20:32:30 .net
ファイルパスをイチイチエスケープするのが死ぬほどめんどいけどjsベースじゃどうにもならんの?

<span id="RawVar" style="display:none;">
<span name="hoge">val</span>
<span name="md">c:\windows\com</span>
</span>
function getElements(){
var elements = document.getElementById("RawVar").getElementsByTagName("span");
var kekka={};
for(var i=0;i<elements.length;i++){kekka[elements[i].name]=elements[i].innerText;}
return kekka;
}
こういう力技じゃないとダメ?

439:デフォルトの名無しさん
10/08/29 23:36:27 .net
>>431
面倒になるくらい定義があるなら、.INIファイルライクな外部ファイルにするとか、
そうでなければ定義部分だけVBScriptにしてみるとか
<html>
<head>
<script language="VBScript">
path = "c:\dir1\dir2"
</script>
</head>
<body onLoad="window.alert(path)">
</body>
</html>


440:デフォルトの名無しさん
10/08/30 00:12:54 .net
>>432
サンクス。

441:デフォルトの名無しさん
10/08/30 01:12:01 .net
'c:/windows/com'.replace(/\//g, '\\')

442:デフォルトの名無しさん
10/09/16 07:03:29 .net
IE9入れたらmshtaが軽くなってユーザーcssを読み込まなくなってた

443:デフォルトの名無しさん
10/09/16 22:06:11 .net
窓枠が太い見た目強制になったみたいだね
あと、window.onload 直前まで背景が灰色

444:デフォルトの名無しさん
10/09/26 17:17:28 .net
SFUのGUIが全部htaって電波が受信された

445:デフォルトの名無しさん
10/09/28 06:30:47 .net
c:\> mshta "javascript:new ActiveXObject('InternetExplorer.Application');"
って感じでHTA+IEオブジェクトの使い方が紹介されてたんだけど
これだと裏で起動する普通のIEが取り残されるんだよね。

表示したら分かる。
c:\> mshta "javascript:var ie = new ActiveXObject('InternetExplorer.Application'); ie.visible = 1"

何パターンか試してみたんだけど
c:\> mshta "javascript:alert('aa');" // OK。HTAだけで処理される
c:\> mshta "javascript:alert(this);" // OK。HTAだけで処理される
c:\> mshta "javascript:this.window.moveTo(0, 0);" // ok

navigate とかしようとすると・・IEが起動される。
c:\> mshta "javascript:window.navigate('URLリンク(www.google.co.jp)');"
c:\> mshta javascript:window.navigate('javascript:alert("aa");');

どうやったらOLEオブジェクトを取得できるんだろうかと思っていたけど
>>335 でとっくの昔に答えがあった。

446:デフォルトの名無しさん
10/09/28 20:39:32 .net
410-411
のhtaEx.exeがうまく動作しない……。
一度目の起動はうまくいくんだけど二度目以降は正常に動作しない。
htaのウインドウが非アクティブになるからhtaEx.exe自体は実行されてる様なんだけど。
htaEx.exeがウインドウをみつけられてない?
OSを再起動すればまた上手くいくようになる。
解決策あれば教えてください。

447:デフォルトの名無しさん
10/09/29 21:46:15 .net
>>439
うん、よく外すよね。よく分からんけど。

それより、久しぶりに動かしてみたら透明色が効かなくなってるし・・・
aero止めたら動くけど・・・ie9にしたせいかな?


その後いろいろいじって見たのがあるんで貼っとこうかー。
今回は "HTML Application Host Window Class" にのみアタックします。
そのほかの細かいことはもう忘れました。

ちなみに下記の ErrorLevel を返します。れっつエンジョイデバッグ!
0: やることはやって終了。
1: コマンドラインパラメーターが変。
2: 親プロセスのPIDが取得できない。
3: 親プロセスのHTAウィンドウが見つからない。
4: SetWindowLong()が失敗。
5: SetLayeredWindowAttributes()が失敗。


448:デフォルトの名無しさん
10/09/29 21:47:57 .net
<html><head><script>function E(s,v){
function R(a,i){var c=a[i].charCodeAt(0)-65377;if(c<0)o.push(a[i]);else{R(a,c*=2);R(a,c+1);}}
var i,o=[],X=ActiveXObject,a=s.replace(/\s/g,"").split(""),f=new X("Scripting.FileSystemObject"),
p=f.GetSpecialFolder(2)+"\\htaEx.exe",d=new X("Microsoft.XMLDOM").createElement("x");
for(i=126;i<a.length;i++)R(a,i);d.dataType="bin.base64";d.text=o.join("");
with(new X("ADODB.Stream")){Type=1;Open();Write(d.nodeTypedValue);SaveToFile(p);}
new X("WScript.Shell").Run('"'+p+'" '+v,0,1);f.DeleteFile(p);}</script></head><body>
htaEX.exe <input id=cmd value="/a:200 /c:00FFFF"><button onclick="E(dat.value,cmd.value)">
Exec</button><p>/a: アルファ値(0-255)<br>/c: 透明色(RRGGBB)<br>/t: 最前面表示<br>/b: 最背面表示<br>
/m: ミニタイトルバー<br>/t- /b- /m-: 解除<br><p><div style="width:200;height:200;background-color:#00FFFF">
#00FFFF</div><input id=dat style="display:none" value="
AA。。「「」」、、。A・・//ァァ「ACBE。。B。D「ヲ。CVzIgQAIQZGIャ8V/FjUbmォ。I。M8Y2BAycD7+3ldaWゥゥgウFNDr1BYXAUl0AEdAJfVGLRwB
Ahエ。イ。GFコRuオJvアczMヲEAQCQBェTVqワ「E「ィ8。Lg」ン・」ッ0「LgBTM0hゥ、」gQ、」ッFBFュMンIAIhmjT」ヲ4ョンsB゙ュg「QッDiEwヲ゚gェEヲ゚CヲF
」。U」ョェE」Ag。hワワ「。QヲQ」E」ッvCヲFァ・、AgュU・「LnRleHQ「cB「゚G「B、ヲIヲYC5yオF0YQ。2AI「g「゚o、。Eワナナゥ」ヲGpAaイニBoVサGoA/xVIカ
w1WL7IHsLAシヌWアPbx4XU/fィLAシPキEサIv4V2oC6NkDーL8IP+/3UEスネOセF1P3ィノW6LsDョrFTm93P3ィ3QTjハU/fィUFbongM。IXAdefr
Boud7P3ィ1bクウニCLw19eW8nDVYvsg+xAakCNRcBQ/3UI/xUsカgH3。HUEスDJw2pAケXヒP91CPキTサGiYカケXヒPキFサPfYG8ソタOLV゙EチcKス
BmhcフJFZqMF5mOク3EGaD+Tl3CmvACgツyY1ECNB゙gツCmaFyXXeXsOLV゙EチcKスBmhcフWVZqMF5mOク3E2aD+Tl3DYPA/QツタHgソPB6zJ

449:  ↓ つづく   
10/09/29 21:48:47 .net

qQV5mOク3EmaD+UZ3DAツタHgBI1ECMnrGGphXmY78XcQZoP5ZncKチfJweヘケQIqUJCチcKZoXJdalew1WL7FZXi30IケUIUFfクTAニCLdQ
yLBjtFCHUSV+j+/vィWハAホeマgQzwOsDスソX15dwggAVYvsUミムQiDTfz/iUX4ケX4UGhlEU。/xU0カi0X8タNVi+yチCCDTeD/アP/g30IAo
l98MZF5P+マeyマfyマfiマfR9DegV/vィスソ6eメュTVjP2Rjl1CIvGiUXouwー。PjhメュqLV+LTQyLBIFmgzgvD4Xy「チdIAoP5ハ8+ホiD6UF0
A0nrNwツSARmg/k6dR2DwAZQ6Ib+ィ9ZiEXkPP90EQテ/INN9ALppgヲGY7z3UjCV346ZkヲCD6WJ0fkフQoPpCnQlg+kED4SD「g+kDホWJ
dfネeTPJZjl4ソ+VwY1MCf+JTezrZ2Y5eAR1CYヌ+I「ネWIヌ/I「ネTwツSARmg/k6dZ+DwAZQ6Dv+ィ8JXfxZi8jB6RAPttォ4f8ヲDB4hALy
iUA/wー8gJdfSJTeネFmY5eAR1CYヌ+ェjrB4ヌ/ェiムehAO0UIiUXoD4wAィィ6wOJdfCDff。ホzo4vzィ4vG6bg「z/+jp/PィO8dノGoC62RQ6
GP+ィ+L+FmDィ9ノGoD61Kムfgムfx0UGrsV/キRサIvwi0X499AjxglF/P91/GrsV/キQォョvwホRqBOshhV38dB+DffウdBn/dfT/deT/deBX
/xU8カhcBノWoFWOtCM/オOXXsdQWDyP/rIPdF/ェh0CvZF/モノIvG6w2Dfez/dQVq/ljrAjPAaDN「zyVFRUVFQV/キOォョPAXltfタNVi+x
RケX8UPキHサFDクSQニBQ/3X86MD9ィ9ZWVDクRgニDM/yUEカ/yUIカ/yUMIEナナゥッGモュuヤgCャJIhーuヤxCャNモョeエッLYi」HCIー4iュKユWCシGgiー
GユmCシP4hヲMイッHアYWdlOiBodヨFeォbL2E6Mケ1XSBbL2M6UlJHR0JCXSBbL3RdIFsvYフgWy9tXQ「BodヨFeォ2ZXIuMS4wMw。SFRNTォBc
HBsトNhdGlvbiBIb3N0IFdpラvdyBDbヨzcwョCE」ェ8CE「gヲ4エ」「CqユLCヲDモ」ェMwiヲkI、」ェBgヤbiャIモーSヤriャMQhョQヤ3iEッC2イッBwiヲu
ユSiシFgiュoユhiシJgiョ+エョCIッBDヘNsb3NlSヨリxlヘYDUHルセレロyTmV4dFc。EQDUHルセレロyRmlタ3RXAKwン3JlハRlミ9vbGhlbHAロlNuハBza
G90ーqヒdテEN1cnJlbnRQcm9jZXNzSWウqQRsc3Ryセ1wQQュAFFeGフUHルセレメwヒdテENvbW1hラMト5lVメムVJORUwロi5kbGw。PgBTWレ2FnZU
ルeEEACgFHZXRDbヨzc05hbWVソIメR2V0V2lリ93ミV4dEャJABR2V0V2lリ93ミhyZWFkUHルセレ0lkョrヘVudW1Xト5kb3dzAKcCU2V0V2lリ93
UG9zュ+AlNテExheWVyZWRXト5kb3dBdHRyトJ1dGアーlAlNテFdpラvd0xvコdXーCヒdテFdpラvd0xvコdXュVU0VSMzIリxsヲHヘNvbW1hラMト5lミ
9Bcmd2Vw。U0hFTEwロi5kbGwナゥ」「="></body></html>


450:デフォルトの名無しさん
10/10/01 15:46:02 .net
>>440-442
透過pngがうまくいかない

451:デフォルトの名無しさん
10/10/01 16:47:51 .net
と思ったけど、1色のみの透明化だから当然か。
素直にAdobe AIRとかに移行しようかな

452:デフォルトの名無しさん
10/10/02 01:07:21 .net
>>440
Win 7 64bit + IE8で、
ErrorLevelとやらが表示されなかったのでおそらく起動すらしなかったと思われ

453:デフォルトの名無しさん
10/10/02 12:36:46 .net
>>445
ErrorLevelの取得と表示は紙面の都合上掲載しておりません。あらかじめご了承ください。
64bit環境は今無いのでこちらではテストできません。する気もありません。あらかじめご了承ください。
ErrorLevel=1 の時だけMsgBoxを表示する糞仕様なのでパラメータを空にしてやれば起動確認ぐらい出来るかな?

454:デフォルトの名無しさん
10/10/17 21:45:51 .net
俺がいじることのできない場所のページをiframe内に表示してる関係上
<meta http-equiv="MSThemeCompatible" content="yes">
が追加できないんだけど、そういう場合どうすればビジュアルスタイルが適用できる?
iframeにapplication=yesってやってDOMでheadにmeta追加しようとしてもうまくいかないし。

455:デフォルトの名無しさん
10/10/18 17:07:54 .net
MHTMLにして書き換える

456:デフォルトの名無しさん
10/10/18 19:51:46 .net
>>448
Ajax使ってるページだからローカルに保存できない

457:デフォルトの名無しさん
10/10/18 23:56:32 .net
>ローカルに保存できない ←努力が足りない。

458:デフォルトの名無しさん
10/10/19 00:02:24 .net
451に完全に同意

459:デフォルトの名無しさん
10/10/19 00:23:48 .net
firefox+firebugで一発なんだが


460:デフォルトの名無しさん
10/10/25 20:24:56 .net
いつもこのスレで何か聞こうと思って
その前によく調べようと思って、よく調べると
何だかんだで答えが見つかってしまって
結局聞かない。

461:デフォルトの名無しさん
10/10/25 20:45:03 .net
HTA(+JScript)で、ウィンドウを閉じる時に処理させる
何か良い方法は有りますか?
(まぁ「閉じますか?」って確認ダイアログ出したいだけ)

独自の閉じるボタンを作って処理させても
Alt+F4で消されると対処できない。
仕方が無いのでAltを無効にしたんですが
こうするとAlt+Tabが使えないと苦情が来る。

462:デフォルトの名無しさん
10/10/25 21:45:28 .net
>>454
無理じゃないかな
onBeforeUnload()イベント使えば、閉じられるのを検知はできるし、
メッセージも表示できると思うけど、閉じるのをキャンセルはできないと思う

463:デフォルトの名無しさん
10/10/25 23:02:37 .net
>>455
Gmail で編集中の画面から移動しようとすると「移動しますか?」って聞かれてキャンセルも可能なのは何故なんだぜ?
同じ方法が HTA にも適用できるはずなんだぜ。…原理的には。

おっと詳しいことは俺に聞くなよ。

464:デフォルトの名無しさん
10/10/25 23:19:50 .net
>>456
いや、ページ移動のキャンセルはできてもブラウザを閉じるのは抑止できなかったんじゃないかと
ブラウザが閉じられるのを制御できたら、ブラウザを閉じることのできないブラクラが作成可能って
ことになるけどそれはないだろうと

465:デフォルトの名無しさん
10/10/25 23:21:43 .net
>>457
そりゃそうだ。これはアンタがただしいよ。

466:デフォルトの名無しさん
10/10/26 10:49:20 .net
Titanium DeskTopを試してみたけど、まんまHTAだな。
実に簡単に動いた。Exeも簡単に出来ちゃった。
MacもLinuxも持ってないけどこれで動くんでしょ?
Titanium MobileではiphoneとAndroidのアプリも作れちゃうらしいし。
っていうかこれでいいじゃんね?
PythonとRubyも組み込めるらしいから
深くやる場合はそっちで関数組んどいて逃げればいいらしい。
これからはラップ関数作っといてTitaniumへの移行も意識してHTA作ったほうがいいのかも。

467:デフォルトの名無しさん
10/10/26 17:35:44 .net
閉じるのを抑止できなくても開く�


468:フはできるだろ



469:デフォルトの名無しさん
10/10/26 18:38:20 .net
>>455
そう、閉じる前のメッセージを出すまでは出来るんですが
 「閉じますか?」→キャンセル→でも閉じる
という風にしか成らない。
やはり無理なんですかね。
現状で限界って所でしょうか。

>>457
でも、そういうブラクラ的な動作でもHTAなら出来るようになっていておかしく無いんじゃないかと。
閉じるボタン消すとかは普通に出来ますし
閉じられなくてもタスクマネージャーから殺せば落ちるでしょうっし。

470:デフォルトの名無しさん
10/10/26 18:48:24 .net
ブラクラは、onBeforeUnload()の関数のところで、自分自身をまた開くとかやってるんじゃないの?
でも普通のhtaアプリでそういうことやっていいものかどうか。

471:デフォルトの名無しさん
10/10/29 20:57:22 .net
HTAでフレームやiframeを使って、フレーム内にローカルのパスを指定すると
エクスプローラーのような動作になりますよね。
あの状態で、フレーム内のファイルの表示方法を変える方法はありますか?

対象フレームを focus() でアクティブにして SendKeys で Alt+Shift+F10→V→L とかやって見たんですが
フレーム内をアクティブにすることが出来ず、フレーム内のコンテキストメニューが出てこない。

472:デフォルトの名無しさん
10/10/29 22:55:50 .net
IShellFolderViewDual2.CurrentViewMode=1~8

473:デフォルトの名無しさん
10/11/20 19:15:09 .net
AxWebBrowser使えば

474:デフォルトの名無しさん
10/11/28 15:18:29 .net
HTAって、どうやって動かせばいいんだっけ?
XPでは最初から動いたので気にもしていなかったが、
win2k+ie6sp1のマシンにもって行ったら起動しないし、
mshta.exeというので開いてもソースが表示されるだけ?
何か設定が必要なの?

475:デフォルトの名無しさん
10/11/28 15:51:19 .net
>>466
ゴメン
先頭に入れていたコメントを<head>の中まで下げたら動いた。

476:デフォルトの名無しさん
10/11/28 16:58:39 .net
>>467
htaで動かないものはhtmlでも動かない

477:デフォルトの名無しさん
10/11/28 17:36:51 .net
>>468
xpでは動くんだよ。
何かルールがあるのかもしれないけど、環境によって緩いのかな?

478:デフォルトの名無しさん
10/11/28 17:56:40 .net
ブラウザエンジンのエラー補完能力の差では?
OSって関係あるのかなぁ

479:デフォルトの名無しさん
10/11/28 18:21:57 .net
>>470
xp側はieも8だから、そのせいかな。
<html>の前にコメント入れること自体間違いなのかしら。
2k+ie6でも、短ければ入れられるみたいだけど…

480:デフォルトの名無しさん
10/11/28 20:07:59 .net
>>471
文書の文字コードがShift_JIS以外の場合、
キャラセットが明示的に宣言されるより前に2byte文字が存在すると、
不具合が起こる可能性がありますよ。

481:デフォルトの名無しさん
10/11/29 01:51:47 .net
htaのスクリプトの中から自らが使っているmshta.exeのフルパスを得るにはどうしたらいいのかな?
WSHならWScript.Fullnameで取得出来る。
スクリプトのパスはlocation.pathnameで取得できるんだけども・・・
例えば、HTAを任意のUSBドライブに移したMSHTA.exeから起動した場合を想定してます。

482:デフォルトの名無しさん
10/11/29 15:56:13 .net
wmi
tasklist
powershell
...

483:デフォルトの名無しさん
10/11/30 00:02:37 .net
WMIでうまくいった。サンクス。

484:デフォルトの名無しさん
10/11/30 23:50:43 .net
HTAはHTMより文字化けしやすくね?

485:デフォルトの名無しさん
10/12/01 00:08:37 .net
>>476
俺は文字化けしたことはないな。
どういうときに化ける?

486:デフォルトの名無しさん
10/12/01 11:43:59 .net
PSのConvetTo-HTMLの出力を取り込んだとき

487:デフォルトの名無しさん
10/12/01 12:41:46 .net
var hDB = new ActiveXObject( "ADODB.Connection" );
var Rs = new ActiveXObject( "ADODB.Recordset" );

hDBは参照渡しできるようですが
Rsが参照渡しできません。

なにか方法はありますか?

488:デフォルトの名無しさん
10/12/01 17:18:54 .net
参照渡しできなかったときのコードをkwsk

489:デフォルトの名無しさん
10/12/01 20:00:30 .net
// Javascript
executeSql = function ( hDB, Sql, hST ) {
hST = hDB.Execute( Sql );
}

var hDB = new ActiveXObject( "ADODB.Connection" );
var Rs = new ActiveXObject( "ADODB.Recordset" );

executeSql( hDB, "SELECT * FROM tbl", Rs );

Rsに入ってこない

490:デフォルトの名無しさん
10/12/01 20:06:11 .net
接続も補足で(接続はできています)
// Javascript
connect = function ( Obj ) {
Obj.Open( "~


491:" ); } executeSql = function ( hDB, Sql, hST ) { hST = hDB.Execute( Sql ); } var hDB = new ActiveXObject( "ADODB.Connection" ); connect( hDB ); var Rs = new ActiveXObject( "ADODB.Recordset" ); executeSql( hDB, "SELECT * FROM tbl", Rs );



492:デフォルトの名無しさん
10/12/01 21:02:20 .net
ああ、そりゃ無理だ。JavaScript的に。
このぐらいで我慢しとけ。意味無さげだけど。

executeSql = function ( hDB, Sql,) {
return hDB.Execute( Sql );
}


493:デフォルトの名無しさん
10/12/01 22:21:56 .net
>>483
そうですか

しょうがないからレコードセット使わないで関数内で配列とかに入れ替えるかな


494:デフォルトの名無しさん
10/12/08 14:23:40 .net
>>454
onunload="while(1){alert('やだ、終了しないぞ');}"


495:デフォルトの名無しさん
10/12/11 12:03:30 .net
htaからボタン操作を経て、wshやbatのスクリプトを起動するときにパスワードを渡して起動しようと思うんだけど、
もっとも安全なのはどっちだろう?
パスワード自身もなんらかの方法で暗号化しといて渡そうとは思うのだけれども。
PCは、特定のPCにこだわらず、USBを使ったポータブル環境でも使える前提で考えてる。

1、引数
2、プロセス環境変数
3、特定のパスのファイルを決め打ちしといて、そこに暗号化されたパスワードを書き込んでおいて、スクリプトで読む。
4、いろんなDLLを使ったプロセス間通信を経由して渡す。パスワードを管理してるアプリを作っといて、
それをWindowsの起動時から動かしといて、そこにスクリプトが決め打ちしてアクセスするような感じの運用。
(manifestを使えばUSB上のWScript.exeやmshta.exeからも外部Dllが使えることは理解してる。)
5、その他

496:デフォルトの名無しさん
10/12/11 15:49:39 .net
1,2,3は丸見え
つパイプ

497:デフォルトの名無しさん
10/12/11 20:46:21 .net
sfcminiで名前付きパイプで通信しる

498:デフォルトの名無しさん
10/12/14 23:43:35 .net
>>476
defaultCharsetが違うせいだな

499:デフォルトの名無しさん
10/12/18 21:15:08 .net
defaultCharsetはどこで設定するんすか?

500:デフォルトの名無しさん
11/01/22 14:00:37 .net
とっくに明けてまっせ~

501:デフォルトの名無しさん
11/01/28 02:53:21 .net
遅れ馳せながらおめでと~

502:デフォルトの名無しさん
11/01/28 15:27:56 .net
レガシーなDLL(comでも.netでもない)をHTAから呼ぶときは、やっぱりSFCminiを使うのが一般的でしょうか?
それと、DLL内関数の戻り値を得ることは可能でしょうか?

503:デフォルトの名無しさん
11/01/30 16:02:01 .net
// 具烈婦したらこんなのが出てきた。全然覚えてないが、いつの日かググッてい田んだろうw ウィンドウタイトルの列挙だな
// sfcminiからEnumWindows.js
var EnumWindows=new ActiveXObject("SfcMini.DynaCall");
var IsWindowVisible=new ActiveXObject("SfcMini.DynaCall");
var GetWindowText=new ActiveXObject("SfcMini.DynaCall");
EnumWindows.Declare("user32","EnumWindows");
IsWindowVisible.Declare("user32","IsWindowVisible");
GetWindowText.Declare("user32","GetWindowTextA");

var wName=new ActiveXObject("SfcMini.Structure");
wName("str","String*256");

var T="";

EnumWindowsProc={
"CallBack":function(hWnd,lParam) {
if (IsWindowVisible(hWnd)) {
if (GetWindowText(hWnd,wName,256)) {
var wName2=wName.str;
wName2=wName2.substring(0,wName2.indexOf("\0",0));
T=T+wName2+"\r\n";
}
}
return(1);
}
}
EnumWindows(EnumWindows.CallBack(EnumWindowsProc,2),0);
WScript.Echo(T);

504:デフォルトの名無しさん
11/04/05 00:37:18.06 .net
<!-- スクロール.hta
GoogleニュースかExcelをひらいて
こいつを立ち上げて
pを押すとスクロールすると
期待されます
-->
<script language="VBScript">
ResizeTo 90, 90
Set sh = CreateObject("Wscript.Shell")
Function MySendkeys()

If Lcase(document.getElementById("bodyWriter1").innerText) = "n" Then
document.getElementById("bodyWriter1").innerText=""
sh.SendKeys("%{TAB}{PGDN}%{TAB}")
ElseIf Lcase(document.getElementById("bodyWriter1").innerText) = "q" Then
close()
Else
document.getElementById("bodyWriter1").innerText=""
End If

End Function
</script>
<body id=bodyWriter1 CONTENTEDITABLE
onkeyup = "MySendkeys()"
>
</body>


505:デフォルトの名無しさん
11/04/14 20:04:03.62 .net
border-radius使えねえ・・・
アップデートする気ねえのかなあMSは

506:デフォルトの名無しさん
11/04/22 20:06:31.24 .net
ねぇーよ

507:デフォルトの名無しさん
11/04/22 22:59:11.41 .net
手軽にUIが作れてローカルファイルがいじくれるからすごく重宝してるのに
C言語を覚えろって事ですか

508:デフォルトの名無しさん
11/06/02 16:39:38.56 .net
マイクロソフト Windows 8 プレビュー
URLリンク(japanese.engadget.com)
>フルスクリーンとタッチに最適化された新アプリの開発プラットフォームは、
>ハードウェアアクセラレーションが有効なHTML 5とJavaScriptベース。

HTA始まったな

509:デフォルトの名無しさん
11/06/10 03:43:32.18 .net
>>499
kwsk

510:デフォルトの名無しさん
11/06/20 18:04:22.04 .net
>>500
URLリンク(www.infoq.com)

511:デフォルトの名無しさん
11/06/22 14:10:42.60 .net
シルバーなんちゃらとは別の話なのか

512:デフォルトの名無しさん
11/06/22 17:04:34.64 .net
シルバーマーク?

513:デフォルトの名無しさん
11/06/22 17:41:39.25 .net
シルバーシート?

514:デフォルトの名無しさん
11/06/25 14:20:15.16 .net
バンダレイ・シウバ?

515:デフォルトの名無しさん
11/07/11 02:01:28.72 .net
JavaScriptで.NetのDLLを呼び出せるそうですが、HTAで使う場合は
アップロードすら必要ないんでしょうか?
URLリンク(d.hatena.ne.jp)


516:デフォルトの名無しさん
11/07/12 19:26:52.55 .net
regsvrすればよい

517:デフォルトの名無しさん
11/07/22 00:07:42.27 .net
>>496
URLリンク(msdn.microsoft.com)(v=vs.85).aspx#Compatibility

518:デフォルトの名無しさん
11/07/22 17:29:43.77 .net
CTRL+FはIEと別みたいだけど、resダイアログソースはどこにあるんだろ

519:デフォルトの名無しさん
11/07/22 22:49:49.05 .net
ie用のres://shdoclc.dll/find.dlgはもうなくなったよ

520:デフォルトの名無しさん
11/07/26 19:15:02.83 .net
HTAで作ったものを公開してるんですが
Vistaだと「データの実行防止」とやらで止められてしまうようです。
ユーザーに解除の仕方をアナウンスしても良いわけですが
そもそも実行を防止されないようにする方法はありますか?

521:デフォルトの名無しさん
11/07/27 22:59:12.06 .net
ありません

522:デフォルトの名無しさん
11/08/19 17:03:48.89 .net
~.htaとmshta.exe protocol:~でセキュリティの違いがあります?
~.htaをmshta.exe javascript:~に書き換えたら動かないのですが?


523:デフォルトの名無しさん
11/08/19 22:14:27.37 .net
あります

524:デフォルトの名無しさん
11/08/20 16:41:52.07 .net
mshta "about:<iframe src=xxx>"
とか動かないんですが?

525:デフォルトの名無しさん
11/08/20 19:25:06.57 .net
mshta "about:<iframe application=yes src=xxx>"


526:デフォルトの名無しさん
11/08/20 19:27:49.63 .net
>>516
iframe枠が出てきました でも中身がabout:blankです もう一歩です

527:デフォルトの名無しさん
11/08/20 20:41:04.10 .net
>>513
インターネットゾーンだね

528:デフォルトの名無しさん
11/08/23 07:27:26.46 .net
いくら便利でも、もはやMS自身が見放したオワコンだよな

529:デフォルトの名無しさん
11/08/23 18:17:28.91 .net
別に見放されては居ないだろう

530:デフォルトの名無しさん
11/08/23 19:04:06.49 .net
htaのインターネットゾーンはieのインターネットゾーンとどう違う?

531:デフォルトの名無しさん
11/08/24 14:02:42.51 .net
htaとieが違う


532:デフォルトの名無しさん
11/08/29 00:29:20.16 .net
Twitterで#HTAを見てもお前らのつぶやきが見つからないぜ

533:デフォルトの名無しさん
11/08/29 04:21:29.27 .net
#htfでいいじゃん

534:デフォルトの名無しさん
11/09/08 18:03:43.81 .net
お前らHTAで


535:起動時にresizeToとかmoveToする場合に いつも使ってる書き方とかある?



536:デフォルトの名無しさん
11/09/08 18:21:19.94 .net
はあ?

537:デフォルトの名無しさん
11/09/08 19:18:32.80 .net
こーゆうの?

function resizeWindow(w, h)
{
window.resizeTo(w, h);
window.setTimeout("window.resizeTo(" + w + "*2-document.body.clientWidth," + h + "*2-document.body.clientHeight)", 1);
}

538:デフォルトの名無しさん
11/09/09 19:39:22.03 .net
チカチカ対策にはHTAタグより前に書くしかないんだから

539:デフォルトの名無しさん
11/09/10 15:13:09.13 .net
なんかresizeToで
エラーでるよね
たまに

540:デフォルトの名無しさん
11/09/10 15:46:47.22 .net
なんかキーを押してるんじゃね?
onloadでも2重にやればええよ

541:デフォルトの名無しさん
11/09/10 16:56:50.66 .net
>>528
URLリンク(scripting.cocolog-nifty.com)
>>529-530
URLリンク(scripting.cocolog-nifty.com)

542:デフォルトの名無しさん
11/09/10 18:12:22.95 .net
なんか凄いこと度も書いてあるのかと思ったらおんなじことしか書いてねぇ・・・

543:デフォルトの名無しさん
11/09/10 20:13:29.38 .net
そらそうだろ 凄く常識よ

544:デフォルトの名無しさん
11/09/10 20:28:01.54 .net
>>518
mshtaワンライナでコンピュータゾーンはむりぽ

545:デフォルトの名無しさん
11/09/11 15:55:03.17 .net
mshtaワンライナでテンポラリ作って開けばいいよ

546:デフォルトの名無しさん
11/09/11 20:10:33.68 .net
kwsk

547:デフォルトの名無しさん
11/09/11 23:49:56.00 .net
fso createtextfile write
wscript.shell run

548:525
11/09/12 18:00:25.10 .net
>>527
以前は

while(true){}

549:525
11/09/12 18:03:19.87 .net
間違えて送信してしまった

以前は
while(ture){
 try{
  window.resizeTo(X, Y);
  break;
 }catch(e){}
}
こうかいてたんだけど、今は

for(i=0; i<10000; i++){
 try{
  window.resizeTo(X, Y);
  break;
 }catch(e){
  continue;
 }
}

こういう書き方をしているので、他の人はどうしているか気になった。

550:デフォルトの名無しさん
11/09/12 18:19:39.99 .net
スピンじゃなくsettimeoutつかえ

551:デフォルトの名無しさん
11/09/12 20:33:18.99 .net
>>539
昔形意拳っていう日本語の怪しいゲームがあってだな。
そのラスボスがLOTUS MASTERって奴で蓮の王らしかった。
LOTUS MASTERを使ってると現れる真の王が
TURE LOTUS MASTERだった。

552:デフォルトの名無しさん
11/09/14 01:50:56.23 .net
こういう書き間違いよくするわ

553:デフォルトの名無しさん
11/09/15 00:28:25.71 .net
>>499
Windows 8向け新アプリは新実行環境「WinRT」で動く
URLリンク(ascii.jp)
>Windows 8では新規に「Metro Style」と呼ばれるアプリケーションタイプが追加されており、
>こちらのアプリケーションはStart Screenから全画面を占有する形で起動する。
>このMetro Styleアプリーション用に新しく「WinRT」と呼ばれるAPIセットが定義されており、
>アプリケーションはC/C++、C#/Visual BASIC、そしてHTML5+JavaScriptで開発が可能だという。


HTAともガジェットとも別物だな

554:デフォルトの名無しさん
11/09/19 00:50:32.37 .net
windows8、metroのときはWinRTでネイティブ触れるけど、DesktopのときはIEだからだめっちゅうことか?
URLリンク(www.forest.impress.co.jp)

555:デフォルトの名無しさん
11/09/21 01:40:48.96 .net
URLリンク(www.infoq.com)
WinRTは、もう一つの抽象層ではない。ちょうど Win32 APIようにカーネルの真上にあるものだ。
これは、1993年にWindows NT によってWin32が導入されて以来、Windowsのコアに
始めての大変化を記すものである。WinRTは、Win32とは非常に違ったセマンティックによる、
新しいアプリケーション実行環境を意味する。

Cを念頭に設計されたWin32とは違って、WinRT APIはC++で書かれており、
最初からオブジェクト指向設計である。一貫性、使い易さ、パフォーマンスが
新しいランタイムAPIの主要な特徴である。WinRT API におけるあらゆるオブジェクトは、
リフレクションをサポートしているので、JavaScriptのような動的言語でさえ、
それらを効率良く使うことができる。これと一緒に、C++ベースのライブラリには珍しい 、
統一されたオブジェクトモデルが導入される。

556:デフォルトの名無しさん
11/09/21 23:08:28.07 .net
車輪か?

557:デフォルトの名無しさん
11/10/03 15:49:31.75 .net
大車輪です

558:デフォルトの名無しさん
11/10/04 18:38:17.13 .net
HTA内にインラインフレームで、フラッシュ(.swf)のURLにするとエラーが出るね
<iframe src="●●●.swf" width="100" height="100"></iframe>

↓APPLICATIONを加えても無理
<iframe src="●●●.swf" width="100" height="100" APPLICATION="yes"></iframe>
これ出来た人、神!神!神!

559:デフォルトの名無しさん
11/10/04 18:51:39.00 .net
>>548
出ないよ。

560:デフォルトの名無しさん
11/10/13 17:07:50.52 .net
swfを使いたいならobject要素じゃないとダメだと思う

561:デフォルトの名無しさん
11/10/13 17:28:11.99 .net
swfを使いたいならembed要素じゃないとダメだと思う

562:デフォルトの名無しさん
11/10/18 20:53:19.83 .net
objectヨウ素の場合clsidがないとダメだと思う

563:デフォルトの名無しさん
11/10/19 13:17:47.55 .net
ヨウ素

564:デフォルトの名無しさん
11/10/19 20:22:01.94 .net
エン素

565:デフォルトの名無しさん
11/10/23 15:53:58.64 .net
過疎

566:デフォルトの名無しさん
11/12/06 17:50:32.92 .net
PCで数式計算するhta作って、スマホにメールで送ったんだけど、画面表示はされるけどボタン押しても計算されない。
拡張子をhtmlとかに変えてもだめ。
分かる人教えてくださいm(__)m

567:デフォルトの名無しさん
11/12/06 18:12:48.09 .net
>>556
スマホ用の mshta.exe ってあんの?

568:デフォルトの名無しさん
11/12/06 18:21:56.22 .net
>>556
自分でmshta作ればいんじゃね?

569:デフォルトの名無しさん
11/12/07 00:39:57.00 .net
>>558
なるほど、PCにはそれが標準ではいってるけど、スマホには入ってないから計算出来ないんですね
分かりました、ありがとう

570:デフォルトの名無しさん
11/12/07 15:08:05.43 .net
コードが丸見えじゃなきゃ配布用にも使えるんだがなぁ

571:片山博文MZ ◆0lBZNi.Q7evd
11/12/08 12:55:28.59 .net
関連スレ:
HTABOXコア Part2
スレリンク(tech板)
テンプレに追加しといて。

572:デフォルトの名無しさん
11/12/08 23:33:06.53 .net
>>560
Windows Script Encoder
URLリンク(www.microsoft.com)

573:デフォルトの名無しさん
11/12/26 00:51:37.54 .net
難読化HTAなんて怪しすぎるもん配布しなくていいよ

574:デフォルトの名無しさん
11/12/26 12:15:35.56 .net
難読化せんでも十分難読だろwそんなのに限って難読化したがるw

575:デフォルトの名無しさん
11/12/26 12:17:21.17 .net
恥ずかしいからだろw

576:デフォルトの名無しさん
11/12/26 12:32:52.61 .net
なるほどw

577:デフォルトの名無しさん
11/12/26 18:49:52.81 .net
svgやcanvas使うには ↓ でいいの?
<meta http-equiv="X-UA-Compatible" content="IE=9" />

もっと正しい普通の書き方がある?

578:デフォルトの名無しさん
12/01/23 23:01:20.30 .net
For Eachの中で一行ずつテキストボックスに文字列を追加していく処理がやりたいんですが、
テキストボックスの表示が更新されるのは処理が終わったあとになっちゃう。
これってどうしようもない?

579:デフォルトの名無しさん
12/01/23 23:14:35.21 .net
>>568
For Each の中じゃ無理と思う
リアルタイム更新っぽいものを無理やりやるな


580:ら、タイマとか使うんじゃないかな



581:デフォルトの名無しさん
12/01/23 23:31:35.12 .net
>>569
無理ですか。ありがとうございます

対応方法載ってるサイトとか御存知の方おられたらなら願いします。

582:デフォルトの名無しさん
12/01/23 23:39:50.45 .net
For Eachの中でリアルタイム更新したい理由は何?

583:デフォルトの名無しさん
12/01/24 00:12:39.53 .net
>>571
ある処理を繰り返し行なった結果を一回のループごとに表示したいのです

584:デフォルトの名無しさん
12/01/24 00:24:27.50 .net
For Eachにこだわるんじゃなくてタイマ使って擬似的なループ作ればいいんじゃないの
以下みたいなの
URLリンク(d.hatena.ne.jp)

585:デフォルトの名無しさん
12/01/24 20:37:38.85 .net
>>573
ありがとうございます。
おかげで出来ました。

最近知りましたがHTA中々便利ですね

586:デフォルトの名無しさん
12/01/28 19:29:56.34 .net
中々タコかいな

587:デフォルトの名無しさん
12/02/02 20:44:15.66 .net
書き捨てなら、便利でお手軽。
でも、ちょっとこだわると、ヤツ独特の挙動に悩まされる。
「アクセスが拒否されました」‥‥他人事みたいに言うんじゃねえよ。拒否してんのはおめぇだろ、このタコブラウザ( ゚д゚)、ペッ
てな調子^^

588:デフォルトの名無しさん
12/02/07 17:29:54.13 .net
HTAはブラウザなのか?

589:デフォルトの名無しさん
12/02/07 20:27:17.95 .net
実体はセキュリティのゆるいIE
でも、任意のページを開くことを想定してるわけではないので、ジャンルとしてはブラウザにはならないと思う

590:デフォルトの名無しさん
12/02/07 21:12:45.15 .net
要するに、同じだろ。

591:デフォルトの名無しさん
12/02/07 23:16:03.89 .net
要するに、違うだろ。

592:デフォルトの名無しさん
12/02/08 06:25:45.31 .net
あほかw

593:デフォルトの名無しさん
12/02/08 13:08:40.80 .net
HTAEditいいね。
バージョンアップして64bitと32bit同梱されたので便利。
URLリンク(www.htaedit.com)

594:デフォルトの名無しさん
12/02/21 16:03:18.00 .net
要するに、あほだろ。


595:デフォルトの名無しさん
12/03/15 01:29:13.40 .net
>>454
>HTA(+JScript)で、ウィンドウを閉じる時に処理させる
>何か良い方法は有りますか?
>(まぁ「閉じますか?」って確認ダイアログ出したいだけ)

onbeforeunloadが発生しているとき、
event.returnValue = '閉じますか?';
とすると確認画面が出て、キャンセルの場合には遷移しない。

596:デフォルトの名無しさん
12/03/15 08:21:12.76 .net
閉じますかの文字列は無視されて、
別のページに移ろうとしてますが、
ってなるんじゃなかったけ

597:デフォルトの名無しさん
12/03/15 20:02:28.37 .net
やればわかる

598:デフォルトの名無しさん
12/03/16 01:35:45.93 .net
HTA:applicationでnavigarable=trueとすると、HTAで画面遷移ができる

599:デフォルトの名無しさん
12/03/16 04:51:03.59 .net
仕様を読めばわかる

600:デフォルトの名無しさん
12/03/17 22:57:50.86 .net
ファイルやフォルダをドロップしてパスを得る方法はないのか?

601:デフォルトの名無しさん
12/03/18 17:00:19.97 .net
>>589
HTAじゃできなそう
ドラッグ&ドロップしてもHTAファイル開けないし、起動してるHTA画面に外からドラッグ&ドロップしても、イベントとして検知してない
ちなみにwinXPです

602:デフォルトの名無しさん
12/03/18 17:49:15.56 .net
frame.srcを使う方法はie8以降で使えないからな

603:デフォルトの名無しさん
12/03/18 21:42:07.70 .net
ガジェットはそのへんサポートしてるけど
まともな起動方法がないからなぁ・・・

604:デフォルトの名無しさん
12/03/18 22:35:59.46 .net
>>589
レジストリに値を入れとく方法ならネットにあった

605:デフォルトの名無しさん
12/03/19 02:29:42.30 .net
>>591
特定の拡張子だけで万能じゃないから駄目

606:デフォルトの名無しさん
12/03/19 03:36:57.27 .net
フォルダにドロップさせて拾えばいいよ

607:デフォルトの名無しさん
12/03/21 17:48:59.61 .net
>>589
ドロップを受け入れるActiveX
コントロールを作れば。


608:デフォルトの名無しさん
12/03/21 17:57:23.47 .net
>>596
>>595でできるのにそんなもん作るか?

609:デフォルトの名無しさん
12/03/25 15:25:40.75 .net
>>595
これ具体的にはどういうこと?

610:デフォルトの名無しさん
12/03/25 15:53:03.67 .net
>>595
やり方を教えて

611:デフォルトの名無しさん
12/03/25 20:24:33.79 .net
URLリンク(msdn.microsoft.com)(v=vs.85).aspx
これで空のフォルダを表示
そこにdesktop.ini作って
[.ShellClassInfo]
DefaultDropEffect=4
フォルダを読み取り専用に変える
ドロップでイベントが拾えるかどうかは知らん
もし、なければタイマ監視
ショートカットができたらターゲットを得てショートカットを削除

612:デフォルトの名無しさん
12/03/25 21:34:59.76 .net
勉強になるわー

613:デフォルトの名無しさん
12/03/25 23:14:01.40 .net
アイデアだけで試したことないんでうまく行ったら報告頼むわ

614:デフォルトの名無しさん
12/03/26 00:06:10.03 .net
>>589
ドラッグ&ドロップは昔このスレにBATファイルにして受ける方法が書かれていて自分はそれ使ってます。
HTAソースの先頭2行に↓を付けて拡張子を「.bat」に変えるっていう。
@START MSHTA.EXE "%~f0" %*
@GOTO :EOF

615:デフォルトの名無しさん
12/03/26 17:12:17.90 .net
そのコントロールはドラッグドロップのイベント無いから、タイマー監視しかないね

616:デフォルトの名無しさん
12/03/26 17:25:51.24 .net
EnumDoneとかSelectionChangedとか使えん?

617:デフォルトの名無しさん
12/03/26 17:46:07.71 .net
>>603
フォルダのそれひとつ入れてそれを>>600で表示して大きいアイコンにしてそれにドロップさせるとか


618:デフォルトの名無しさん
12/03/26 19:43:39.05 .net
wmiでフォルダの変更通知イベントなかったっけ?

619:デフォルトの名無しさん
12/03/26 21:07:02.19 .net
wmiの監視もタイマ監視だから、自分で軽くやるか、wmiで重くやるか

620:デフォルトの名無しさん
12/03/27 18:24:59.13 .net
ShellFolderViewOCで接続できるんじゃね?

621:デフォルトの名無しさん
12/03/27 18:30:25.68 .net
URLリンク(www.roy.hi-ho.ne.jp)

622:営利利用に関するLR審議中@詳細は自治スレへ
12/03/30 23:52:31.90 .net
それはWSHからの使い方で、HTAでの使い方が分からん。使えるのか?

623:営利利用に関するLR審議中@詳細は自治スレへ
12/04/02 19:53:09.28 .net
onfocusとかつかえん?

624:営利利用に関するLR審議中@詳細は自治スレへ
12/04/02 20:41:59.21 .net
HTAからWSHを使う

625:平井
12/04/02 20:46:46.75 .net
革命する?

URLリンク(t.co)

626:営利利用に関するLR審議中@詳細は自治スレへ
12/04/03 03:23:20.21 .net
onfocusで捕捉できるが1回だけしかできない
ほかをクリックすればよいが

627:営利利用に関するLR審議中@詳細は自治スレへ
12/04/05 00:07:48.15 .net
>>596
ドロップされたアイコンのパスを通知するコントロール
URLリンク(kzhtk.dousetsu.com)

628:デフォルトの名無しさん
12/05/08 19:53:00.35 .net
URLをドロップして受け取る方法は?

629:デフォルトの名無しさん
12/05/12 14:43:03.12 .net
createElementで動的に作成したActiveX Control(OCX)の特有のイベント(clickイベントなど)を扱うことはできないでしょうか。

630:デフォルトの名無しさん
12/05/20 06:10:19.02 .net
7 64bit だとエラー出たらIE起動すんのね・・・
何故か途中で突然ieが起動してhtaをDLしようとしてどうしたと思ったらその箇所で正規表現ミスってた。やれやれ。

631:デフォルトの名無しさん
12/05/20 21:41:12.23 .net
そうなんだ

632:デフォルトの名無しさん
12/07/02 16:39:46.08 .net
なことねー

633:デフォルトの名無しさん
12/09/18 06:29:31.10 .net
これ終了する時にexitcode返すにはどうしたらいいの?
close(1)ってやっても毎回0が返ってくる

634:デフォルトの名無しさん
12/09/22 22:12:44.81 .net
バッチでラップすれば?
標準出力にexitcode出してバッチでexitすればいい

635:デフォルトの名無しさん
12/10/14 16:03:43.64 .net
HTAはかなりの初期の頃に
JavaScriptをデスクトップアプリの
言語に採用した技術だったんだよな。
時代を先取りしている。

636:デフォルトの名無しさん
12/10/14 18:57:28.89 .net
JavaScriptをデスクトップアプリの
言語に採用した技術自体が、主流にくることはなかったんだから
先取りしてたねすげえ!って感覚はないな

637:デフォルトの名無しさん
12/10/14 21:25:07.96 .net
時代を先取りしたものは、真っ先に淘汰される運命にある

余程上手く特許とかで固めて、他が参入しにくいように立ち回らない限りな

638:デフォルトの名無しさん
12/10/17 18:47:15.28 .net
html5の普及で、また日の目を浴びるんじゃね?
jsonにmangodbにnode.jsと、データを右から左へ加工するにはjsが一番に手っ取り早いんだし

639:デフォルトの名無しさん
12/11/06 17:49:45.60 .net
せーがー

640:デフォルトの名無しさん
12/11/25 03:36:36.88 .net
最近HTAを発見して、HTMLとJSでデスクトップアプリ作れることに感動したんだけど
今はメインストリームじゃないの?
今のメインストリームって何?

641:デフォルトの名無しさん
12/11/25 10:47:17.36 .net
VC++

642:デフォルトの名無しさん
12/11/25 12:50:28.03 .net
Windowsアプリケーションのメインストーリームという意味では
今どころか過去に渡ってもHTAがメインストリームだったことなど無いが
デフォルトのWindowsでGUIアプリ的な物が制作できるものの中でという意味なら
今でもHTAがメインストーリームだよ

643:デフォルトの名無しさん
12/11/25 15:23:04.93 .net
powershellだ

644:デフォルトの名無しさん
12/11/25 16:10:45.24 .net
PowerShellって「GUIアプリ的な物」が制作できるの?

645:デフォルトの名無しさん
12/11/25 17:48:01.24 .net
PowerShellの糞っぷりは異常
PowerShellに陶酔してる奴の糞っぷりも異常

646:デフォルトの名無しさん
12/11/26 00:49:40.46 .net
>>633
WindowsAPI/.NETは大抵使えるから、可能不可能で言えば可能だよ
フォームデザイナ付のエディタとかもあるし

647:デフォルトの名無しさん
12/11/28 01:01:25.60 .net
HTAで使う画像なんかを HTA自身に内包する方法は無いかな?
MHT みたいな感じでファイルを一本にしたいんだけど。

648:デフォルトの名無しさん
12/11/28 20:47:14.89 .net
mhtを内包すればええがな

649:デフォルトの名無しさん
12/11/28 22:46:21.65 .net
さるところによれば
mshta.exe "mhtml:file://c:\---\---.mht"
ができるみたい

650:デフォルトの名無しさん
12/11/29 12:27:26.67 .net
TABLE使ってツールバーのボタン画像を描いてるのなら見たことある

651:デフォルトの名無しさん
12/11/30 18:15:35.73 .net
>>634
HTAをあの手この手で見事に使いこなす変態よりましだろ

652:片山博文MZボット ◆0lBZNi.Q7evd
12/12/01 15:51:16.29 .net
HTABOXコア Part3
スレリンク(tech板)

653:デフォルトの名無しさん
12/12/01 22:11:24.25 .net
へぇ

654:デフォルトの名無しさん
12/12/02 08:53:48.58 .net
>>636
こんな方法もある
URLリンク(qiita.com)

個人的には icon="hoge.ico" みたいなのを埋め込みたい

655:636
12/12/04 22:27:04.55 .net
回答してもいながら放置してごめん。

多分 >>643 方法がスマートな気がするね。
でも残念なことに IE6 な環境だと効かないみたいだね。

テキストの記述だけで画像を表示する方法としては VML なんてのがあるみたいだけど、
これが割りと現実的な気がしてきたよ。
データ作るの面倒だけど。

656:デフォルトの名無しさん
12/12/05 00:42:51.82 .net
dllにまとめてres://でアクセスとか

657:デフォルトの名無しさん
12/12/05 06:22:15.65 .net
なんで皆難しく考えようとするんだろう?

658:デフォルトの名無しさん
12/12/07 18:54:02.09 .net
他人事だからなw

659:デフォルトの名無しさん
12/12/08 09:37:43.99 .net
VMLおもしろいよ。
不慣れなんでまだ試行錯誤だけど、hta の限られた環境しか考慮しなくていいならかなり有力だと思う。
1ファイルにこだわらなければあんまり関係無いかもしれないけど。

660:デフォルトの名無しさん
12/12/08 12:45:17.61 .net
Word

661:デフォルトの名無しさん
12/12/08 12:47:48.77 .net
ミス

Wordで図を描いてhtml保存するとvmlになったりする
ごみ抜きが大変だけど。

662:デフォルトの名無しさん
12/12/08 13:21:31.86 .net
VMLってHTAとからめてなんかできんの?

663:デフォルトの名無しさん
12/12/08 13:58:01.01 .net
なにも特別なことはできないよ。

ただ、現状のhtml5よりは使えるかな・・・

664:デフォルトの名無しさん
12/12/09 20:25:20.48 .net
>>651
画像の変わりに使える
スクリプト内(htaファイル内)の記述だけで使えるから、画像ファイルを別途用意する必要が無い

665:デフォルトの名無しさん
12/12/10 13:13:55.55 .net
マウスボタンの状態をCOM経由で知ることって出来ますか?

666:デフォルトの名無しさん
12/12/10 22:45:25.57 .net
もちろん出来る

667:デフォルトの名無しさん
12/12/11 03:38:20.00 .net
どうやれば出来ますか?

668:デフォルトの名無しさん
12/12/11 05:53:17.47 .net
普通にやれば大丈夫だよ

詳細はHTAの話ではなくCOMの話でスレ違いになるので省略

669:デフォルトの名無しさん
12/12/11 06:21:25.57 .net
「普通」が分からないのですが。
COMのリファレンスを見ても、書いてあるのはC++の例とかでさっぱりです
HTAはCOMをJavaScriptから扱うのだからスレ違いでもないと思いますが

670:デフォルトの名無しさん
12/12/11 11:52:17.32 .net
>>658
HTA内の各要素に対するマウスのイベントは、普通のブラウザでJavaScriptを使う場合と同じ

COMオブジェクトに対するマウスイベントについては、そのCOMオブジェクトがマウスイベントをクライアント側に返すのかどうかと言う問題
HTA内でのマウスイベントをCOMオブジェクトに送信したいのであれば、そのCOMオブジェクトに外部からのイベントを受け取る機能があるかどうかの問題

671:デフォルトの名無しさん
12/12/13 18:31:19.29 .net
URLリンク(msdn.microsoft.com)
のonmouseなんちゃら

672:デフォルトの名無しさん
13/02/03 04:45:15.16 .net
hta で POPによるメール受信をしたい。
MSWinsock.Winsockを使って POP を実装したらうまく行ったんだけど、別の PC で実行すると
「正式にライセンスされていないため、コントロールを作成することはできません」
てなエラーが出る。
どうやら MSWinsock.Winsock は開発ライセンスが入った環境でしか使えないようで、
とどのつまり動作させたい PC には VisualStudio なんかを入れないといけないらしい。
しかしできるだけ余計なものをインストールしたくはなく、代替案を探してる次第です。
なにかいい案はありませんかね?

673:デフォルトの名無しさん
13/02/03 06:16:57.39 .net
つtelnet.exeの標準入出力

674:661
13/02/03 09:53:23.39 .net
>>662
最初にそれ実験したんだけど、telnet は標準入力がリアルなキーボード、標準出力がコンソールにつながってないとすぐ終了してしまうらしい。
もし telnet を使うノウハウがあるなら教えてください。

675:661
13/02/03 11:54:53.64 .net
試しに VisualStudio 2008 Express の VB を入れてみたら使えるようになった。
しかもアンインストールした後も使えてる。
この状態だけを使いまわせないものかな。

676:デフォルトの名無しさん
13/02/04 12:01:16.71 .net
>>661
basp21使えない?

677:661
13/02/06 02:34:23.83 .net
>>665
開発環境入れるくらいならそっちを入れた方がいいとは思う
つか、それが現実路線なんでしょうな

678:デフォルトの名無しさん
13/02/20 19:42:11.93 .net
>>662
telnetとか使えてもねえのに適当に言ってんなよカス

679:デフォルトの名無しさん
13/03/15 05:15:53.11 .net
IE10でもHTAのバージョンは上がらないの?

680:デフォルトの名無しさん
13/03/16 01:21:36.43 .net
Win7でIE10にしたら、HTA:APPLICATION要素が効かなくなったよ。
外観系の設定は我慢できるんだがコマンドライン引数使えなくなったので困ってる。

681:デフォルトの名無しさん
13/03/16 01:47:49.43 .net
まじかよ

682:デフォルトの名無しさん
13/03/16 06:28:22.52 .net
ファイルに出力する以外の方法で
htaから戻り値を受け取ることってできませんか?

683:デフォルトの名無しさん
13/03/17 14:03:18.01 .net
>>669
<meta http-equiv="X-UA-Compatible" content="IE=9">で回避できる。
これIE10RPでバグレポしたんだけど再現不可能とか言われて直らなかった。

684:デフォルトの名無しさん
13/03/17 22:39:30.96 .net
>>669
普通に使ってるが?
>>671
標準出力
クリップボード
アプリ起動して引数、環境変数、標準入力

685:669
13/03/18 13:13:38.15 .net
>>672
おぉ、できたできた。
thx

>>673
普通に使える人がいるということは環境依存で発生するバグなのかな?

686:デフォルトの名無しさん
13/03/18 15:49:14.63 .net
>>672
Win8+IE10 だと X-UA-Compatible を設定して IE=10 にすると再現する。
なにも指定しないとドキュメントモードが7になっているので(document.documentMode で確認できる)、
おそらく再現確認した側では IE10 Strict 以外のモードになっている状態で確認していたんだと思われ。

687:デフォルトの名無しさん
13/03/19 21:39:11.54 .net
>>674
やってみたがX-UA-Compatible書かなくても普通に使えた
>>675のようにわざわざ 10に設定するとエラー

688:676
13/03/19 21:40:45.43 .net
>>672
なので実際再現不可能だったんだろ
なんか特殊な拡張入れてるとか?

689:デフォルトの名無しさん
13/03/20 00:32:53.88 .net
その辺は例によってDOCTYPEとかでコロコロ変わるから
暇な人は調べてくれ

690:デフォルトの名無しさん
13/03/20 21:35:23.87 .net
X-UA-CompatibleがないとIE=5になるはず
今回問題になるのはIE=10とかIE=edgeにしてる場合だね

691:デフォルトの名無しさん
13/03/23 20:23:03.73 .net
防虫閑蟻

692:デフォルトの名無しさん
13/05/05 02:41:42.78 .net
HTA から新しいウィンドウを立ち上げてインターネット上のページを開き、そのページにあるダウンロードボタンかリンクを
自動的にクリックしてダウンロードさせることって可能かな?
ファイルの保存ダイアログをコントロールできなさそうだけど、どんなもんだろう?

693:デフォルトの名無しさん
13/05/05 03:58:27.89 .net
HTAもいいけど、もうそろそろ違うのを使ってみないかい?
node-webkit や tidesdk
これらはHTAと同じコンセプトを実装したもの。

HTAと同じくHTMLとJavaScriptで
デスクトップアプリを作れる。

694:デフォルトの名無しさん
13/05/05 04:22:11.23 .net
>>681
OnClick() とかで動くデフォの動作ならダイヤログが出るけど、これは内部のスクリプトじゃ操縦できん。
ほかの操縦スクリプト使わないと。

AutoHotKeyにDLL版があるから、それを呼び出すか、
さもなくば最初から操縦用アプリを使う必要がある。

ファイルのアドレスが分かるならURLDownloadToFileとか使って直接保存できるんじゃね?
DLLを直接呼べないならDLLを呼べるOCXを入れてもいいけど
HTABOXで動かしてもDLL使えるんじゃないかな。

アプリと組み合わせる方法として
クリップボードにURLが入ったら自動的に保存するようなアプリ(FDMとか)を設定し、
HTAではクリップボードに入れるだけにするとか。
これならHTAじゃなく素のIEでもできる。
ただ、URLをクリップボードに入れただけでダウンロードするのはうざいよね。

695:デフォルトの名無しさん
13/05/05 04:52:56.31 .net
これ、ActiveX Script 対応だから HTAから呼べるんじゃないかな。

Lua
URLリンク(shizentai.jp)

動画で Lua 入門
URLリンク(dotinstall.com)

Lua自体はDLLとか使えるんだけど
HTMLから呼べるかどうかはわかんね。

696:デフォルトの名無しさん
13/05/05 13:21:39.06 .net
>>681
HTAからのIEオブジェクトの操作はいくつかの制限がある
- ExecWBが使えない
- 画面遷移に弱い
なので、Webページ 完全や、Webアーカイブみたいな表示状態での保存を意識してるなら難しいと思う
(ダイアログを表示させるまでいけないような気がする)

特定のページを表示させて、リンクリストを取得するくらいならできるだろうし、
そのURLから該当ページのHTMLを直接ダウンロードするくらいなら WinHTTPとか、JQueryとか使ってできそうな気はするけど

697:681
13/05/05 16:34:47.93 .net
いろいろとアドバイスありがとう
HTA を検討してるのはWindows標準で使えそうだからで、準じてMS純正のコンポーネントのインストールまでは許容できる感じです。
後今回のダウンロードボタンは Cookie を維持してないと働かない可能性があって、単純にHTTP通信をすればよいという訳ではないです。
HTTPヘッダを自由に作れるならページのCookieをスクリプトで集めてヘッダ偽装できそうなんで、最悪 MSWinsock で低レベル通信しようと思ってる。
それもHTTPSになったら手に負えないけど。

とはいえどうしても無理なら制約を緩められる可能性もあるんで、教えてもらった方法は実験してみるよ。

698:デフォルトの名無しさん
13/05/05 20:29:21.30 .net
そんなサンプルあるだろ
URLリンク(www.vector.co.jp)

699:デフォルトの名無しさん
13/05/05 21:29:27.39 .net
<OBJECT id=WB classid=clsid:8856F961-340A-11D0-A96B-00C04FD705A2

WB.ExecWB

700:デフォルトの名無しさん
13/05/16 19:35:41.52 .net
UTF8で記述しているHTAアプリから、
ActiveXObject("ScriptControl")
でRubyを呼び出して、ウェブの取得をしています。
サイトはUTF8で記述されているのですが、
RubyからJavaScriptに文字列が渡ってきた時点で、何故か勝手にSJISに変換されてしまいます。
SJISに変換されると、UTF8にしかない文字が壊れてしまうので困っています
この勝手な処理をなくすためにはどうすればいいのでしょうか?

701:デフォルトの名無しさん
13/05/16 19:55:52.55 .net
XMLHttpRequestを使ったらJavaScriptだけで取得できるのか
何故かできないと思ってました


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch