[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 18:48 / Filesize : 259 KB / Number-of Response : 926
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

HTAをもっと流行らせる計画



1 名前:あらかわ [2005/08/21(日) 02:46:02 ]
過去スレ
HTA研究会
piza2.2ch.net/tech/kako/996/996763278.html

Web制作板のHTAスレ
pc8.2ch.net/test/read.cgi/hp/1068286485/

あとはまかせた

176 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 23:46:02 ]
参考リンクが多いのがいいの?
じゃ マネして
Gadgetつながりで
Yahoo WidgetやGoogle GadgetにみるCGUIの萌芽
ttp://www.atmarkit.co.jp/fwcr/special/henbou01/01.html
"Web 2.0とリッチクライアントの関係と今後の動向について解説"
HTAに関連? - 参考リンク
- ブラウザを飛び越えて進化するリッチクライアント -
スタンドアロン型リッチクライアントとは?
ttp://www.atmarkit.co.jp/fwcr/special/richclient01/01.html
引用ここから〜
"リッチクライアントには、美しい色彩のイメージデータやアニメーションを取り込みつつ、
高い操作性/機能性の実装が容易で、
結果として高いUser Experienceの実現を可能にするポテンシャルを持つことが求められる。"
〜引用終わり
HTAもスタンドアロン型リッチクライアントと考えていいんだよね?

@IT > リッチクライアント & 帳票
ttp://www.atmarkit.co.jp/fwcr/ で見つけたフレーズ
"みんなで情報を持ち寄って、Ajaxを育てよう"
AjaxをHTAに置き換えて考えてみると"参考リンクが多い"のも案外

177 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 12:00:25 ]
「スタンドアロン型リッチクライアント」という捉え方は間違いではないと思います。
以下は個人的な意見ですが
HTAでそれ(スタンドアロン型リッチクライアント)
を前面に打ち出すのはちょっとキツイかな、とも感じます。
無理やり料理で例えて
HTA以外の「スタンドアロン型リッチクライアント」を濃い味付けの料理だとすれば
HTAは「豆腐」のように他の素材や料理と組み合わせたり
色々な使い方が出来るんだ、というようなアピールの方がいいんじゃないかと。
適当な例えが浮かばなくて。判りづらい文章ですいません。
どの道、「スタンドアロン型リッチクライアント」も
淘汰が始まっていくんじゃないか、と思いますし。
# 「利用者の生産性維持/向上」「Experience性の重視」といった考え方は有用だと思います。

178 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 17:31:41 ]
社員さん乙

179 名前:デフォルトの名無しさん [2006/07/01(土) 13:07:02 ]
HTAってIE7の影響を度の程度受けるんですか?

180 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 10:24:24 ]
>>175
コマンドラインヘルプの奴
>>32 の "Cmd Help Wrapper" ですか?
サイト、落ちてるみたいですね。
今のところ web.archive で観られるようですね。
>>179
IE7はまだBETA版だし、影響、といわれても
上級者でも答えようが無いんじゃないでしょうか。
公開されているベータ版落としてきて色々試してみて、
要望とか不具合などMSの方へフィードバックするとか。
如何でしょう?

hidebouさんのところに関連記事があったので紹介させて貰いますね。
IE7とMSHTA
ttp://www5a.biglobe.ne.jp/~javajava/ari/etc/etc03.html

181 名前:175 mailto:sage [2006/07/02(日) 23:39:56 ]
>>180
>>32 の "Cmd Help Wrapper" ですか?
そうそれそれ。グーグルのキャッシュでみたよ。

182 名前:175 mailto:sage [2006/07/02(日) 23:46:22 ]
よく考えたらIEでできることは(JavaScriptとかActiveXとか)すべてHTAでできるんだよね。
↓のなんか78.アナログ時計(HTA)っていうのがワラタ
www.makoto3.net/DHTML_IE_NEO/dhtml_ie_neo_top.html

HTAというかIEがすごいな。

183 名前:デフォルトの名無しさん mailto:sage [2006/07/03(月) 22:45:27 ]
>>182
サンプルが豊富ですね。
同サイト内
ttp://www.makoto3.net/dhtml_ie/dhtml_ie_top.html
154,157 「oncontextmenuイベント」
などは HTAをアプリケーションとして仕上げる時などすぐに使えそうですね。
関連リンク:
oncontextmenu Event (JScript,VBScript)
ttp://msdn.microsoft.com/workshop/author/dhtml/reference/events/oncontextmenu.asp?frame=true
" Event property :
object.oncontextmenu = handler → JScript only
object.oncontextmenu = GetRef("handler") → Visual Basic Scripting Edition (VBScript) 5.0 or later only
..."
- del.icio.us経由の情報 -
スクリプトレット「setContextMenu メソッド」 (IE 4.0以上?)
ttp://www.microsoft.com/japan/developer/library/vidref/viprosetcontextmenumethod.htm

184 名前:hidebou [2006/07/04(火) 18:50:12 ]
いつも話題に乗れない書き込みで恐縮なのですが、ドロップファイル毎に取り扱い
を選択できるHTABOX4.00ベータを用意しました。単に入れ物として使うだけで全部
見てね!もできます。結構ヘトヘトですから穴があったらこっそり教えてください。
www5a.biglobe.ne.jp/~javajava/ari/00jscript/hide/hide04.html




185 名前:142,147 mailto:sage [2006/07/05(水) 18:36:20 ]
>>142 >>147です。
Win XP SP2 でD&Dが出来たり出来なかったりするケースがあるのは
これが原因じゃないか、と思えることがあったので報告させて下さい。

単純なことなんですが
ID属性をつけるかつけないか、ということに注目してみました。

「コマンドラインから引数を渡したい」
ttp://hyons.hp.infoseek.co.jp/scr/hta001.shtml
"<HTA:APPLICATION> に id を設定し、
id名.commandLine で、引数が読み込めます。"
を参考に
<HTA:APPLICATION
ID="任意のID名"
という感じで付けたり外したりして確認しました。
他の原因である可能性もあると思うので
とりあえず、の経過報告でした。

それと…
MSのリファレンスは分かりづらいですね。探し方が悪いのか
ID属性についての説明も見当たりませんし。
msdn.microsoft.com/workshop/author/hta/reference/hta_ref_entry.asp


186 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 23:29:34 ]
explorerのドロップハンドラがファイルの中身まで見ることは無い気がするけど・・・。
基本的には拡張子のShellEx(レジストリ)にDropHandlerが設定されているかどうかだよ。

187 名前:185 mailto:sage [2006/07/06(木) 00:25:20 ]
>>186
レス有難うございます。
DropHandler は確認済みでした。分かりづらい文章ですいません。

>>142 のカキコミ
" 参考 -
ImagePad.HTA
www.vector.co.jp/soft/win95/art/se306366.html
「Windows XP SP2より前は、HTAファイルにアイコンはなく、
ドロップも使えません。」
Win XP SP2 ではそういう配慮は不要…でいいんですよね?"
という風に確認がしたかったんですが、その後
XP SP2 でD&Dが出来なかった(引数を認識ない)というレスがあり
その原因が知りたかったので色々調べていました。

紛らわしいカキコミで失礼しました。

188 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 18:33:08 ]
Windows XP SP2でのHTAアイコンへのドロップでは
HTAアプリにID属性を付けておくことが必要、
こちらでも実験してみた。
こちらの環境 Windows XP SP2,IE6
通常のドロップのほかに
SendToに置いたショートカットへのドロップの有効も確認
>>187 GJ

とりあえず HTAアプリにはID属性をつけておこう、ということで FA?

189 名前:188 mailto:sage [2006/07/07(金) 07:35:43 ]
>>188 自己レス
うわっ 朝になって読み返してみると表現がちょっとおかしく思えてきた

HTA:APPLICATIONタグにはID属性を もしくは
HTAアプリにはIDを振っておこう

の方がいいのか?

190 名前:デフォルトの名無しさん mailto:sage [2006/07/07(金) 19:38:57 ]
>>189 用語の使い方でツッコミが入るかも…

191 名前:189 mailto:sage [2006/07/07(金) 21:04:14 ]
>>190
>用語の使い方で
"HTA:APPLICATIONタグ"ってあたり?ちょっと修正&加筆してみた

* Win XP SP2 では レジストリ
htafile\DefaultIcon と
htafile\ShellEx\DropHandler がデフォルトで設定済。

HTAアプリケーションのアイコン、ショートカットへファイルをドロップして
ファイル名を 引数に渡すには
<HTA:APPLICATION>要素にID属性の設定が必要

Win XP SP2 以前のWin OSではレジストリの編集か >>134 氏、>>146氏の様な工夫が必要
** Win XP SP2 以前のWin OSでレジストリの編集を手軽に済ませたいなら
>>142氏が紹介されている
ImagePad.HTA
www.vector.co.jp/soft/win95/art/se306366.html
にレジストリ結合用のhtafile.REGファイルが同梱されているので利用させて貰う

こんな感じでどうだろう?どこか問題ありならツッコミ、修正よろしく

192 名前:デフォルトの名無しさん mailto:sage [2006/07/07(金) 22:06:42 ]
htaってのはどーいった実行ファイルがどんな順番で起動されてるの?

193 名前:デフォルトの名無しさん mailto:sage [2006/07/08(土) 16:57:33 ]
>>192
HTAファイル(コマンドライン引数として) → %WINDIR%\system32\mshta.exe
…っていったら怒る?
ttp://www.roy.hi-ho.ne.jp/mutaguchi/wsh/techinfo.htm#HTA(HTML%83A%83v%83%8A%83P%81[%83V%83%87%83%93)%82%C9%82%C2%82%A2%82%C4

194 名前:デフォルトの名無しさん mailto:sage [2006/07/08(土) 23:26:44 ]
HTAをもっと流行らせる計画
レス:192 件|得点:0|一日のレス:1 件/日|スレ年齢:321 日|予想寿命:1351 日
余命4年か...



195 名前:デフォルトの名無しさん mailto:sage [2006/07/09(日) 13:58:10 ]
>>194
HTAスレでは長いほうなんじゃ?いままでのスレはだいたい短命だたよ。
…じゃぁ〜ちょっと燃料投下してミヨカ?

VBS用画像描画・変換COMコンポーネント
ttp://www.vector.co.jp/soft/winnt/prog/se219120.html
スクリーンキャプチャ簡単に弄る方法考えてて見つけた
GUIをHTAで作れば面白いかも?てかHTA向き?
作者タンのページではBETA版の人柱も募集してるみたい。
興味ある人ドゾ。

196 名前:デフォルトの名無しさん mailto:sage [2006/07/09(日) 17:01:21 ]
上のほうの話題から
HTMLのFRAME内にHTAを読み込むのは無理が無い?
HTA内のFRAME内にHTAを読み込むのも無理があると思うんだけど。
特にXP2になってセキュリティも強化されてるだろうし。
NAVIGABLE="yes" も
APPLICATION="yes" も
FRAME内にHTMLを読み込む場合には有効なんだけど。
自分のところ(WinXP2,IE6)では出来なかった。
成功した人、いるのかな?
ちょっとだけ興味があったり。

自分ならそういう手法(FRAME内にHTAを読み込む)はとらないから
どっちでもいい、っていえばどっちでもいいんだけど。
セキュリティ的に問題がありそうならスレ的には話題として取り上げてもいいのかも。

関連するかもしれないリンク:
 どれもクロス フレームスクリプティングについての解説。
[InetSDK] クロスフレームスクリプトが可能なページを HTML アプリケーションで作成する
ttp://support.microsoft.com/kb/241754/ja
サポート: Internet Explorer 4.0 とそれ以降 Cross-Frame スクリプティング セキュリティ
ttp://support.microsoft.com/kb/325145/ja
実行時にセキュリティで保護されたフレームを表示する
ttp://www.microsoft.com/japan/msdn/columns/webteam/webteam05072001.asp#webteam05072001_topic1

>>195 関連情報:某掲示板ではかなり前からやりとりがされてる模様。

197 名前:デフォルトの名無しさん mailto:sage [2006/07/09(日) 18:11:03 ]
できないし、する必要もない。

198 名前:デフォルトの名無しさん mailto:sage [2006/07/22(土) 11:14:14 ]
DHML GUI部品色々 (Javascript,css,XML)
ttp://scbr.com/docs/products.shtml
dhtmlxTree , dhtmlxGrid , dhtmlxTreeGrid , dhtmlxToolbar
dhtmlxTabbar , dhtmlxMenu
・ ライセンス形態:
Open Source - GPL,
ttp://scbr.com/docs/products/dhtmlxMenu/License_GPL.txt
Free License,
ttp://scbr.com/docs/products/dhtmlxToolbar/License_Free.html
Commercial License,
ttp://scbr.com/docs/products/dhtmlxMenu/License_Commercial.html
・ XMLでメニューアイテムを管理、なところが特徴
・ かっちりした(?)外観のアプリにむいてるかも
>>183 javascriptだとこんな感じ?
DHTML List based context menu(javascript)
ttp://www.dhtmlgoodies.com/index.html?whichScript=context_menu

AJAXの影響かDHTMLの情報が溢れてるからこういう紹介のカキコミ、
必要無い気がしないでもなかったり。
// でも >>176 みたいな考え方もあるしなぁ。 う〜ん…

199 名前:デフォルトの名無しさん mailto:sage [2006/07/22(土) 16:27:13 ]
htaに特化したものであれば良いんだけど、
どうしてもhtml+wshになるしね・・・。

200 名前:198 mailto:sage [2006/07/22(土) 21:47:41 ]
たま〜に来て てきと〜に情報投げて、じゃやっぱり迷惑だよね…。
今までよく怒られなかったヨ。 過疎ってたせいもあるんだろうけど。
…これからは控えますです。

201 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 10:24:08 ]
いや、迷惑じゃないと思うよ。

202 名前:198 mailto:sage [2006/07/23(日) 13:34:53 ]
>>199 >>201 ノシ
コアな話しの邪魔にならない程度に考えてみる


203 名前:デフォルトの名無しさん [2006/07/25(火) 20:12:28 ]
タイトル バーに閉じるボタンがない HTA を作成する方法はありますか。
www.microsoft.com/japan/technet/scriptcenter/resources/qanda/dec05/hey1216.mspx

MSの日本法人は刺ねばいいと思いませんか?

204 名前:デフォルトの名無しさん [2006/07/25(火) 22:44:06 ]
これ解けたら神だよ!!




hjuus htuuuiu4548""hh $%%458koiut
#hdifhkla''
さあこのプログラムがわかるかな?



205 名前:デフォルトの名無しさん [2006/07/27(木) 22:22:19 ]
>>203
何で?

206 名前:デフォルトの名無しさん mailto:sage [2006/07/27(木) 23:18:33 ]
>>205
英語
ttp://img.microsoft.com/library/media/1033/technet/images/scriptcenter/qanda/noclose1.jpg
日本語
ttp://img.microsoft.com/library/media/1041/technet/images/scriptcenter/resources/qanda/noclose1.jpg


207 名前:デフォルトの名無しさん mailto:sage [2006/07/27(木) 23:46:27 ]
>>206
糞ワロタ

208 名前:デフォルトの名無しさん mailto:sage [2006/07/28(金) 00:26:20 ]
ヤバイ、MSの日本法人にちょっと萌えたw

209 名前:デフォルトの名無しさん mailto:sage [2006/07/28(金) 10:37:46 ]
>>208
MSの日本法人には日本人向けにドジっ娘属性が付けてあります♪

210 名前:デフォルトの名無しさん mailto:sage [2006/07/31(月) 20:39:49 ]
>>206
なるほど

211 名前:デフォルトの名無しさん mailto:sage [2006/08/02(水) 22:33:40 ]
生意気な hta みかけたぜ

<script>
(new ActiveXObject("WScript.Shell")).SendKeys("^{ESC}{UP}~~");
</script>


212 名前:デフォルトの名無しさん mailto:sage [2006/08/03(木) 23:22:49 ]
>>211
どこが?

213 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 19:17:54 ]
HTAバカにしてきたけど、本格的なプログラムっぽい外観にできてかなりイイ!

214 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 23:20:49 ]
自分のサーバー上に置いている自作のxxx.htaの中で、
<OBJECT CLASSID=clsid:38EE5CEE-4B62-11D3-854F-00A0C9C898E7
ID=DVD STYLE="height:420px; width:560px">
というMicrosoftのActiveXを読み込ますようにしています。

これの影響なのか、xxx.htaをダウンロードしようとしても、上記のActiveX
が正常に機能しません。私のサーバーのURLをIEの設定で「信頼するサイト」
に登録すると、正常に機能します。

htaのウリは、「ブラウザから解き放たれた」はずです。IEのセキュリティに
から解放する方法はございますでしょうか?(いちいち、ユーザーに私の
サイトを「信頼するサイト」に登録するようにお願いするのは面倒です。)



215 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 10:13:39 ]
そんなの出来たら、ウイルスばら撒くのに便利すぎる。

リモートで実行できる以上、なんらかのセキュリティは必須だから
「IEのセキュリティ」から解放されても「htaのセキュリティ」が必要になる。
無駄だから統合してあるだけのこと。

216 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 11:22:02 ]
>>214
「ブラウザから解き放たれた」ってのはつまり普通の exe アプリケーションと
同じ扱いするってことで… .hta ファイルをローカルに保存して実行してくれってことでわ?

217 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 22:50:26 ]
>>216, 215
コメントありがとうございます。

> .hta ファイルをローカルに保存して実行してくれってことでわ?
明日試してみますが、ユーザーが自分のパソコンに「ローカルに保存」して私のhtaを
実行する」場合にも、そのユーザーはまず、私のサーバーを「信頼するサイト」と
してIEで登録しないと、214のようはhtaは実行できないのではありませんか?

もう1つ教えていただきたい点がございます。htaを開発しているWindows XPパソコ
ンには、Visual Studio 2005をインストールしていいて、htaにバグが発生すると、
自動的にVisual Studio 2005が立ち上がります。Visual Studioは便利なので、これで
初めからhtaを開発できたら便利だと思うのですが、可能でしょうか? 現在は、
エディターでhtaを書いています。


218 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 01:29:10 ]
>>134
このbatがすごく自分のやりたい事に近いのですが、
batとJavaScriptにうとい為、いまいちどういう仕組みで
機能しているのか理解できません。

やっとこ調べて、%0がbatのパスを指すらしいことは分かったのですが
%* と s.indexOf("[[remov"+"e_tag]]") が良くわかりません。

vbsでいうところの、
For Each DropFile in Wscript.Arguments
MsgBox DropFile
Next
みたいにするには、どこを書きかえればいいのでしょうか?


219 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 02:04:15 ]
>218
まぁ、ぶっちゃけ肝は
>        //コマンドラインを取得
>        document.getElementById("cmd_line").value = app.commandLine;
ここなんだけどね。
var cmdline = app.commandLine;
var args = cmdline.split(/\s+/);
for (var i = 0; i < args.length; ++i) {
window.alert(args[i]);
}
ってすれば「vbsでいうところの〜」のよーなことになる。
(split()で単純に空白で区切ってるから空白入ったパスは寸断してしまうが。サンプルコードなんでカンベソ)
ちなみに、バッチファイルの「%*」は「バッチファイルに与えられた引数全部」。
(バッチの中でshiftコマンド使うと話が変わってくるがそれはおいとく)
「s.indexOf("[[remov"+"e_tag]]")」は"[[remove_tag]]"という文字列が含まれてるかの検査
(vbsならInStr(s, "[[remov"&"e_tag]]")だな)だが
DOMで全文書パースしてるからそこを"[[remove_tag]]"と書いてしまうとその部分も引っかかってわやになるので
そう書いている。

220 名前:218 mailto:sage [2006/08/10(木) 22:43:43 ]
>>219
親切丁寧なScripting Guyに惚れそうです。本当に感謝です。

甘えてばっかもアレなんで、冗長っぽいコードですがVBS仕様にしてみました。
>>134氏同様にインデントは全角スペースになっています。

Sub window_onLoad
Dim arg,FindCnt,StartCnt,FilePath,fso
'----- 一番上のコメント削除(完全流用) -----
For Each n in Document.body.Childnodes
  If typename(n.nodeValue)="String" and 0 < inStr(n.nodeValue,"[[remov" & "e_tag]]") then n.nodeValue=""
 Next
'----- CommandLineを整形 ------
 arg = Replace(app.commandLine ,Chr(34) & Split(app.commandLine,"""")(1) & Chr(34) & " ", "") '自身のパス削除
  StartCnt=1
  Set fso = CreateObject("Scripting.FileSystemObject")
  'スタート地点が文字数を超えない限りループ
  Do While StartCnt < Len(arg)
    '最初の文字が「"」かどうかで分岐(「"」で始まる場合は、パスの間に空白がある)
    If Mid(arg, StartCnt, 1) = Chr(34) Then
      FindCnt = InStr(StartCnt + 1, arg, chr(34))'パスの終わりの「"」を探す
      FilePath = Mid(arg, StartCnt + 1, FindCnt - (StartCnt + 1))'パスの抽出
      StartCnt = FindCnt + 2'スタート箇所を次のパスの頭へずらす
    Else
      FindCnt = InStr(StartCnt, arg, " ")'パスの区切りである「 」を探す
      FilePath = Mid(arg, StartCnt, FindCnt - StartCnt)'パスの抽出
      StartCnt = FindCnt + 1'スタート箇所を次のパスの頭へずらす
    End If
      Msgbox FilePath & vbNewLine & "Exists:" & fso.FileExists(FilePath)'抽出パスの確認
  Loop
  Set fso = Nothing
End Sub

221 名前:218 mailto:sage [2006/08/10(木) 22:54:11 ]
コードで行がいっぱいいっぱいになってしまったので連投スマソ。

参考資料
ttp://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/apr05/hey0420.mspx

どうしても、わからない事があったので聞きたいのですが、

>DOMで全文書パースしてるからそこを"[[remove_tag]]"と書いてしまうとその部分も引っかかってわやになるので
>そう書いている。

この部分を詳しくお願いします。
どうも"[[remov" & "e_tag]]" と "[[remove_tag]]" の違いが理解できなくて。
&で文字列を結合するのとしないのと違いがでるのでしょうか?

222 名前:デフォルトの名無しさん mailto:sage [2006/08/12(土) 02:39:54 ]
今さら真面目に>>134見てみたけど、面白いねこれ。

まず、拡張子は .bat だから基本的にこれはバッチファイル。
だから引数を %* で食えるんだね。

バッチだったら "<html>" 以下は文法エラーじゃないかと一見思えるが、
その2行上でexit してる。バッチはインタプリタなので exit 以下は無視
されるので問題ない。ふむふむ。

で、このバッチが何をしているかというと、自分自身を mshta.exe の引数
に渡してる。(2行目)
ここでこのファイルは HTAファイルとして mshta.exe に評価されることに
なる。
じゃー今度は <html> より上の部分が文字列として表示されてしまうじゃん
かというと、これはこれで<html>より上はしっかり HTML 的にコメントアウト
されてる。なるほど!

いやいや待ちたまえ、rem [[remove_tag]] はコメントアウトされてないじゃ
ないか。その通り。
そのために ev_onload() で「"[[remove_tag]]" という文字列を含むノード
は中身を空にする」って作業を入れてるわけだ。おもしろ〜い。

そこで>>134氏に2つ質問。
・数行前にはああ書いたけど、本当は前半の <!-- --> はオマケだよね?
<html>より上は1つのTextノードになるから、どっちみち ev_onload() で
除去される。
・"[[remov"+"e_tag]]" は必要なの?<script>はElementノードだから
nodeValue は null。影響ないんじゃない?


223 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 09:52:33 ]
×ボタンが押された場合の処理ってjavascriptでどう検出して書けばいいんでしょうか…
onunloadに書くと全てのウィンドウを閉じる操作をした場合に実行されてしまうので。

HTAでは×ボタンを表示しないようにするしかないのでしょうか。



224 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 10:29:36 ]
自己レス

フラグ立てれば済む話という単純なことに気づきませんでした…スマソ。




225 名前:デフォルトの名無しさん mailto:sage [2006/08/20(日) 17:10:50 ]
んがー、HTA+VBScriptでSleepは使えないのか。
ループの中でテキストボックスの中身変更しても反映されないorz

226 名前:デフォルトの名無しさん mailto:sage [2006/08/20(日) 19:54:51 ]
>>225
無理みたいね

HTA(HTMLアプリケーション)について
ttp://www.roy.hi-ho.ne.jp/mutaguchi/wsh/techinfo.htm#HTA(HTML%83A%83v%83%8A%83P%81[%83V%83%87%83%93)%82%C9%82%C2%82%A2%82%C4
(注意:WscriptオブジェクトはWSHの組み込みオブジェクトなので、HTAからは利用できない)

HTAファイルでWScriptオブジェクトの使用  
ttp://www.happy2-island.com/bbs/bbs.cgi?mode=view&no=36
代替案でsetTimeoutの説明してる


227 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 00:39:04 ]
>>225
msdn.microsoft.com/library/ja/jpdndude/htm/dude02262001.asp

228 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 15:41:15 ]
どうしても分からないんで助言をお願いしまっす
HTAでIEのツール→インターネットオプションの詳細設定の
一番下の「背景とイメージを印刷する」を
オン・オフするにはどうすれば良いでしょうか?

色々調べたんですが、探しかたが悪いのか全く情報が見つかりません。
どうか宜しくお願いします

229 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 16:42:54 ]
>>228
\HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Print_Background

230 名前:228 mailto:sage [2006/08/24(木) 14:37:01 ]
>>229
素早い返事ありがとです。やっぱレジストリをいじいじするんですね。
こう言うキーの探し方ってコツとかあるですかね?

あと一つだけ質問です。
職場で動かそうとするとノートンに怒られ、
最終的には管理者に怒られてしまうので
レジストリとか手をだしたことがないんですけど
コレは大丈夫でしょうか?
質問ばっかりで申し訳ないんですが、宜しくお願いします


231 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 15:28:28 ]
>>230
探し方のコツはレジストリを適当に眺めてるとつかめますよ。

HTAはノートンの設定を変えないと警告が出るんだっけ。
いっそのこと↓のようにexeにしてしまうとか。
pc8.2ch.net/test/read.cgi/tech/1123842575/77

232 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 19:25:30 ]
>>230
管理者にバレたら大変じゃないの?

233 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 20:28:01 ]
>>231
HTAだとSCRIPTがVBの時もあるのだけどそういうのをexeにするコンバータとか売ってる?


234 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 21:25:35 ]
単純にexeにするのなら>>98のがある。
VB.NETや他の.NET対応言語で書き直すもよし。



235 名前:228 mailto:sage [2006/08/24(木) 23:01:01 ]
>>231
なるほど眺め続ければいーんですね。
ってキーの数とか半端ないんですけど…
んで、HTAの件ですがレジストリの読み込みは普通にできました。
ただレジストリを変更すると流石に反応するんじゃないかな?
と思ってるんでチャレンジしてません。
ノートンの知識がないんで、何に反応されるか戦々恐々なんですよ…
exeはただのjscriptでも可能なら考えてみたいです

>>232
大変かもしれません。
一度引っ掛かって、管理者の方がスットンできた経験あります。
原因がわかってるならいーけど?みたいな事を言われ軽く睨まれました。
引っ掛かった瞬間パニくって、速攻で丸ごと削除ったから
原因なんて分かる訳ないじゃん?とはチキンなんでいえませんでした。


236 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 23:13:38 ]
>>235
手動でIEの[ツール]の[オプション]を変更して反応しなければ
他のプログラムでレジストリの該当部分を変更しても大丈夫だと
思うけど。
レジストリを変更したプログラムを一々監視してたとしたら別ですが。

237 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 11:12:34 ]
>>234
アンカミスってません? 
>>130 >>136"*.exeじゃ無かったな、確か。独自形式の*.wsits だったな、確か。"』
exeにするなら >>184 HTABOX の方かと

>>235
>exeはただのjscriptでも可能なら
>>231のリンク先以外の方法なら
ttp://www.vector.co.jp/soft/winnt/prog/se389017.html
とか いくつかありますね

238 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 13:44:25 ]
>>234,237
ありがとう。
しかし同じ動作するのにexeだとOKでhtaじゃ嫌と言う社内の空気がワカラン orz

アイコンつけられるかつけられないかの違いだったらモットワカラン orz

239 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 18:47:36 ]
ノートン先生ってHTAには警告出すけど
EXEはスルーするよね。

240 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 11:04:08 ]
>>134 >>222

もっと簡単に、

@START MSHTA.EXE "%~f0" %*
@GOTO :EOF
<script language=vbscript>document.body.innerText=""</script>
<html>
〜略〜

更に、#!行みたいに、1行で、

@START MSHTA.EXE "%~f0" %* & GOTO :EOF & REM <script language=vbscript>document.body.innerText=""</script>
<html>
〜略〜



241 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 20:27:53 ]
>>117 >>120 >>125

HTMLならMHTMLでひとつに纏められます。

そこで、まずhoge.HTAをhoge.HTMに変えて、IEで開き、MHTMLで保存します。

MSHTA.EXE %CD%\hoge.mht
とやっても駄目ですが、
MSHTA.EXE mhtml:file://%CD%/hoge.mht
とすればよいようです。

このファイルの先頭に、
@START MSHTA.EXE "mhtml:file://%~f0" %*
@GOTO :EOF
の2行を追加して、拡張子をCMDに変えます。

或いは、

拡張子を.MHTAに変え、
MSHTA.EXE "mhtml:file://%0" %*
に関連付けます。


242 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 13:58:32 ]
>>125

mshta.exe "mhtml:res://自分.exe/main.mht"

はどうでしょう?


243 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 19:40:34 ]
mht ってファイル名が全部フルパスに変更されちゃうからローカルファイルだとちょっとハズイ。
それとパッケージされるのは元からhtmlにリンクされているファイルだけみたいだけど
スクリプトで動的に表示したい画像ファイルとかはどうやって保存する?
IE以外に作成ツールとかあるのかな?

244 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 20:00:22 ]
>>117

目隠し程度でよいのなら、以下はどうでしょう?

+ADwASABUAE0ATAA+ADwASABFAEEARAA+-
+ADwAUwBDAFIASQBQAFQAIABsAGEAbgBnAHUAYQBnAGUAPQB2AGIAcwBjAHIAaQBwAHQAPg-
+AFMAdQBiACAAdwBpAG4AZABvAHcAXwBvAG4AbABvAGEAZAAoACk-
+AE0AcwBnAEIAbwB4ACAAIjBCMEQwRjBIMEoAIg-
+AEUAbgBkACAAUwB1AGI-
+ADwALwBTAEMAUgBJAFAAVAA+-
+ADwALwBIAEUAQQBEAD4-
+ADwAQgBPAEQAWQA+MEswTTBPMFEwUwAgADwALwBCAE8ARABZAD4APAAvAEgAVABNAEwAPg-

ぱっと見では、HTMLにはとても見えませんが、
拡張子HTAかHTMLのファイルに保存すれば、実行可能です。




245 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 20:09:45 ]
>>243

IEでなく、CDO.Messageを使うと、Content-IDでリンクされます。
CDO.Messageなら、いろいろ操作できてよいのでは。


246 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 20:11:26 ]
>>116

named pipeでなく、anonymous pipeで標準入力に渡せばよいのでは?

>>114

しかし、そうやってHTAファイルを隠したところで、
所詮、右クリックの「ソースの表示」で見えちゃうのでは?


247 名前:デフォルトの名無しさん mailto:sage [2006/09/01(金) 23:17:42 ]
>>246
HTA:APPLICATIONタグで
右クリック禁止にしておけばいいんじゃないの?


248 名前:デフォルトの名無しさん mailto:sage [2006/09/02(土) 11:29:51 ]
Vistaでは、簡単にHTAの背景透過できるんかな

249 名前:デフォルトの名無しさん mailto:sage [2006/09/02(土) 13:54:28 ]
>>247
コンテキストメニューのほうは抑止できますが、^pの印刷は抑止できます?

印刷設定ダイアログ表示中にテンポラリフォルダを見るとソースがあります。
この方法はダイアログなどにも使えます。


250 名前:デフォルトの名無しさん mailto:sage [2006/09/02(土) 18:44:23 ]
クライアントで読む必要があるものを隠そうとするのは不毛の道

251 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 12:46:15 ]
res:みたいに、ZIPの中身を取り出すprotocolがあったら、と思いません?
もし、それがあれば、HTMLやHTAを.filesや.mhtでなく、.zipにまとめて保存できて、よいのに。

誰か作っているかも、と思って探してみたけれど見つかりませんでした。残念。

試しに、こんなことを。

<script language=vbscript src='vbscript:CreateObject("Scripting.FileSystemObject").OpenTextFile("C:\a.vbs").ReadAll()'></script>
は出来るのに、

<img src="javascript:var sc=new ActiveXObject('ScriptControl');sc.Language='javascript';var s=sc.Eval('new ActiveXObject(\'ADODB.Stream\')');s.Open();s.Type=1;s.LoadFromFile('C:\\a.gif');s.Read(-1);">
は駄目みたいです。


252 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 14:11:01 ]
これはできたよ。
<script language="VBScript">
Dim sh
Set sh = CreateObject("Shell.Application")
sh.NameSpace("H:\").CopyHere(sh.NameSpace("H:\test.zip").Items())
</script>


253 名前:252 mailto:sage [2006/09/03(日) 17:01:52 ]
一応補足。
Zipフォルダが使える環境でないと動かないはず。
逆にエクスプローラでフォルダとして扱えればLHAでもCABでもなんでもいけるはず。


254 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 17:49:25 ]
>>249
そもそもHTAをのぞけばソース見えちゃうんだし。
テンポラリ漁ってまで見たいような人にはどんな対策をしても無駄だと思うけど。



255 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 19:23:21 ]
Windows Script Encoder みたいな仕組みはないのかな?

256 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 20:16:05 ]
<script language=vbscript src='vbscript:CreateObject("Scripting.FileSystemObject").GetStandardStream(0).ReadAll()'></script>
とやると、スクリプトを標準入力/パイプから読み込めるので、スクリプトは隠蔽できるかも。

そもそも隠蔽しなくてよければ、
MSHTA.EXE vbscript:CreateObject("Scripting.FileSystemObject").GetStandardStream(0).ReadAll()
で、HTAソース全体を標準入力/パイプで流し込めます。


257 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 21:30:19 ]
>>252
>Set sh = CreateObject("Shell.Application")
>sh.NameSpace("H:\test.zip")

このやり方は、Windows2000で、エラーになるらしい。cabも。

そういうときは、Explorerのid.Document.Applicationから
Shell.Applicationを取り出して使えばよいと思う。


258 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 21:31:29 ]
HTAで、ShellNameSpaceが、XP SP2より後の修正で、使えなくなりました。
セキュリティ絡みでしょうか。
これを使うHTAが駄目に。回避方法はないでしょうか?

ADODB.StreamのLoadFromFileも、HTAで、使えません。
「エラー: このコンピュータの安全性の設定により、ほかのドメインのデータ ソースへのアクセスは禁止されています。」
HTML+SCなら使えるのに、なんで? ShellNameSpaceと同じ修正が関係?
使ってる人、多そうなのに大丈夫でしょうか。


259 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 14:22:17 ]
>>249 に突っ込まないのはこのスレの方針?
IEとHTAとHTABOXの機能をごっちゃにしてるみたいなんだけど。

260 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 14:59:19 ]
じゃあお前が突っ込めばいいのでは?

261 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 15:25:12 ]
せっかく静かに流れてたんだからスルーしとこうヨ 

262 名前:258 mailto:sage [2006/09/09(土) 15:39:27 ]
ShellNameSpace
HTAでは使えなくなりましたが、HTAから出したダイアログ内では使えます。

コントロールが、わざわざダイアログかどうかをチェックして、
ダイアログでなかったら使えないようにすることに、
何かメリットがあるとは思えないので、
よくある、セキュリティ上の問題を回避、軽減する弥縫策でしょうか。

なので、HTAでShellNameSpaceを使うときの回避策は、
HTAからダイアログを出して、その中でShellNameSpaceを使うことです。

ファイルが2つに分かれるのが面白くないので、ひとつで済ます方法を
2パターン考えました。
自身をダイアログで呼び出し、中で切り分ける。
空のダイアログを作って中身を書き換える。
どちらも、使い慣れてないせいか、かなり面倒でした。


263 名前:デフォルトの名無しさん [2006/09/18(月) 11:42:58 ]
htaでグーグルマップのAPIを使ったアプリは作成できるのかな。
問題点があるとしたらなんだろう。

264 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 23:29:30 ]
用途が思いつかないことかな。



265 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 00:51:04 ]
HTAでframeを使いたいときは、必ずソースファイルのhtmを
用意する必要があるんですかね?

何がしたいかというと、bodyから何から全てスクリプトで動的に
生成していきたいのです。


266 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 00:53:42 ]
>>265
document.writeしてもだめだったっけ?

267 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 01:26:07 ]
>>265
>>256みたいに
<frame src=javascript:'HTML記述'>
<frame src=vbscript:"HTML記述">
はどうでしょう。

268 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 15:27:27 ]
わざわざframe使わなくても,div(或いはtableのtd)の中身を動的に生成するのじゃだめなの?

269 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 03:17:42 ]
>>266
frame タグの仕様で src に URL を指定しないといけないのですが
そのURLをファイルとして用意する以外に方法はないかと。

で、>>267 さんの提案を試してみましたがなかなかうまくいきません…。
javascript:document.write(...) でいけるかと思ったのですが失敗。

>>268
たとえば、エラーメッセージと本メッセージでスクロール領域を
分けたいのですよね〜。

frame ってXSSの温床になってるせいもあってかセキュリティも厳しくて、
どうも使い勝手がイマイチなのが残念。


270 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 07:49:37 ]
<div style="overflow:scroll"></div>
でいいやん。

271 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 09:31:29 ]
俺もframe要らないと思うよ。
frameが無いと出来ないことってほとんど無いだろうし。

272 名前:267 mailto:sage [2006/09/23(土) 20:28:46 ]
>>265
こんな感じで、ヒントエクスプローラバーをやってみましたが、うまく行きましたよ。
<script>
function source(){return '<'+'html>\r\n'+'<'+'head>\r\n'+'<'+'/head>\r\n'+'<'+'body>\r\n'+'<'+'img src=tips.gif>\r\n'+'<'+'/body>\r\n'+'<'+'/html>\r\n\r\n';}
</script>
<frameset>
<frame src="javascript:parent.source()">
</frameset>


273 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 23:21:20 ]
皆々さん、ありがとう!
確かに、やろうとしたかったことは fram を使わずにできました。
HTA:APPLICATION タグでスクロールを無効にして、

<div id="result" style="width: 100%; height: 50%; overflow: auto; margin: 0px;"></div>
<hr />
<div id="error" style="width: 100%; height: 50%; overflow: auto; margin: 0px;"></div>

とすれば、ほぼフレームと同じ見た目になりますね!
(枠を移動させるまではできませんが…。もちろんscriptをガリガリ書けばできるでしょうけど。)

それとは別に、>>272さんのワザは勉強になりました。
document.write するんでなくてそのまま評価されるんですね。

ただ、HTMLとしてなら成功しましたが、HTA では「オブジェクトでサポートされていない
プロパティまたはメソッドです。javascript:parent.source()」
とエラーになってしまいました。


274 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 23:31:53 ]
せきゅりちいゾーンがちがうからね。
>>138 とかすればノーガードになる。




275 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 00:54:42 ]
>>274さんありがとうございます!

うほっ、そんな属性があったとは。ステキ。
自分もまだまだ勉強不足です。

しかしセキュリティゾーンは面倒だなあ。
Vista/IE7になったらもっと面倒になりそう…。


276 名前:デフォルトの名無しさん mailto:sage [2006/10/03(火) 21:54:14 ]
>>243
subst






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<259KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef