X



HTAをもっと流行らせる計画 Part2
0003デフォルトの名無しさん
垢版 |
2008/09/09(火) 19:46:52
おつかれさま
HTAとかをexe化するソフトはなんて名前だっけ?
0004デフォルトの名無しさん
垢版 |
2008/09/09(火) 23:30:21
prototype.jsみたいなライブラリをHTAで使いたいけどそのままじゃ使えない。何かいい方法ないかなあ。
0008デフォルトの名無しさん
垢版 |
2008/09/10(水) 11:08:21
地味な技術かもだけど、好きだぜHTA
0010デフォルトの名無しさん
垢版 |
2008/09/10(水) 14:59:42
前スレのhttp://pc11.2ch.net/test/read.cgi/tech/1124559962/950 ですが
WIN32API.TXTのSFCmini+Javascript用への完全な変換が完了しました。

おかげさまで当初の予定よりもいいものができたので
win32api.jsとして公開しました。

よかったら使ってみて下さい。


JavascriptでWin32APIが利用しやすくなる『win32api.js』
http://itmst.blog71.fc2.com/blog-entry-139.html

* win32api.jsはWIN32API.TXTをSFCmini+Javascript用に変換したもの
* win32api.jsをインポートするとWin32APIで定義されている
 定数、構造体クラス、API関数がグローバル変数として展開される
* 現在定義されているのは
 定数:6315個 / 構造体クラス:412個 / API関数:2007個
0016デフォルトの名無しさん
垢版 |
2008/09/13(土) 19:59:10
http://www.microsoft.com/japan/msdn/workshop/author/hta/overview/htaoverview.aspx

HTML Applications 概要

Internet Explorer が持つすべてのパワー(オブジェクト モデル、パフォーマンス、レンダリング機能、
プロトコル サポート、チャネル ダウンロード テクノロジ)を結集したもの、それが HTA です。
しかも厳格なセキュリティ モデルやブラウザのユーザー インターフェイスを強制しません。
0018デフォルトの名無しさん
垢版 |
2008/09/14(日) 13:10:29
>>16
HelloWorldのサンプルプログラムいいなぁw

これがHTMLだと、うざい標準化団体に邪魔されてここまでシンプルには書けない。
0022デフォルトの名無しさん
垢版 |
2008/09/15(月) 23:16:32
HTAいいよね。
仕事で前にかかわっていたプロジェクトの内部ツールでファイル監視ツールや
メーラーとか作ったなぁ。
ローカルのファイルを操作できるってだけでいろいろGUI付きアプリを手軽に作れるもんね。
Microsoftにはもっと強化したり、宣伝してもらいたい。あんまり知られてないようでもったいないと思う。
0023デフォルトの名無しさん
垢版 |
2008/09/17(水) 01:09:39
>>20
まさに同じじゃないか。
0024デフォルトの名無しさん
垢版 |
2008/09/17(水) 02:03:33
ガジェットはひたすらかっこよくなければいけない。
HTAは自分が満足すればそれでよし。
0032デフォルトの名無しさん
垢版 |
2008/09/17(水) 22:19:45
インターフェイスは大事だよ!
お前らだって脳にケーブル繋ぎたくなった事は一度や二度じゃないだろ
0033デフォルトの名無しさん
垢版 |
2008/09/17(水) 22:34:29
いつまでも基本GUI部品(ボタンとかテキストボックスとか)に縛られるのはつまらないと思うんだ。

…つってもアイデアがあるわけじゃなし。
でもゲームとかFLASHとかで偶に「おお!」と思わせるGUIってあるよね。
何スレ違い?すまん。
0034デフォルトの名無しさん
垢版 |
2008/09/17(水) 22:59:41
> いつまでも基本GUI部品(ボタンとかテキストボックスとか)に
> 縛られるのはつまらないと思うんだ。

そう思う人は、HTA に縛られる必要もないと思うんだ。
0040デフォルトの名無しさん
垢版 |
2008/10/20(月) 20:26:58
age
0041デフォルトの名無しさん
垢版 |
2008/10/21(火) 03:05:37
おまいらデータバインド使ってますか?

表示だけならいい感じだけど、更新とかワケ分からんっす
004341
垢版 |
2008/10/23(木) 01:29:49
ADODB.Recordsetをデータバインド

<html><head><script>
function listup() {
window.event.returnValue = false;
var cnnString = "provider=Search.CollatorDSO.1;EXTENDED PROPERTIES=\"Application=Windows\";";
var sql = fm.query.value.replace(/["'\\\%\*"]+/g, " ");
sql = (sql.replace(/\s/, "") == "") ? "" : " AND FREETEXT('" + sql + "')";
sql = "SELECT TOP 20 System.ItemURL, System.ItemDate, System.ItemPathDisplayNarrow FROM SystemIndex"
+ " WHERE System.FileExtension<>'.lnk' " + sql + " ORDER BY System.ItemDate DESC";
var cnn = new ActiveXObject("ADODB.Connection");
var rs = new ActiveXObject("ADODB.Recordset");
cnn.Open(cnnString);
rs.CursorType = 3; // adOpenStatic
rs.CursorLocation = 3; // adUseClient
rs.Open(sql, cnn);
dco.SourceRecordset = rs;
rs.Close();
cnn.Close();
} </script></head><body>
<object id="dco" classid="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" width=0 height=0></object>
<form id="fm" onsubmit="listup()"><input id="query" style="width:60%"/><input type="submit" value="Search"/></form>
<table datasrc="#dco" border>
<thead><tr><th>Path</th><th>Date</th></tr></thead>
<tr>
<td><a datafld="System.ItemURL"><span datafld="System.ItemPathDisplayNarrow"></sapn></a></td>
<td><span datafld="System.ItemDate"></sapn></td>
</tr>
</table></body></html>
0046デフォルトの名無しさん
垢版 |
2008/10/31(金) 01:36:19
<html>
<hta:application
id="Word2008"
scrollflat="yes"
innerborder="no"
navigable="yes"
border="thick"
borderstyle="raised"
/>
<head>
<title>Word 2008</title>
</head>
<body style="width:100%;height:100%" contenteditable="true">
Word 2008 リリース
使いにくかった機能をなくしました。
</body>
</html>
0047デフォルトの名無しさん
垢版 |
2008/10/31(金) 02:13:37
使いにくいけど便利な機能までなくさないでください
そんなのがあるかどうか知らないけど
0048デフォルトの名無しさん
垢版 |
2008/11/13(木) 18:02:25
今までsetRequestHeaderでReferer書き換えできたのに
急にできなくなったよ。

前スレで触れられてるけど

>>804 :デフォルトの名無しさん:2008/05/23(金) 03:59:44
>>>>494の辺で言ってた「Refererでユーザー名漏れてね?」だけど
>>vista SP1ならRefererちゃんと変える事が出来た
>>httpoj.setRequestHeader("Referer", "ほにゃらら");
>>
>>早速変えておこう

の通り、Vista SP1ではReferer書き換えて出力できたのに、
11/12のwindows updateのせいかRefererが送信自体されなくなった。

もしかしてオワタ?
0049デフォルトの名無しさん
垢版 |
2008/11/14(金) 02:43:10
俺も確認した。確かに送信されてない

Microsoft XML コア サービス 4.0 Service Pack 2 用セキュリティ更新プログラム (KB954430)
更新プログラムの種類: 重要
Windows ベースのシステムのセキュリティを悪意のあるユーザーが侵害して、そのシステムを制御できるというセキュリティの問題が
XML コア サービス (MSXML) に発見されました。この更新プログラムをインストールすると、お使いのコンピュータを保護できます。
インストール後には、コンピュータの再起動が必要になる場合があります。インストールすると、削除することはできません。

詳細情報:
http://go.microsoft.com/fwlink/?LinkId=128803

これか?
>インストールすると、削除することはできません。
オワタ
0051デフォルトの名無しさん
垢版 |
2008/11/19(水) 03:10:58
httpoj.setRequestHeader("Referer","http://www.geocities.jp/");

new XMLHttpRequest();               Referer:無し
new ActiveXObject('Msxml2.XMLHTTP.5.0')   htaのフルパス
new ActiveXObject('Msxml2.XMLHTTP.4.0')   htaのフルパス
new ActiveXObject('Msxml2.XMLHTTP.3.0')   Referer:無し
new ActiveXObject('Msxml2.XMLHTTP')     Referer:無し
new ActiveXObject('Microsoft.XMLHTTP')    Referer:無し

他になんかあるっけ
0056デフォルトの名無しさん
垢版 |
2008/12/06(土) 06:50:53
普通に自分自身の副ストリームに情報を書き込めるんだ…
こりゃ設定ファイルを不要に出来る予感
0058デフォルトの名無しさん
垢版 |
2008/12/06(土) 12:43:04
いまさらHDDにNTFS以外を使ってることもないだろうけど
USBメモリに設定ごとコピーできないとか動かないとかの
余計なトラブルを招くから、個人利用でSUGEEEEする以外には正直微妙。
0059デフォルトの名無しさん
垢版 |
2008/12/11(木) 07:21:32
これとserializeにはもっと早く気がつくべきだった
ちょっとした変数をどんどん保存出来る
0061デフォルトの名無しさん
垢版 |
2008/12/22(月) 17:30:37
mixiツール使ってるんだが、Sleipnirでは正常にログイン出来てページが表示されるのに
new XMLHttpRequest();では未ログイン状態のページが取得されちゃう
それでかなり悩んでいたんだが、IEで直接ページを開いたらログインされてなかった

IEでログインしたら無事ログイン状態のページを取得出来たんだが
Sleipnirのログイン情報はどこに記録されていたんだろう
TridentだからSleipnir=mshtaだと思っていたが、そうとは限らないとは知らなかった
0064Logue ◆grDYeooZwg
垢版 |
2009/02/04(水) 11:52:40
「Web技術をディスクトップアプリケーションにも」というコンセプトで、
ローカルファイル操作専用のJavaScriptフレームワーク「io.js」(ググッて)を作ってるけど、
今のところ、IE部のファイル操作はScripting.FileSystemObject(fso)で処理してる。

ところが、FireFoxやAir、widget.system(WFile経由)ではバイナリ操作ができるらしいので、
fsoを使うと処理の統一性に問題が生じる。(面倒だからUTF-8で統一したいし)

そこで、ADODB.Streamを使うべきだと思うんだけど、
var ado = new ActiveXObject( "ADODB.Stream" );
やるとVistaでは、はじかれる。

原因と解決法のヒントは、http://www.vector.co.jp/soft/winnt/prog/se417469.html
書いてあったけど、VBSで書かれていてよくわからなかった。
見た様子だとCreateObject.WSCを読み込ませてGetObjectでオブジェクトを生成しているようだけど、JavaScriptでこれと同じ処理はできないかなぁ。

ほかにも、レジストリのサブキー一覧を取得する処理で、
http://www.bosagami.net/jshelp/?page=%83T%83%93%83v%83%8B%81F%83%8C%83W%83X%83g%83%8A%82%CC%83T%83u%83L%81%5B%8E%E6%93%BE
を見つけたけど、うまくうごかなかった。応用範囲が広そうなだけに残念。
0065デフォルトの名無しさん
垢版 |
2009/02/04(水) 18:56:44
JscriptでADODB.Stream関連 - http://www.google.co.jp/search?q=ADODB.Stream+jscript  で結構見付かるな

JavaScript の文字コード処理に関する覚書 - JavaScript によるバイナリデータ操作 (参照) 、 (データの作成)
ttp://seantw.spaces.live.com/blog/cns!4D90655A95AC394E!121.entry
JScript・WSHで、UTF-8でファイルの読み書きをする方法 (ADODB.Streamで文字コード変換するサンプルコード)
ttp://d.hatena.ne.jp/language_and_engineering/20090203/p1
jscriptで utf8なファイル出力
ttp://passing.breeze.cc/mt/archives/2008/05/jscript-utf8.html
JavaScriptでファイルの書き込みをUTF-8で行う(htaまたは、wsh用) - BOM関係
ttp://d.hatena.ne.jp/sukesam/20070922/1190400851

 - ろくに読んでないし、解説はエロい人にまかせる

/* おまけ
vbs2js
ttp://www.clockworksoftware.com/asp/Products/vbs2js.asp
ttp://www.roy.hi-ho.ne.jp/mutaguchi/bbs/list119.shtml
ttp://www.roy.hi-ho.ne.jp/mutaguchi/bbs/list137.shtml
*/
0068デフォルトの名無しさん
垢版 |
2009/02/15(日) 09:35:14
IE7のズーム機能を抑制したいんだけど、根本的に切る方法はあるんでしょうか?
onkeypressとかを監視して撥ねるしかない?
0070デフォルトの名無しさん
垢版 |
2009/02/16(月) 20:59:21
Ctrl+マウスホイールのことか?
たしかonmousewheelとかいうイベントがあった
そんときにCtrlキー押されてるか見れば?
0072デフォルトの名無しさん
垢版 |
2009/02/19(木) 14:58:22
objHTA.commandLineだけど、"の有無に関わらず渡されたファイルのパスを返すには
objHTA.commandLine.match(/("[^"]+" |[^ ]+ )/g);
これでいいのかな
0076デフォルトの名無しさん
垢版 |
2009/03/18(水) 20:38:25
>>75
文字化けしてるから

&ht; を > に変換、かつ、
</p> <p> を 改行 に変換すればそれらしくなる

自分で動かしたいとは思わないスクリプトなので動作確認まではしてない
0082デフォルトの名無しさん
垢版 |
2009/03/28(土) 17:14:25
window.onclick=function(){window.ondblclick=function(){};};

か、onclickでalert()とかすると、二回目のクリックが無効に
なるから、結果ondblclickを除外したことになる
0085デフォルトの名無しさん
垢版 |
2009/03/29(日) 00:39:23
できるよ
長押しハンドリングできるから
ttp://builder.japan.zdnet.com/member/u503061/blog/2009/03/25/entry_27021331/
TimeOut値以内ならはじけくようにいじれば可能
0088デフォルトの名無しさん
垢版 |
2009/03/31(火) 18:09:14
ローカルのhtaを実行して表示されたウィンドウの右クリック→ソースを見るを選択すると
普通はテキストエディタでそのhtaファイルが開くと思うんだけど
何故かC:\Users\username\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5\〜〜〜のtempフォルダのデータを表示するようになってしまった
これを解消する方法知ってる方居たら教えて下さい

OSはVistaのhome pro
mshtaのバージョンは8.00.6001.18702
サイズは45568byte
IEのバージョンは8 ですが
http://www.ugtop.com/spill.shtmlをnew XMLHttpRequest();で取得すると、UAが
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.1.4322)
で、IE7のままになっています
0092デフォルトの名無しさん
垢版 |
2009/04/01(水) 03:24:58
はい。mshtaのコマンドラインは
"C:\windows\system32\mshta.exe" "C:\hoge.hta"
で、ちゃんと"で括ってる
0097デフォルトの名無しさん
垢版 |
2009/04/10(金) 14:31:19
引数を省略するとき、VBScriptだと
hoge a,,b
ですが、JScriptだと、
hoge(a,,b)
がエラーになります。どう書けばよいのでしょうか?
0100デフォルトの名無しさん
垢版 |
2009/04/10(金) 20:35:28
それは長さ0の文字列(VBSで言うところのvbNullString)を渡してるだけで
引数を省略しているわけではないぞw
0101デフォルトの名無しさん
垢版 |
2009/04/10(金) 22:14:19
>>100
ヘルプ嫁
vbNullString
値 0 を持つ文字列
長さ 0 の文字列 ("") とは異なります。外部プロシージャを呼び出す場合に使用します。
0102デフォルトの名無しさん
垢版 |
2009/04/10(金) 22:33:24
内部的には同じだよ

MsgBox vbNullString = ""
MsgBox TypeName(vbNullString) = TypeName("")
MsgBox VarType(vbNullString) = VarType("")

ポインタ参照すれば違うけど、VBSもJSもポインタ参照出来ないし
0103デフォルトの名無しさん
垢版 |
2009/04/10(金) 22:48:10
内部的に同じというより、VBやVBSの中でvbNullStringを使おうとすると
自動的に""に変換されてしまうというのが自分の認識。
まあどうでもいいことだが。
0117デフォルトの名無しさん
垢版 |
2009/04/12(日) 10:37:30
> (粘着君が) この辺にしといてほしいが。
> (>>115が) この辺にしておくんじゃ・・・

もしかして日本語も不自由なのか?

そもそも >>112 に書いた URL のリンク先見れば、>>102 が間違いなのは
明らかなんだからいい加減無駄なレスはやめた方がいいと思うんだけど、
引っ込みつかなくなっちゃてるんだろうな。(w
0120デフォルトの名無しさん
垢版 |
2009/04/12(日) 21:50:08
作れるかと言われると反論したくなるのが人の性
一応 JScript から
VarType は 10 になってるけど、これでいいのか?

<html><head><script language="JScript">
var missing = null;
var obj = {}
obj.passError = function(p1, p2) { missing = p1; }
obj.print = function(s) { alert(s); }
var sc = new ActiveXObject("ScriptControl");
sc.Language = "VBScript";
sc.AddObject("jsobj", obj);
sc.AddCode("Sub Hoge(o): Jsobj.print CStr(VarType(o)) & \": \" & TypeName(o) : End Sub\n");
sc.ExecuteStatement("Jsobj.passError ,0");
sc.Run("Hoge", missing);
//sc.ExecuteStatement("Hoge Null");
//sc.ExecuteStatement("Hoge Empty");
//sc.ExecuteStatement("Hoge Nothing");
window.close();
</script></head><body></body></html>
0123120
垢版 |
2009/04/13(月) 02:01:22
いや、見れば分かるとおり冗談なんだけど…

それより、自分は Vista で確認してるんで、少なくとも Ultimate では
ScriptContorl 使えることは確かだと思うんだけどバージョンによって使えないってこと?

HTA含め、その周辺のCOMコンポーネント技術は.NETより環境に依存しない
ところがいいと思ってたんだけど、本当にそんなレベルで非互換があるようなら困ってしまう
0124120
垢版 |
2009/04/13(月) 02:04:03
しまった入れ違い

よかった
Server 2008でもOKというなら大丈夫かな
念のため調べるけど
0125デフォルトの名無しさん
垢版 |
2009/04/13(月) 02:15:52
ScriptControlが使えないとしたらHTAではなくHTMLでセキュリティの設定によって弾かれたくらいしか理由が思いつかない。

そもそも存在しないというのは有り得ないだろう。
それはつまりWSHがきちんとインストールされていない状況ということになるので。
0127125
垢版 |
2009/04/13(月) 02:40:48
あれ?Script ControlってWSHの一部だと思っていて、別途配布もされているとは知らなかった。すまん。
0129デフォルトの名無しさん
垢版 |
2009/04/13(月) 16:02:42
ttp://internet.watch.impress.co.jp/cda/special/2009/04/08/23047.html
最後、htaが大活躍!・・・(´・ω・`)
0133デフォルトの名無しさん
垢版 |
2009/04/13(月) 21:36:28
うわつまんねぇスクリプト

<META http-equiv="refresh" content="0; URL=ほにゃらら">
<title>動画を再生するページ</title>
<Script Language="VBScript">
'ウィンドウのサイズ設定
winwidth = 600
winheight = 400

'ムービーのサイズにあわせてリサイズ
window.resizeTo winwidth,winheight

'画面下中央に移動
positionX = ( screen.availWidth - winwidth ) / 2 + 50
positionY = ( screen.availHeight - winheight ) / 2 + 25
window.moveTo positionX, positionY

</Script>
</head>
<body>
<HTA:APPLICATION
APPLICATIONNAME="Princessmovie"
ID="pri" VERSION="1.0" SINGLEINSTANCE="yes" SHOWINTASKBAR="no" NAVIGABLE="yes" WINDOWSTATE="normal"
BORDER="none" INNERBORDER="no" BORDERSTYLE="normal" CONTEXTMENU="no" SELECTION="no" SCROLL="no"
SCROLLFLAT="no" CAPTION="no" ICON="" SYSMENU="no" MAXIMIZEBUTTON="no" MINIMIZEBUTTON="no"
/>
0142デフォルトの名無しさん
垢版 |
2009/04/18(土) 17:19:41
>>139
確かにhtaのオプションとして欲しいね
標準環境で可能とは言え、わざわざ外部の関数(dll)呼ぶのは面倒だ
0146デフォルトの名無しさん
垢版 |
2009/04/18(土) 17:52:19
>>144
Excelは無くても出来る
だってExcelはWin標準じゃないじゃん

あと、それはそれで透明度とか指定できて便利なんだが
別ファイル作るのが好きじゃないので早い遅い以前に最前面表示だけのためには使いたくない

>>145
最新のIE入れればそれで最前面になるの?
XP+IE6なうちでは何も起こらないが
0152デフォルトの名無しさん
垢版 |
2009/04/19(日) 14:05:32
仕事で使うならExcelWordは標準装備って考えていいと思うよ。
OOoとか使うならそもそもWindows使うなよって感じだしね。
0153デフォルトの名無しさん
垢版 |
2009/04/19(日) 14:29:56
> 仕事で使うなら
HTAが仕事でしか使わないものじゃない以上、その前提に意味はない。
0154デフォルトの名無しさん
垢版 |
2009/04/19(日) 14:50:17
>>153
仕事以外で使うならExcelWordは標準装備って考えちゃ駄目でしょ。
そのかわり、DLLとか好きなだけインストールし放題だけどね。
0162デフォルトの名無しさん
垢版 |
2009/04/19(日) 22:48:07
なぜ鯖でIEみたいなどこに穴が開いてるかわからんゴムを使った結果妊娠しました
どうしますか?(Yes/All)
0177デフォルトの名無しさん
垢版 |
2009/04/25(土) 14:27:45
HTAアプリ作ってみて少し分かったこと

基本、拡張子.htmlのままでも機能は同じだが、
標準ブラウザをFireFoxとかにしててもIEのエンジンを使ってVBScriptを実行できること。

ようするにIE使うんなら別に.htmlのままでいいんじゃないかと
0180デフォルトの名無しさん
垢版 |
2009/04/25(土) 15:12:04
jQueryが流行ってもHTAはバーニングのかけらもなかったな
IE嫌いのWEBの連中にはちっとも魅力的にみえないHTA
0186デフォルトの名無しさん
垢版 |
2009/04/26(日) 07:41:59
ActiveScript(VBSやJS、Active***など)は
ActiveXコンポーネント(dllやocxやexe)を使うための言語なんだから
必要とする機能に応じて、その機能を有するActiveXコンポが必要になるのは当然だろ?

嫌なら違う言語使えばいいさ。普通のプログラム言語に移ってもいいし
GUI作れるインタプリタ言語だって他にいろいろあるし。
0188デフォルトの名無しさん
垢版 |
2009/04/26(日) 17:57:18
htaめっちゃ便利ですね。
事務仕事で使う端末に、無許可のexeを導入してはいけないって
縛りがあるんで、ちょっとしたツールをhtaで作ってます。
mshtaなら元から入ってるから文句言われない、はず。。
同じような環境の人って結構居ると思うんですけど
流行ってないみたいで。
他に良い解決方法でもあるんでしょうか?
WSHだけでも書きますけど、UI弱くて。
0190デフォルトの名無しさん
垢版 |
2009/04/26(日) 18:05:59
自分用ツールで完結してる人がほとんどじゃない?
わざわざ後悔するほどのものじゃない、つーか
俺の場合ローカルネタすぎて応用が利かない。
0191177
垢版 |
2009/04/26(日) 18:19:53
>>190
むしろ公開するためにデフォで使えるHTAを選んだんだけど。
いや、画面が使えるのが理由かな。
Webインターフェースだから予定してなかったポップアップも簡単に実装出来ちゃって使いやすくなったよ。

ttp://karimofu.org/dlp/mofu1_6055.zip.php
標準ZIP DLパス:siberia

2ちゃんスレ読みはdat直読みだけど、投稿にはIEを使ってるんです。
IEを使ってる部分をXMLHTTPで直接通信してp2proxy通そうかと思ってるんだけど・・串+bbs.cgiのコーディングがなんかわかんなくて。
とりあえず串通さないやり方はなんか紹介してあったんだけど、串通るのかなあと。
p2串スレで質問中だけどいまんとこスルーされてる。
0192デフォルトの名無しさん
垢版 |
2009/04/26(日) 18:33:35
> 無許可のexeを導入してはいけない
ってところは結構あるが、そういう条件を定めているまともな会社は
WSHもHTAもデジタル署名受けてないVBAも普通は全部ダメだな。

まあ底辺の弱小企業は、exeだけ規制して対策したつもりになり
他であぼーんするってオチになるわけだが。
0195デフォルトの名無しさん
垢版 |
2009/04/26(日) 21:15:58
はてな
htmlファイルは作らなくてもいいし
objectやscriptはwsh側に持てば制限に掛からないし
0196デフォルトの名無しさん
垢版 |
2009/04/26(日) 21:40:16
はてな
192のWSHもHTAも禁止されてる環境って話を受けての話題じゃないのか?
だったら「wshで、ui部分だけieを駆動する方法もある」から何だってんだ?
0210from
垢版 |
2009/04/30(木) 20:31:17
書き込む
0213デフォルトの名無しさん
垢版 |
2009/05/03(日) 11:38:28
大抵の人はテキストエディタ使ってると思うけど
MS謹製:HTA Helpomatic
 ttp://www.microsoft.com/downloads/details.aspx?FamilyId=231D8143-F21B-4707-B583-AE7B9152E6D9&displaylang=en
・過去スレで出てたのは
  - (officeが入ってるなら)Microsoft Script Editor (MSE)
  - InterDev
  - 補助用?でWebFormDesigner (ttp://www.webformdesigner.com/download.html)なんかも挙がってたな
・はてダでHTAのエディターもどき公開してる人もいる
・シェアウエアでもいいなら HtaEdit(ttp://www.htaedit.com/)  - 使ってないから詳細不明

デバッグは…
・Script Debugger使う
・Microsoft Script Editor (MSE) 使う
・(VSとかの)デバッガでmshta.exeにアタッチ …とか?
参考:wsf(WSH)のデバッグ - ttp://social.msdn.microsoft.com/Forums/ja-JP/vwdexpressja/thread/eb13d7de-a6c1-4ed5-83d1-ccf159871525

/* おまけ
What editor do you use?
 ttp://www.visualbasicscript.com/m_27156/tm.htm
ScriptingAnswers.com Forums: generates htas from scratch, with all available options explained.
 ttp://www.scriptinganswers.com/forum2/forum_posts.asp?TID=1702
ScriptingAnswers.com Forums: hta sampler
 ttp://www.scriptinganswers.com/forum2/forum_posts.asp?TID=1772
hta site:www.visualbasicscript.com - Google 検索
 ttp://www.google.com/search?as_sitesearch=www.visualbasicscript.com&q=hta
*/
0215デフォルトの名無しさん
垢版 |
2009/06/08(月) 22:58:06
ネタがない。のでこんなの作ったぜ自慢

mixiのマイミクのログイン時間を5分おきにチェックして記録するツール
0218デフォルトの名無しさん
垢版 |
2009/06/10(水) 00:27:27
んでもXMLHttpRequestではIEのクッキー情報送信するマシンとしないマシンがあるから、不特定多数に配布する事が出来ない
IEのどっかの設定が影響してるのかな。知ってる人教えて。
0219デフォルトの名無しさん
垢版 |
2009/06/10(水) 05:46:19
デフォ設定が不確定だろうと、XMLHttpRequest側で任意に選択できるんだからどうでも良い
自分で使う場合はデフォ設定利用しても、配布する場合はデフォ設定使わなきゃ良いだけの話
0222デフォルトの名無しさん
垢版 |
2009/06/10(水) 20:08:25
自分は普通にアクセスするだけでログイン状態のhtml持ってこれるのに
配布バージョンは自力でクッキーフォルダ探して読み込んで…ってしないといけないのめんどいやん
0223デフォルトの名無しさん
垢版 |
2009/06/10(水) 20:16:54
でも最低一日、出来れば一週間は動かすことオススメするよ
休憩時間とか就寝時間とかバッチリ出て面白いくらい
0225デフォルトの名無しさん
垢版 |
2009/06/11(木) 02:27:29
更新チェックは新しいリクエスト発行を必要とする。
リクエスト毎に、自分のログイン時間が更新される。

ってことじゃね?

mixiで表示されるログイン時間って、
いわゆるログインした時刻ではなくて
ページ移動や更新等の
最新リクエスト発行時刻だべ?
0227デフォルトの名無しさん
垢版 |
2009/06/11(木) 07:36:06
「何勘違いしてるの?」と勘違いしてる人はとりあえず
そのツール起動した上で一度
マイミクか誰かに自分のログイン時間見てもらうといいんじゃない?
0228デフォルトの名無しさん
垢版 |
2009/06/11(木) 07:51:21
ミクシィのログイン時刻の更新については、トップ(home.pl)踏まなきゃ大丈夫とか
ミクシィ内のページならどこ踏んでもダメ、とかいろいろ情報が錯綜している感じ。
仕様変更とかもあるだろうし、どれが最新の情報なのやら。

おいらは垢持ってないので確認出来ないや。
0237デフォルトの名無しさん
垢版 |
2009/06/30(火) 22:23:59
IEでログイン出来ているのに、XMLHttpRequest()でログイン済みのhtmlが取得出来たり出来なかったりするのはどうにかならんか
対処法。つまりIEと同じソースを確実に取得する方法知ってる人教えて下さいな
0239デフォルトの名無しさん
垢版 |
2009/07/01(水) 01:31:17
HTTPリクエスト(リクエストヘッダやSendデータなど)についてちゃんと知ってるけど、それとmshta関係無いでしょ
0243デフォルトの名無しさん
垢版 |
2009/07/01(水) 23:26:32
HTTPリクエストとmshtaが関係無いって言ったのに
XMLHttpRequestとHTTPリクエストが関係無いって言ったみたいに見えている方がいらっしゃるようです
0247デフォルトの名無しさん
垢版 |
2009/07/09(木) 08:19:48
セッションやクッキー含めた全てのリクエストヘッダがIEと同じHTTPリクエストを送信する方法を教えて下さい
0250デフォルトの名無しさん
垢版 |
2009/07/14(火) 05:33:46
>>247
IEのCOMオブジェクトを使えばいい。

UWSCのシェアウェア版についてるRecIEで操作を記録すれば簡単にスクリプト作れる。
0259デフォルトの名無しさん
垢版 |
2009/09/15(火) 15:49:55
FileSystemObjectのMoveFileで、ファイルの作成日時が書き換わることがあるんだが
再現性が無くて困っています。詳細知っているかた教えて下さい。

こんな関数を使って、ファイルをどんどん移動させると、2/3くらいの確立でファイル作成日時が変っていることがあった

function MoveFile(from,to){
fso = new ActiveXObject('Scripting.FileSystemObject');
var moto,ato,kekka;
moto = new Date(fso.GetFile(from).DateCreated).getTime();
fso.MoveFile(from,to);
ato = new Date(fso.GetFile(to).DateCreated).getTime();
kekka="";
kekka+="\""+from+"\"を\n\""+to+"\"にリネームしました。\n";
if(moto==ato){kekka+="タイムスタンプは変更ありません。";
}else{kekka+="タイムスタンプが\n"+moto+"\n↓\n"+ato+"\nに書き換わっています!な、なんで…";
}
alert(kekka)
}
0261デフォルトの名無しさん
垢版 |
2009/09/15(火) 22:18:03
解決した。

えと、ドライブは同じ、フォルダも同じで名前だけ変えてもタイムスタンプは変っちゃった。
んでそのファイル名のパターンに問題があったらしくて
"ほげ.txt"→"temp_0.txt"
"temp_0.txt"→"ほげ.txt"
"かげ.txt"→"temp_0.txt"
"temp_0.txt"→"かげ.txt"
"まげ.txt"→"temp_0.txt"
"temp_0.txt"→"まげ.txt"
みたいにリネームしてた。んで、"temp_0.txt"にリネームする時に
前回のファイルのタイムスタンプが何故か反映されちゃったみたい。数字をランダムに変えたら大丈夫になった。

という訳でした。
0270デフォルトの名無しさん
垢版 |
2009/09/20(日) 21:23:05
>>269
COM呼び出し:
<object id="statusBar" width="100%" height="20" classid="CLSID:8E3867A3-8586-11D1-B16A-00C0F0283628"></object> みたいな。
// 環境依存だっけ? 未確認。

@秘密工場さんとこのCOMコンポーネント:
Tray Control とか。
ttp://hyons.hp.infoseek.co.jp/soft/trayctrl.shtml

擬似ステータスバー:
table要素とかをステータスバーに見立てて styleで position:absolute で、とか。
0272270
垢版 |
2009/09/21(月) 00:47:27
>>270
擬似ステータスバーどっかで見たよな〜 … って探してみた

WSH Lab. 掲示板 記事検索プログラム (WshLab.hta)
参考になるかも
0275デフォルトの名無しさん
垢版 |
2009/09/23(水) 23:29:30
>メニューバー
付いて無いものはしょうがないしねぇ。

代替手段としては

MS Officeが入ってるなら
簡単なツール バーを HTA に追加する
ttp://www.microsoft.com/japan/technet/scriptcenter/topics/activex/toolbar.mspx
とか

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

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

あとは
YUIやJQueryなんか使う方法とか、か。
0276デフォルトの名無しさん
垢版 |
2009/09/24(木) 12:04:31
>>275
メニューバーの代替で "coolbar"とか "簡単なツール バーを" とかちょっと強引過ぎたか

こっちの方がいいかも

JSLook

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

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

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

連投スマソ
0277デフォルトの名無しさん
垢版 |
2009/10/04(日) 07:11:22
<hta:application>の閉じタグってどうするのが実装的には正しいのか気になった
閉じない、<hta:application />、</hta:application>のどれだろう

msdnのHTA Developers Centerでは閉じてないんだけど、みんなはどうしてる?
0278デフォルトの名無しさん
垢版 |
2009/10/04(日) 09:21:40
>>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
ttp://msdn.microsoft.com/en-us/library/ms536495(VS.85).aspx

0280デフォルトの名無しさん
垢版 |
2009/10/04(日) 12:35:43
タグなんだから閉じるのは当たり前だろうga

もしかして<br>や<pr>は閉じちゃだめとか思ってないか?
0283277
垢版 |
2009/10/04(日) 13:25:39
>>278
ありがとう
これからは</hta:application>で閉じるようにするよ

>>280
閉じなければならないけど、sgmlのDTDによっては「閉じは"省略"しなければならない」だね
語弊があってスマソ
0284278
垢版 |
2009/10/04(日) 16:02:18
>>283
いやいや 別に省略形で構わないんじゃないの? <HTA:APPLICATION ... /> みたいに。
0286278
垢版 |
2009/10/04(日) 23:53:42
いやだからリファレンスに "〜it can also be closed using the following shortcut.〜" ってあるんだから
閉じタグの</hta:application> 使っても省略形の <hta:application ... /> でも好きな方使えばいいじゃん。
XHTMLとかは関係ないでしょ、この場合。

一応断っておくけど >>280-282 は俺とは別の人ね
// ID出ない板は面倒くさいな
0287デフォルトの名無しさん
垢版 |
2009/10/29(木) 10:50:14



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



早く記念カキコしないと埋まっちゃうwww
0289デフォルトの名無しさん
垢版 |
2009/11/04(水) 01:01:36
最初のスレからGUI関係の情報サルベージしてきた (『YUIやJQueryなんか』以外)

MAKOTO3.NET - dhtml samples - 154,157 「oncontextmenuイベント」
ttp://www.makoto3.net/dhtml_ie/dhtml_ie_top.html

dhtmlgoodies - DHTML List based context menu(javascript)
ttp://www.dhtmlgoodies.com/index.html?whichScript=context_menu
dhtmlgoodies - Menu Scripts (ついでに追加)
ttp://www.dhtmlgoodies.com/index.html?page=menuScripts

DHX - DHML GUI部品色々
ttp://scbr.com/docs/products.shtml

JavaScript DHTML examples - GUI Components
ttp://www.java2s.com/Code/JavaScript/CatalogJavaScript.htm

jshtaframework - GUI関係ではMenuとかStatusBarとかToolBarとか
ttp://code.google.com/p/jshtaframework/

HTALite Framwork, rev b - GUI関係ではToolbarとかStatusBarとかPopUp(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はそれぞれのサイトで確認よろ
0290デフォルトの名無しさん
垢版 |
2009/11/09(月) 06:22:56
WindowsPE3.0にHTA実行環境が追加できるらしいね。
データ復旧をするときに自作ツールが使えて便利かも。

ttp://www.computerworld.jp/topics/mws/165609-5.html
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のインストーラにはメモ帳がついてるんだけど、ペイントもつけてくれてればよかったのにな。
エラーのときとか画面を保存できるし。
0292デフォルトの名無しさん
垢版 |
2009/11/29(日) 14:39:32
htt関連のコントロールが使えないのが地味に痛い。
ガジェットと統合してくれたらいいのになあ、と思うが絶対にないだろう。
0294デフォルトの名無しさん
垢版 |
2009/12/15(火) 05:31:41
IE8みたいに、システムのDPIに合わせて自動的にズームする機能つかないかなあ
<hta:application autozoom="yes"> とか

120DPIだと画面が小さい小さい・・・
0299デフォルトの名無しさん
垢版 |
2010/02/18(木) 12:21:48
ちょっと釣られてみるか

HTAで使うようなStatusBarなんかの需要があった場合、選択肢は色々あるってだけの話
>>289にも(『YUIやJQueryなんか』以外)ってあるだろ?
誰もJQueryとかYUIを使っちゃ駄目なんていってないんだから使いたきゃどんどん使えよ
0300デフォルトの名無しさん
垢版 |
2010/02/20(土) 06:58:16
何が釣られてみるだカスが
わざわざそんな誰も使ってないようなの出さなくていいんじゃないのって事
誰も使用感すらレポしてねえし
0301スレタイ嫁
垢版 |
2010/02/20(土) 09:32:14
久しぶりにカキコミがあると思えば…
0302デフォルトの名無しさん
垢版 |
2010/02/20(土) 11:45:31
あーレポね。んじゃ>>289の中から少しだけ。
・HTALite Framwork
コンポーネントとしてHTCファイルが一つのシンプルなフレームワーク、UIもシンプル、HTA作る時の雛型として使ったりする。
 - 最初からToolbar、StatusBarが使える。
 - JQuery,YUIにはHTCないので>>299的にいえばその辺で選択肢が広がるか。
・menuはdhtmlgoodiesのを使った事があるくらいかな。他のは試してない。
・もう一つのフレームワーク、jshtaframeworkもまだ試してない。
・dhtmlgoodiesみたいなサイトは手抜きしたい時なんかにワンポイントで必要なものを探すのに見たりするかな。
//最近HTA書いてねー身なんでこれ以上はやめとく

どっちにしてもHTAは色んな使い方がされてんだから情報も色々あっていいんじゃね、って思うけどね。スレタイ的に。
0304hidebou
垢版 |
2010/02/23(火) 14:11:13
何年か前にHTABOXというツールを書いた者です。
HTAという機構は素晴らしいのですが結局MSHTA.EXE経由では自由度が低かったものですから
MSHTA.EXEに代わる実行EXEをフリーソフトとしてリリースしました。
「HTABOXコア」
ttp://www.vector.co.jp/soft/winnt/util/se481957.html
まだサーバーの準備が整っていないのでエンコード機能を提供できるのは後日になりますが
お暇な時に遊んでいただいてご意見をいただければ助かります。
0306デフォルトの名無しさん
垢版 |
2010/02/23(火) 14:41:24
メニューはちゃんとアクセレータも使えるんですね!
って、本物なんだから当たり前か。でも凄い
0307hidebou
垢版 |
2010/02/23(火) 21:21:23
お試しいただいてありがとうございます。
メニューについては本当に基本的な部分しか記述していなくて、お恥ずかしいのですが
いままでのHTAには不足していた部分ですので、喜んでいただいて励みになります。

0308hidebou
垢版 |
2010/03/03(水) 20:44:53
正直なところMSHTA.EXEを置き換えていいものなのかについて今更ながら悩んでいます。
その先に何が起こるのかについて怯えていると言っていい状況です。
これを実現するのが夢でしたが、私は私自身を支えきれなくなりそうです。
0310hidebou
垢版 |
2010/03/04(木) 02:28:07
ありがとうございます。それは危険だというご意見もあろうかと思うのですが、
エンコーダーのリリース準備を進めさせていただきます。
0311デフォルトの名無しさん
垢版 |
2010/03/05(金) 18:29:07
HTABOXコア、個人的にはプログレスバーとスクロールバーとツリーボックスと…
あぁキリが無いやw

この辺のオブジェクトの増加に力を入れて欲しいです。
0312hidebou
垢版 |
2010/03/05(金) 21:11:55
ご要望ありがとうございます。

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

最も望ましいのは私以外の方がそういうライブラリをどんどん発表できる受け皿として
HTABOXが認知されてゆくことだとも考えております。
0314hidebou
垢版 |
2010/03/06(土) 16:58:59
ご迷惑かけて申し訳ありません。
今夜、自身のURLにご意見をいただけるよう整備いたします。
0318hidebou
垢版 |
2010/03/07(日) 02:55:12
ぐうたらでサーバーの整備を遅らせた私が悪いわけですから、背中を押していただいた
気持ちで、本番サーバーへの移行を行っています。
0319hidebou
垢版 |
2010/03/07(日) 16:24:15
サーバーの準備が整いました。
ttp://kuroda.bglb.jp/htabox/
がHTABOXのトップページです。同ページからHTBOXコア1.10のLZHをロードできます。
このLZHにはエンコーダーであるhtabox.htmが含まれます。この動作を見ればHTABOX
の全体像をご理解いただけるのではと考えております。サイト各ページの最下部にスレッド
形式掲示板へのリンクを置きましたので、お気軽にご意見をお寄せください。
0321hidebou
垢版 |
2010/03/08(月) 10:03:06
補足させてください。
名前を引き継ぎましたので旧HTABOXと同じ隠蔽手法と思っている方もいらっしゃるでしょうが、
まったく別の原理でソースが見えない状態を作っていることを付け加えます。
0322デフォルトの名無しさん
垢版 |
2010/03/08(月) 21:15:23
起動に必要なファイル(hta,html,icon等)を単一EXEにして実行出来るようにするの出来ないですか?
EXEアイコンも好きなのにしたいんですが・・・。
0323hidebou
垢版 |
2010/03/09(火) 00:01:26
その質問に理由を説明しながらお答えすると長くなり、不快に思う方もいらっしゃる
かも知れませんので、319:にあるURLの掲示板で回答をいたします。
0325hidebou
垢版 |
2010/03/09(火) 09:01:54
>>324
秘密どころか、原理と実験ソースを当サイトで公開しています。
0326デフォルトの名無しさん
垢版 |
2010/03/09(火) 09:05:05
拡張子 html と引数指定の時に拾ってくれないのですが……

あと、メニューは
<tr>
 <td>めにゅー1</td>
 <td>めにゅー1-1</td>
 <td>めにゅー1-2</td>
</tr>
のほうが直感的ではないでしょうか。
さらに言えば ul とかで階層メニューを作れるとうれしい。
0327hidebou
垢版 |
2010/03/09(火) 09:24:06
「拡張子 html と引数指定の時に拾ってくれないのですが…… 」
の意味をもう少し具体的に
0328hidebou
垢版 |
2010/03/09(火) 09:29:34
ulはツリービュー用に使う予定です
0329hidebou
垢版 |
2010/03/09(火) 09:34:30
いやulでもメニューのほうがいいかな?悩んでいます
0330デフォルトの名無しさん
垢版 |
2010/03/09(火) 12:10:54
>>327
test.exe と test.html を同じディレクトリに置いたり、
コマンドラインから test.exe data.html とか入力して実行しても
ファイルを発見できないときの表示になるということです。

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

ついでに、自分自身のウィンドウハンドルはできれば window オブジェクトのメソッドとかで取得できると
楽チンでうれしい。
0331hidebou
垢版 |
2010/03/09(火) 13:28:17
>>330
起動時の不具合をこちらでも確認しました。同じディレクトリに自身と同じ
名前のhtmが既存し、別名のhtmをドロップ起動すると起こっているようです。
早急に対応いたします。
WindowのスタイルについてはしかるべきAPIを追加いたします。
有益な情報をありがとうございました。
0332hidebou
垢版 |
2010/03/09(火) 14:01:37
>>330
引数での起動ファイル指定時、アイコンドロップだとフルパスが取得できますが、
手動指定だと入力したファイル名しかないことを見落としていました。
同名htmがある場合は引数よりファイルの存在が優先されるのは仕様です。
0333hidebou
垢版 |
2010/03/09(火) 15:25:23
第一引数で起動する場合、カレントディレクトリを基準に絶対パス変換を行う修正
が完了しました。できれば330さんに問題が解決したか確認していただけると助かります。
ttp://kuroda.bglb.jp/htabox/HTABOX.lzh
0335hidebou
垢版 |
2010/03/09(火) 17:16:56
スレッド作成しました。以降HTABOXコア関連の話題は下記へお願いします。

ttp://pc12.2ch.net/test/read.cgi/tech/1268122426/
0336324
垢版 |
2010/03/09(火) 20:40:46
>>325
あー、そうなのね。

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

今度、サイトを見にいくよ。
0338デフォルトの名無しさん
垢版 |
2010/03/19(金) 18:29:02
IE8をインストールしたら
HTAのフォント表示がおかしくなった
英文の時はいいんだけど
日本文を表示する時にバカデカいサイズになってしまう
0340デフォルトの名無しさん
垢版 |
2010/03/21(日) 09:13:43
HTA から標準入出力を使うというのは
神ブログ等に記載があるが、
自作の何かを試してみて「無効なハンドルです」と言われた場合
window.close()してから
objFso.StdOut.WriteLine などすれば良いと思う
0341デフォルトの名無しさん
垢版 |
2010/03/21(日) 13:16:54
勘違いかも
コマンドラインを | sort など
パイブラインやリダイレクトに食わせる
必要があるということかな
0342デフォルトの名無しさん
垢版 |
2010/03/21(日) 14:27:06
CreateProcess()でsubsystem=windowsのexeを起こすとき、
標準入出力でconsoleは引き継がないというのがOSのルールだよ
0344デフォルトの名無しさん
垢版 |
2010/03/21(日) 16:48:57
メモ00:
<HTA:(タブや空白)APPLICATION
id="xxx"
>
と書いてたらid属性が機能しなかった。知らねえよそんなの。
というか HTAコロンAPPLICATION タグということかな。

メモ01:
iframe 内から親ウィンドウが見えないなーと思ったら、
iframe タグの application 属性を yes にする必要あり
MSDN の HTML Applications 概要に説明あり
0348デフォルトの名無しさん
垢版 |
2010/03/27(土) 22:52:52
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>
0349デフォルトの名無しさん
垢版 |
2010/03/28(日) 00:03:02
Windows7でデスクトップ左端の分離ツールバーができなくなったんだけど、
だれかHTAで作ってくれないか?
0351デフォルトの名無しさん
垢版 |
2010/03/28(日) 20:35:26
.wsf に vbs と js と hta を
入れて「ひとりパイプライン」を作ると。
ファイルが一つで済んで
デスクトップが散らばらない
0353デフォルトの名無しさん
垢版 |
2010/03/29(月) 00:11:53
<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?が取れないんだけど、どうすりゃ取れるの?
0354デフォルトの名無しさん
垢版 |
2010/03/29(月) 01:43:01
>>353
VBScriptがいけないのかも

<html><head>
<script language="JScript">
function getTarget1() {return WebOC.Document;}
function getTarget2() {return WebOC.document;}
</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>
0355354
垢版 |
2010/03/29(月) 02:34:02
適当に書いたのでJScriptとVBScriptで参照してるオブジェクトが違ってしまってるけど、
WebOC.object.DocuemtとWebOC.Docuemtnは同じなので結果に影響はないはず
0363デフォルトの名無しさん
垢版 |
2010/04/10(土) 12:08:20
<?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>
0366デフォルトの名無しさん
垢版 |
2010/04/10(土) 14:27:56
>>364
vista+ie8 でもだめだろ
mshta javascript:かvbscript:の中でCreateObject("MSXML2.DOMDocument")・・・
すれば文字数制限にかからんよ
0368デフォルトの名無しさん
垢版 |
2010/04/11(日) 13:12:22
>>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>
0370デフォルトの名無しさん
垢版 |
2010/04/14(水) 21:27:47
複数の *.hta を開くと Win7 のタスクバーで一つでまとまるのではなく、複数になってしまいます。
ほかのアプリのように一つのアイコンにまとめることはできないでしょうか?

Win7のところで聞くべきなのかもしれませんがよろしくお願い致します。
0372デフォルトの名無しさん
垢版 |
2010/04/15(木) 21:23:33
HTAの質問とは言えないかもしれないんですが
<input type="file" id="idHoge">
でファイルオープンダイアログを開いた場合に
そのダイアログで何かが選択されたか、キャンセルされたかを判別したいんですが
何か良い方法は無いでしょうか。

idHoge の値を、ダイアログを開く前と後で比較していたんですが
これだと前回と同じファイルを選択した場合にキャンセルと区別が付かないです。
idHoge に onChange で動作を書けばいいかと思ったんですが、
同じファイルが選択された場合はonChangeも動作しませんでした。
0373372
垢版 |
2010/04/15(木) 21:33:37
すいません、解決しました。
0375372
垢版 |
2010/04/16(金) 12:23:20
入力されてる値をクリアするだけでも良かったんで
window.location.reload() で全体をリロードしてリセットする事にしました。
0377372
垢版 |
2010/04/16(金) 20:53:10
>>376
おお、こっちの方が良さそうですね。
ありがとうございます!
0378デフォルトの名無しさん
垢版 |
2010/04/19(月) 22:47:16
<?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>
0381デフォルトの名無しさん
垢版 |
2010/04/22(木) 23:53:49
job が複数あるときに job ごとに
function s(){...} と書くのは
大変なのでこうしようという提案です

write なしで動きました
0382デフォルトの名無しさん
垢版 |
2010/04/23(金) 23:41:21
vista でイケて
xp でダメだったのは
c:\users と c:\documents and settings の違いかもと
ようやく思い至りました
0384デフォルトの名無しさん
垢版 |
2010/04/25(日) 08:30:29
すいませんジャンクションてなんどすか

cmd.exe 以下の dir やら | やら && pause やらの
文字数の合計がリミットを超えたのかと想像しましたが
0385デフォルトの名無しさん
垢版 |
2010/04/25(日) 11:21:21
XPだと8191文字までだな。
Vistaは知らん。

コマンド プロンプト (Cmd.exe) のコマンド ライン文字列の制限
ttp://support.microsoft.com/kb/830473/ja
0393デフォルトの名無しさん
垢版 |
2010/05/01(土) 10:49:06
<?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>
0394デフォルトの名無しさん
垢版 |
2010/05/01(土) 10:57:30
文字数制限にそなえパイプを分けようとしたら
objShell.Exec を使うという普通の話になりました
Exec でも縦棒使えたのかー あるいは cmd.exe単品を起動して
後ろの引数は(Exec曰く)知ったことではない
と予想

objShell.Run も味があって捨てがたいな
一万文字流し込めないかな
0397デフォルトの名無しさん
垢版 |
2010/05/04(火) 15:12:00
ttp://www1.u-netsurf.ne.jp/~tomo_c/tips/R23Lev11.html  のページの
下のサンプルが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>
0400398
垢版 |
2010/05/04(火) 23:56:31
onclockじゃねえや、onclickだったorz
0405デフォルトの名無しさん
垢版 |
2010/05/08(土) 00:25:33
>>397,403
script要素をhtml要素の外に書いてるコードなんて初めて見た。
こんなクソコード真似しちゃ駄目だよ。
0406デフォルトの名無しさん
垢版 |
2010/05/08(土) 15:40:50
それほどおかしくないよ
<html>
<body>
あいうえお
</body>
</html>
<html>
<body>
かきくけこ
</body>
</html>
をひらいてみ
0410デフォルトの名無しさん
垢版 |
2010/05/08(土) 23:15:02
たまたまだよ。

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

規格を読むなり
ttp://validator.w3.org/ や
ttp://openlab.ring.gr.jp/k16/htmllint/htmllint.html で
チェックするなりした方がいい。
0411デフォルトの名無しさん
垢版 |
2010/05/08(土) 23:26:36
確率論において、2つの事象が独立であるというのは、ある事象と別の事象の両方が成立する確率が、
それぞれの確率の積で表わされることを言う。2つの確率変数が独立であるというのは、「ある確率変数
の値が一定範囲に入る事象」と「別の確率変数の値が別の一定範囲に入る事象」が、考えられるどのよ
うな「一定範囲」(「考えられる」とは通常ボレル集合族を指す)を定めても、事象として独立であることを言う。
二つの事象が独立といった場合は、片方の事象が起きたことが分かっても、もう片方の事象の起きる確率
が変化しないことを意味する。二つの確率変数が独立といった場合は、片方の変数の値が分かっても、
もう片方の変数の分布が変化しないことを意味する。
0416デフォルトの名無しさん
垢版 |
2010/06/10(木) 17:12:50
特定のウェブページを、Chromeスタイルで表示してくれる、Internet Explorerの拡張機能「Google Chrome Frame」がnew ActiveXObjectに対応してくれれば
html5のhtaが作れるのに・・・
0417デフォルトの名無しさん
垢版 |
2010/06/30(水) 15:11:59
HTA?なんぞそれ?と思って調べてみたらいいねこれ 
VBSctipr JavaScript HTML Perlも使えるとは

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


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

ググってみたらWSHは一部の機能が使えないとか
Wscript.sleepだの Wscript.echoが使えないとか・・・orz
0418デフォルトの名無しさん
垢版 |
2010/06/30(水) 15:17:51
>>417
Wscript.echo は alertで代用できるからいいけどsleepが代用できないという

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

も動かないとかもうね・・・
HTAはWSHを使う人にはとっつきにくいのかもね
0420デフォルトの名無しさん
垢版 |
2010/06/30(水) 17:20:30
>>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でごまかすか、時間のかかる処理は外部プロセス起動するといい。
0424デフォルトの名無しさん
垢版 |
2010/07/01(木) 17:14:57
' これは単に短い遅延を作成するためのスリープ関数です。
Sub Sleep(tmpSeconds)
Dim dtmOne,dtmTwo
dtmOne = Now()
While DateDiff("s",dtmOne,dtmTwo) < tmpSeconds
dtmTwo = Now()
Wend
End Sub
0431デフォルトの名無しさん
垢版 |
2010/08/29(日) 20:32:30
ファイルパスをイチイチエスケープするのが死ぬほどめんどいけど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;
}
こういう力技じゃないとダメ?
0432デフォルトの名無しさん
垢版 |
2010/08/29(日) 23:36:27
>>431
面倒になるくらい定義があるなら、.INIファイルライクな外部ファイルにするとか、
そうでなければ定義部分だけVBScriptにしてみるとか
<html>
<head>
<script language="VBScript">
path = "c:\dir1\dir2"
</script>
</head>
<body onLoad="window.alert(path)">
</body>
</html>
0438デフォルトの名無しさん
垢版 |
2010/09/28(火) 06:30:47
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('http://www.google.co.jp/');"
c:\> mshta javascript:window.navigate('javascript:alert("aa");');

どうやったらOLEオブジェクトを取得できるんだろうかと思っていたけど
>>335 でとっくの昔に答えがあった。
0439デフォルトの名無しさん
垢版 |
2010/09/28(火) 20:39:32
410-411
のhtaEx.exeがうまく動作しない……。
一度目の起動はうまくいくんだけど二度目以降は正常に動作しない。
htaのウインドウが非アクティブになるからhtaEx.exe自体は実行されてる様なんだけど。
htaEx.exeがウインドウをみつけられてない?
OSを再起動すればまた上手くいくようになる。
解決策あれば教えてください。
0440デフォルトの名無しさん
垢版 |
2010/09/29(水) 21:46:15
>>439
うん、よく外すよね。よく分からんけど。

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


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

ちなみに下記の ErrorLevel を返します。れっつエンジョイデバッグ!
0: やることはやって終了。
1: コマンドラインパラメーターが変。
2: 親プロセスのPIDが取得できない。
3: 親プロセスのHTAウィンドウが見つからない。
4: SetWindowLong()が失敗。
5: SetLayeredWindowAttributes()が失敗。
0441デフォルトの名無しさん
垢版 |
2010/09/29(水) 21:47:57
<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
0442  ↓ つづく   
垢版 |
2010/09/29(水) 21:48:47

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>
0446デフォルトの名無しさん
垢版 |
2010/10/02(土) 12:36:46
>>445
ErrorLevelの取得と表示は紙面の都合上掲載しておりません。あらかじめご了承ください。
64bit環境は今無いのでこちらではテストできません。する気もありません。あらかじめご了承ください。
ErrorLevel=1 の時だけMsgBoxを表示する糞仕様なのでパラメータを空にしてやれば起動確認ぐらい出来るかな?
0447デフォルトの名無しさん
垢版 |
2010/10/17(日) 21:45:51
俺がいじることのできない場所のページをiframe内に表示してる関係上
<meta http-equiv="MSThemeCompatible" content="yes">
が追加できないんだけど、そういう場合どうすればビジュアルスタイルが適用できる?
iframeにapplication=yesってやってDOMでheadにmeta追加しようとしてもうまくいかないし。
0453デフォルトの名無しさん
垢版 |
2010/10/25(月) 20:24:56
いつもこのスレで何か聞こうと思って
その前によく調べようと思って、よく調べると
何だかんだで答えが見つかってしまって
結局聞かない。
0454デフォルトの名無しさん
垢版 |
2010/10/25(月) 20:45:03
HTA(+JScript)で、ウィンドウを閉じる時に処理させる
何か良い方法は有りますか?
(まぁ「閉じますか?」って確認ダイアログ出したいだけ)

独自の閉じるボタンを作って処理させても
Alt+F4で消されると対処できない。
仕方が無いのでAltを無効にしたんですが
こうするとAlt+Tabが使えないと苦情が来る。
0455デフォルトの名無しさん
垢版 |
2010/10/25(月) 21:45:28
>>454
無理じゃないかな
onBeforeUnload()イベント使えば、閉じられるのを検知はできるし、
メッセージも表示できると思うけど、閉じるのをキャンセルはできないと思う
0456デフォルトの名無しさん
垢版 |
2010/10/25(月) 23:02:37
>>455
Gmail で編集中の画面から移動しようとすると「移動しますか?」って聞かれてキャンセルも可能なのは何故なんだぜ?
同じ方法が HTA にも適用できるはずなんだぜ。…原理的には。

おっと詳しいことは俺に聞くなよ。
0457デフォルトの名無しさん
垢版 |
2010/10/25(月) 23:19:50
>>456
いや、ページ移動のキャンセルはできてもブラウザを閉じるのは抑止できなかったんじゃないかと
ブラウザが閉じられるのを制御できたら、ブラウザを閉じることのできないブラクラが作成可能って
ことになるけどそれはないだろうと
0459デフォルトの名無しさん
垢版 |
2010/10/26(火) 10:49:20
Titanium DeskTopを試してみたけど、まんまHTAだな。
実に簡単に動いた。Exeも簡単に出来ちゃった。
MacもLinuxも持ってないけどこれで動くんでしょ?
Titanium MobileではiphoneとAndroidのアプリも作れちゃうらしいし。
っていうかこれでいいじゃんね?
PythonとRubyも組み込めるらしいから
深くやる場合はそっちで関数組んどいて逃げればいいらしい。
これからはラップ関数作っといてTitaniumへの移行も意識してHTA作ったほうがいいのかも。
0461デフォルトの名無しさん
垢版 |
2010/10/26(火) 18:38:20
>>455
そう、閉じる前のメッセージを出すまでは出来るんですが
 「閉じますか?」→キャンセル→でも閉じる
という風にしか成らない。
やはり無理なんですかね。
現状で限界って所でしょうか。

>>457
でも、そういうブラクラ的な動作でもHTAなら出来るようになっていておかしく無いんじゃないかと。
閉じるボタン消すとかは普通に出来ますし
閉じられなくてもタスクマネージャーから殺せば落ちるでしょうっし。
0462デフォルトの名無しさん
垢版 |
2010/10/26(火) 18:48:24
ブラクラは、onBeforeUnload()の関数のところで、自分自身をまた開くとかやってるんじゃないの?
でも普通のhtaアプリでそういうことやっていいものかどうか。
0463デフォルトの名無しさん
垢版 |
2010/10/29(金) 20:57:22
HTAでフレームやiframeを使って、フレーム内にローカルのパスを指定すると
エクスプローラーのような動作になりますよね。
あの状態で、フレーム内のファイルの表示方法を変える方法はありますか?

対象フレームを focus() でアクティブにして SendKeys で Alt+Shift+F10→V→L とかやって見たんですが
フレーム内をアクティブにすることが出来ず、フレーム内のコンテキストメニューが出てこない。
0466デフォルトの名無しさん
垢版 |
2010/11/28(日) 15:18:29
HTAって、どうやって動かせばいいんだっけ?
XPでは最初から動いたので気にもしていなかったが、
win2k+ie6sp1のマシンにもって行ったら起動しないし、
mshta.exeというので開いてもソースが表示されるだけ?
何か設定が必要なの?
0471デフォルトの名無しさん
垢版 |
2010/11/28(日) 18:21:57
>>470
xp側はieも8だから、そのせいかな。
<html>の前にコメント入れること自体間違いなのかしら。
2k+ie6でも、短ければ入れられるみたいだけど…
0472デフォルトの名無しさん
垢版 |
2010/11/28(日) 20:07:59
>>471
文書の文字コードがShift_JIS以外の場合、
キャラセットが明示的に宣言されるより前に2byte文字が存在すると、
不具合が起こる可能性がありますよ。
0473デフォルトの名無しさん
垢版 |
2010/11/29(月) 01:51:47
htaのスクリプトの中から自らが使っているmshta.exeのフルパスを得るにはどうしたらいいのかな?
WSHならWScript.Fullnameで取得出来る。
スクリプトのパスはlocation.pathnameで取得できるんだけども・・・
例えば、HTAを任意のUSBドライブに移したMSHTA.exeから起動した場合を想定してます。
0479デフォルトの名無しさん
垢版 |
2010/12/01(水) 12:41:46
var hDB = new ActiveXObject( "ADODB.Connection" );
var Rs = new ActiveXObject( "ADODB.Recordset" );

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

なにか方法はありますか?
0481デフォルトの名無しさん
垢版 |
2010/12/01(水) 20:00:30
// 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に入ってこない
0482デフォルトの名無しさん
垢版 |
2010/12/01(水) 20:06:11
接続も補足で(接続はできています)
// Javascript
connect = function ( Obj ) {
Obj.Open( "〜" );
}
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 );
0483デフォルトの名無しさん
垢版 |
2010/12/01(水) 21:02:20
ああ、そりゃ無理だ。JavaScript的に。
このぐらいで我慢しとけ。意味無さげだけど。

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

1、引数
2、プロセス環境変数
3、特定のパスのファイルを決め打ちしといて、そこに暗号化されたパスワードを書き込んでおいて、スクリプトで読む。
4、いろんなDLLを使ったプロセス間通信を経由して渡す。パスワードを管理してるアプリを作っといて、
それをWindowsの起動時から動かしといて、そこにスクリプトが決め打ちしてアクセスするような感じの運用。
(manifestを使えばUSB上のWScript.exeやmshta.exeからも外部Dllが使えることは理解してる。)
5、その他
0493デフォルトの名無しさん
垢版 |
2011/01/28(金) 15:27:56
レガシーなDLL(comでも.netでもない)をHTAから呼ぶときは、やっぱりSFCminiを使うのが一般的でしょうか?
それと、DLL内関数の戻り値を得ることは可能でしょうか?
0494デフォルトの名無しさん
垢版 |
2011/01/30(日) 16:02:01
// 具烈婦したらこんなのが出てきた。全然覚えてないが、いつの日かググッてい田んだろう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);
0495デフォルトの名無しさん
垢版 |
2011/04/05(火) 00:37:18.06
<!-- スクロール.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>
0498デフォルトの名無しさん
垢版 |
2011/04/22(金) 22:59:11.41
手軽にUIが作れてローカルファイルがいじくれるからすごく重宝してるのに
C言語を覚えろって事ですか
0506デフォルトの名無しさん
垢版 |
2011/07/11(月) 02:01:28.72
JavaScriptで.NetのDLLを呼び出せるそうですが、HTAで使う場合は
アップロードすら必要ないんでしょうか?
ttp://d.hatena.ne.jp/language_and_engineering/20100705/p1
0511デフォルトの名無しさん
垢版 |
2011/07/26(火) 19:15:02.83
HTAで作ったものを公開してるんですが
Vistaだと「データの実行防止」とやらで止められてしまうようです。
ユーザーに解除の仕方をアナウンスしても良いわけですが
そもそも実行を防止されないようにする方法はありますか?
0513デフォルトの名無しさん
垢版 |
2011/08/19(金) 17:03:48.89
〜.htaとmshta.exe protocol:〜でセキュリティの違いがあります?
〜.htaをmshta.exe javascript:〜に書き換えたら動かないのですが?
0527デフォルトの名無しさん
垢版 |
2011/09/08(木) 19:18:32.80
こーゆうの?

function resizeWindow(w, h)
{
window.resizeTo(w, h);
window.setTimeout("window.resizeTo(" + w + "*2-document.body.clientWidth," + h + "*2-document.body.clientHeight)", 1);
}
0538525
垢版 |
2011/09/12(月) 18:00:25.10
>>527
以前は

while(true){}
0539525
垢版 |
2011/09/12(月) 18:03:19.87
間違えて送信してしまった

以前は
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;
 }
}

こういう書き方をしているので、他の人はどうしているか気になった。
0541デフォルトの名無しさん
垢版 |
2011/09/12(月) 20:33:18.99
>>539
昔形意拳っていう日本語の怪しいゲームがあってだな。
そのラスボスがLOTUS MASTERって奴で蓮の王らしかった。
LOTUS MASTERを使ってると現れる真の王が
TURE LOTUS MASTERだった。
0543デフォルトの名無しさん
垢版 |
2011/09/15(木) 00:28:25.71
>>499
Windows 8向け新アプリは新実行環境「WinRT」で動く
http://ascii.jp/elem/000/000/633/633763/
>Windows 8では新規に「Metro Style」と呼ばれるアプリケーションタイプが追加されており、
>こちらのアプリケーションはStart Screenから全画面を占有する形で起動する。
>このMetro Styleアプリーション用に新しく「WinRT」と呼ばれるAPIセットが定義されており、
>アプリケーションはC/C++、C#/Visual BASIC、そしてHTML5+JavaScriptで開発が可能だという。


HTAともガジェットとも別物だな
0544デフォルトの名無しさん
垢版 |
2011/09/19(月) 00:50:32.37
windows8、metroのときはWinRTでネイティブ触れるけど、DesktopのときはIEだからだめっちゅうことか?
ttp://www.forest.impress.co.jp/docs/news/20110914_477356.html
0545デフォルトの名無しさん
垢版 |
2011/09/21(水) 01:40:48.96
http://www.infoq.com/jp/news/2011/09/WinRT-API
WinRTは、もう一つの抽象層ではない。ちょうど Win32 APIようにカーネルの真上にあるものだ。
これは、1993年にWindows NT によってWin32が導入されて以来、Windowsのコアに
始めての大変化を記すものである。WinRTは、Win32とは非常に違ったセマンティックによる、
新しいアプリケーション実行環境を意味する。

Cを念頭に設計されたWin32とは違って、WinRT APIはC++で書かれており、
最初からオブジェクト指向設計である。一貫性、使い易さ、パフォーマンスが
新しいランタイムAPIの主要な特徴である。WinRT API におけるあらゆるオブジェクトは、
リフレクションをサポートしているので、JavaScriptのような動的言語でさえ、
それらを効率良く使うことができる。これと一緒に、C++ベースのライブラリには珍しい 、
統一されたオブジェクトモデルが導入される。
0548デフォルトの名無しさん
垢版 |
2011/10/04(火) 18:38:17.13
HTA内にインラインフレームで、フラッシュ(.swf)のURLにするとエラーが出るね
<iframe src="●●●.swf" width="100" height="100"></iframe>

↓APPLICATIONを加えても無理
<iframe src="●●●.swf" width="100" height="100" APPLICATION="yes"></iframe>
これ出来た人、神!神!神!
0554デフォルトの名無しさん
垢版 |
2011/10/19(水) 20:22:01.94
エン素
0556デフォルトの名無しさん
垢版 |
2011/12/06(火) 17:50:32.92
PCで数式計算するhta作って、スマホにメールで送ったんだけど、画面表示はされるけどボタン押しても計算されない。
拡張子をhtmlとかに変えてもだめ。
分かる人教えてくださいm(__)m
0559デフォルトの名無しさん
垢版 |
2011/12/07(水) 00:39:57.00
>>558
なるほど、PCにはそれが標準ではいってるけど、スマホには入ってないから計算出来ないんですね
分かりました、ありがとう
0560デフォルトの名無しさん
垢版 |
2011/12/07(水) 15:08:05.43
コードが丸見えじゃなきゃ配布用にも使えるんだがなぁ
0567デフォルトの名無しさん
垢版 |
2011/12/26(月) 18:49:52.81
svgやcanvas使うには ↓ でいいの?
<meta http-equiv="X-UA-Compatible" content="IE=9" />

もっと正しい普通の書き方がある?
0568デフォルトの名無しさん
垢版 |
2012/01/23(月) 23:01:20.30
For Eachの中で一行ずつテキストボックスに文字列を追加していく処理がやりたいんですが、
テキストボックスの表示が更新されるのは処理が終わったあとになっちゃう。
これってどうしようもない?
0569デフォルトの名無しさん
垢版 |
2012/01/23(月) 23:14:35.21
>>568
For Each の中じゃ無理と思う
リアルタイム更新っぽいものを無理やりやるなら、タイマとか使うんじゃないかな
0570デフォルトの名無しさん
垢版 |
2012/01/23(月) 23:31:35.12
>>569
無理ですか。ありがとうございます

対応方法載ってるサイトとか御存知の方おられたらなら願いします。
0576デフォルトの名無しさん
垢版 |
2012/02/02(木) 20:44:15.66
書き捨てなら、便利でお手軽。
でも、ちょっとこだわると、ヤツ独特の挙動に悩まされる。
「アクセスが拒否されました」‥‥他人事みたいに言うんじゃねえよ。拒否してんのはおめぇだろ、このタコブラウザ( ゚д゚)、ペッ
てな調子^^
0578デフォルトの名無しさん
垢版 |
2012/02/07(火) 20:27:17.95
実体はセキュリティのゆるいIE
でも、任意のページを開くことを想定してるわけではないので、ジャンルとしてはブラウザにはならないと思う
0582デフォルトの名無しさん
垢版 |
2012/02/08(水) 13:08:40.80
HTAEditいいね。
バージョンアップして64bitと32bit同梱されたので便利。
ttp://www.htaedit.com/
0584デフォルトの名無しさん
垢版 |
2012/03/15(木) 01:29:13.40
>>454
>HTA(+JScript)で、ウィンドウを閉じる時に処理させる
>何か良い方法は有りますか?
>(まぁ「閉じますか?」って確認ダイアログ出したいだけ)

onbeforeunloadが発生しているとき、
event.returnValue = '閉じますか?';
とすると確認画面が出て、キャンセルの場合には遷移しない。
0585デフォルトの名無しさん
垢版 |
2012/03/15(木) 08:21:12.76
閉じますかの文字列は無視されて、
別のページに移ろうとしてますが、
ってなるんじゃなかったけ
0590デフォルトの名無しさん
垢版 |
2012/03/18(日) 17:00:19.97
>>589
HTAじゃできなそう
ドラッグ&ドロップしてもHTAファイル開けないし、起動してるHTA画面に外からドラッグ&ドロップしても、イベントとして検知してない
ちなみにwinXPです
0596デフォルトの名無しさん
垢版 |
2012/03/21(水) 17:48:59.61
>>589
ドロップを受け入れるActiveX
コントロールを作れば。
0600デフォルトの名無しさん
垢版 |
2012/03/25(日) 20:24:33.79
http://msdn.microsoft.com/en-us/library/windows/desktop/bb774053(v=vs.85).aspx
これで空のフォルダを表示
そこにdesktop.ini作って
[.ShellClassInfo]
DefaultDropEffect=4
フォルダを読み取り専用に変える
ドロップでイベントが拾えるかどうかは知らん
もし、なければタイマ監視
ショートカットができたらターゲットを得てショートカットを削除
0603デフォルトの名無しさん
垢版 |
2012/03/26(月) 00:06:10.03
>>589
ドラッグ&ドロップは昔このスレにBATファイルにして受ける方法が書かれていて自分はそれ使ってます。
HTAソースの先頭2行に↓を付けて拡張子を「.bat」に変えるっていう。
@START MSHTA.EXE "%~f0" %*
@GOTO :EOF
0604デフォルトの名無しさん
垢版 |
2012/03/26(月) 17:12:17.90
そのコントロールはドラッグドロップのイベント無いから、タイマー監視しかないね
0618デフォルトの名無しさん
垢版 |
2012/05/12(土) 14:43:03.12
createElementで動的に作成したActiveX Control(OCX)の特有のイベント(clickイベントなど)を扱うことはできないでしょうか。
0619デフォルトの名無しさん
垢版 |
2012/05/20(日) 06:10:19.02
7 64bit だとエラー出たらIE起動すんのね・・・
何故か途中で突然ieが起動してhtaをDLしようとしてどうしたと思ったらその箇所で正規表現ミスってた。やれやれ。
0622デフォルトの名無しさん
垢版 |
2012/09/18(火) 06:29:31.10
これ終了する時にexitcode返すにはどうしたらいいの?
close(1)ってやっても毎回0が返ってくる
0624デフォルトの名無しさん
垢版 |
2012/10/14(日) 16:03:43.64
HTAはかなりの初期の頃に
JavaScriptをデスクトップアプリの
言語に採用した技術だったんだよな。
時代を先取りしている。
0625デフォルトの名無しさん
垢版 |
2012/10/14(日) 18:57:28.89
JavaScriptをデスクトップアプリの
言語に採用した技術自体が、主流にくることはなかったんだから
先取りしてたねすげえ!って感覚はないな
0626デフォルトの名無しさん
垢版 |
2012/10/14(日) 21:25:07.96
時代を先取りしたものは、真っ先に淘汰される運命にある

余程上手く特許とかで固めて、他が参入しにくいように立ち回らない限りな
0627デフォルトの名無しさん
垢版 |
2012/10/17(水) 18:47:15.28
html5の普及で、また日の目を浴びるんじゃね?
jsonにmangodbにnode.jsと、データを右から左へ加工するにはjsが一番に手っ取り早いんだし
0629デフォルトの名無しさん
垢版 |
2012/11/25(日) 03:36:36.88
最近HTAを発見して、HTMLとJSでデスクトップアプリ作れることに感動したんだけど
今はメインストリームじゃないの?
今のメインストリームって何?
0631デフォルトの名無しさん
垢版 |
2012/11/25(日) 12:50:28.03
Windowsアプリケーションのメインストーリームという意味では
今どころか過去に渡ってもHTAがメインストリームだったことなど無いが
デフォルトのWindowsでGUIアプリ的な物が制作できるものの中でという意味なら
今でもHTAがメインストーリームだよ
0635デフォルトの名無しさん
垢版 |
2012/11/26(月) 00:49:40.46
>>633
WindowsAPI/.NETは大抵使えるから、可能不可能で言えば可能だよ
フォームデザイナ付のエディタとかもあるし
0636デフォルトの名無しさん
垢版 |
2012/11/28(水) 01:01:25.60
HTAで使う画像なんかを HTA自身に内包する方法は無いかな?
MHT みたいな感じでファイルを一本にしたいんだけど。
0643デフォルトの名無しさん
垢版 |
2012/12/02(日) 08:53:48.58
>>636
こんな方法もある
ttp://qiita.com/items/3134467210e0022f4a02

個人的には icon="hoge.ico" みたいなのを埋め込みたい
0644636
垢版 |
2012/12/04(火) 22:27:04.55
回答してもいながら放置してごめん。

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

テキストの記述だけで画像を表示する方法としては VML なんてのがあるみたいだけど、
これが割りと現実的な気がしてきたよ。
データ作るの面倒だけど。
0648デフォルトの名無しさん
垢版 |
2012/12/08(土) 09:37:43.99
VMLおもしろいよ。
不慣れなんでまだ試行錯誤だけど、hta の限られた環境しか考慮しなくていいならかなり有力だと思う。
1ファイルにこだわらなければあんまり関係無いかもしれないけど。
0653デフォルトの名無しさん
垢版 |
2012/12/09(日) 20:25:20.48
>>651
画像の変わりに使える
スクリプト内(htaファイル内)の記述だけで使えるから、画像ファイルを別途用意する必要が無い
0658デフォルトの名無しさん
垢版 |
2012/12/11(火) 06:21:25.57
「普通」が分からないのですが。
COMのリファレンスを見ても、書いてあるのはC++の例とかでさっぱりです
HTAはCOMをJavaScriptから扱うのだからスレ違いでもないと思いますが
0659デフォルトの名無しさん
垢版 |
2012/12/11(火) 11:52:17.32
>>658
HTA内の各要素に対するマウスのイベントは、普通のブラウザでJavaScriptを使う場合と同じ

COMオブジェクトに対するマウスイベントについては、そのCOMオブジェクトがマウスイベントをクライアント側に返すのかどうかと言う問題
HTA内でのマウスイベントをCOMオブジェクトに送信したいのであれば、そのCOMオブジェクトに外部からのイベントを受け取る機能があるかどうかの問題
0661デフォルトの名無しさん
垢版 |
2013/02/03(日) 04:45:15.16
hta で POPによるメール受信をしたい。
MSWinsock.Winsockを使って POP を実装したらうまく行ったんだけど、別の PC で実行すると
「正式にライセンスされていないため、コントロールを作成することはできません」
てなエラーが出る。
どうやら MSWinsock.Winsock は開発ライセンスが入った環境でしか使えないようで、
とどのつまり動作させたい PC には VisualStudio なんかを入れないといけないらしい。
しかしできるだけ余計なものをインストールしたくはなく、代替案を探してる次第です。
なにかいい案はありませんかね?
0663661
垢版 |
2013/02/03(日) 09:53:23.39
>>662
最初にそれ実験したんだけど、telnet は標準入力がリアルなキーボード、標準出力がコンソールにつながってないとすぐ終了してしまうらしい。
もし telnet を使うノウハウがあるなら教えてください。
0664661
垢版 |
2013/02/03(日) 11:54:53.64
試しに VisualStudio 2008 Express の VB を入れてみたら使えるようになった。
しかもアンインストールした後も使えてる。
この状態だけを使いまわせないものかな。
0666661
垢版 |
2013/02/06(水) 02:34:23.83
>>665
開発環境入れるくらいならそっちを入れた方がいいとは思う
つか、それが現実路線なんでしょうな
0669デフォルトの名無しさん
垢版 |
2013/03/16(土) 01:21:36.43
Win7でIE10にしたら、HTA:APPLICATION要素が効かなくなったよ。
外観系の設定は我慢できるんだがコマンドライン引数使えなくなったので困ってる。
0672デフォルトの名無しさん
垢版 |
2013/03/17(日) 14:03:18.01
>>669
<meta http-equiv="X-UA-Compatible" content="IE=9">で回避できる。
これIE10RPでバグレポしたんだけど再現不可能とか言われて直らなかった。
0674669
垢版 |
2013/03/18(月) 13:13:38.15
>>672
おぉ、できたできた。
thx

>>673
普通に使える人がいるということは環境依存で発生するバグなのかな?
0675デフォルトの名無しさん
垢版 |
2013/03/18(月) 15:49:14.63
>>672
Win8+IE10 だと X-UA-Compatible を設定して IE=10 にすると再現する。
なにも指定しないとドキュメントモードが7になっているので(document.documentMode で確認できる)、
おそらく再現確認した側では IE10 Strict 以外のモードになっている状態で確認していたんだと思われ。
0677676
垢版 |
2013/03/19(火) 21:40:45.43
>>672
なので実際再現不可能だったんだろ
なんか特殊な拡張入れてるとか?
0679デフォルトの名無しさん
垢版 |
2013/03/20(水) 21:35:23.87
X-UA-CompatibleがないとIE=5になるはず
今回問題になるのはIE=10とかIE=edgeにしてる場合だね
0681デフォルトの名無しさん
垢版 |
2013/05/05(日) 02:41:42.78
HTA から新しいウィンドウを立ち上げてインターネット上のページを開き、そのページにあるダウンロードボタンかリンクを
自動的にクリックしてダウンロードさせることって可能かな?
ファイルの保存ダイアログをコントロールできなさそうだけど、どんなもんだろう?
0682デフォルトの名無しさん
垢版 |
2013/05/05(日) 03:58:27.89
HTAもいいけど、もうそろそろ違うのを使ってみないかい?
node-webkit や tidesdk
これらはHTAと同じコンセプトを実装したもの。

HTAと同じくHTMLとJavaScriptで
デスクトップアプリを作れる。
0683デフォルトの名無しさん
垢版 |
2013/05/05(日) 04:22:11.23
>>681
OnClick() とかで動くデフォの動作ならダイヤログが出るけど、これは内部のスクリプトじゃ操縦できん。
ほかの操縦スクリプト使わないと。

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

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

アプリと組み合わせる方法として
クリップボードにURLが入ったら自動的に保存するようなアプリ(FDMとか)を設定し、
HTAではクリップボードに入れるだけにするとか。
これならHTAじゃなく素のIEでもできる。
ただ、URLをクリップボードに入れただけでダウンロードするのはうざいよね。
0684デフォルトの名無しさん
垢版 |
2013/05/05(日) 04:52:56.31
これ、ActiveX Script 対応だから HTAから呼べるんじゃないかな。

Lua
ttp://shizentai.jp/wordpress/?p=1418

動画で Lua 入門
ttp://dotinstall.com/lessons/basic_lua

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

特定のページを表示させて、リンクリストを取得するくらいならできるだろうし、
そのURLから該当ページのHTMLを直接ダウンロードするくらいなら WinHTTPとか、JQueryとか使ってできそうな気はするけど
0686681
垢版 |
2013/05/05(日) 16:34:47.93
いろいろとアドバイスありがとう
HTA を検討してるのはWindows標準で使えそうだからで、準じてMS純正のコンポーネントのインストールまでは許容できる感じです。
後今回のダウンロードボタンは Cookie を維持してないと働かない可能性があって、単純にHTTP通信をすればよいという訳ではないです。
HTTPヘッダを自由に作れるならページのCookieをスクリプトで集めてヘッダ偽装できそうなんで、最悪 MSWinsock で低レベル通信しようと思ってる。
それもHTTPSになったら手に負えないけど。

とはいえどうしても無理なら制約を緩められる可能性もあるんで、教えてもらった方法は実験してみるよ。
0689デフォルトの名無しさん
垢版 |
2013/05/16(木) 19:35:41.52
UTF8で記述しているHTAアプリから、
ActiveXObject("ScriptControl")
でRubyを呼び出して、ウェブの取得をしています。
サイトはUTF8で記述されているのですが、
RubyからJavaScriptに文字列が渡ってきた時点で、何故か勝手にSJISに変換されてしまいます。
SJISに変換されると、UTF8にしかない文字が壊れてしまうので困っています
この勝手な処理をなくすためにはどうすればいいのでしょうか?
0691デフォルトの名無しさん
垢版 |
2013/05/16(木) 23:12:12.52
時間のかかる処理をしていると、「このスクリプトの実行に時間がかかっています」というような警告が出て、
処理が止まってしまいます。
これを防ぐにはどうすればいいのでしょうか?
0692デフォルトの名無しさん
垢版 |
2013/05/17(金) 12:53:56.23
スクリプトエラー警告の閾値以下の時間でひとつのルーチンを終了する。
処理を分割してイベントハンドラから細かく呼び出すようにするとか、
連続するステップをsetTimeoutメソッドをチェインさせて呼び出すとか、
継続条件が決まってるならインターバルタイマーで呼び出すとか。
0694デフォルトの名無しさん
垢版 |
2013/05/17(金) 18:01:44.14
Connector/ODBC 5.1.12のWindows (x86, 64-bit)をインストールし、
ODBCデータソースアドミニストレーターから、DSNを登録し、接続テストも成功しましたが、
HTAからは接続しようとすると、
指定されたDSNには、ドライバーとアプリケーションのアーキテクチャの不一致が含まれています
とエラーが出て接続できませんでした
32ビット版のConnector/ODBCを入れ直したところ、接続できました
なぜ64bitWindowsなのに32bit版でないといけないのでしょうか?
0695デフォルトの名無しさん
垢版 |
2013/05/17(金) 18:46:21.73
>>694
HTA で使われているのは 32bit 版の方の mshtml.dll (%WINDIR%\SYSTEM32にある方)だから。
スタートメニューには 32 bit 版と 64 ビット版の Internet Explorer が別々にあるけど、
mshta.exe が使うのはこのうち 32 ビットの方の IE の IE コンポーネントになるわけ。
0696デフォルトの名無しさん
垢版 |
2013/05/17(金) 18:59:47.49
そういう事情ですか
MySQLに限らず32ビット版のドライバでないと使えないということですね
ありがとうございました
0704デフォルトの名無しさん
垢版 |
2013/10/20(日) 16:54:57.59
>コマンドライン引数使えなくなったので困ってる

いったんバッチファイルでコマンドライン引数を受けて
外部ファイルに保存しておく
そのバッチの中でhtaを起動する
htaは一時ファイルを読み取って処理を続ける

これで何とかww
htaだと複数の引数があったときに自分で対応する必要があるけど
バッチファイルならシステムがやってくれるから
こっちのが楽な場合もあるかも
07061/2
垢版 |
2013/12/20(金) 10:26:56.21
すみませんが、質問です。
ログインの必要なサイトからファイルをダウンロードする方法について
教えていただけないでしょうか?

いま試みているのは、
1. 手でIEを起動し、当該サイトにログインする。
2. 別途HTAを起動し、その内部で
var objShell = new ActiveXObject("Shell.Application");
objShell.windows();
を利用し、ログイン済みのIEのオブジェクト var ie を取得。
3. HTA内で
// var xhr = new XMLHttpRequest();
var xhr = new ActiveXObject("Msxml2.XMLHTTP");
xhr.open("GET", url, false);
...
xhr.send();
07072/2
垢版 |
2013/12/20(金) 10:29:30.67
ところが、IEのログイン情報を、XHttpRequestオブジェクトに渡す方法が
見つからず困っています。上記の 3. ... の行で
・xhr.setRequestHeader("Cookie", ie.document.cookie);
・xhr.withCredentials = true; // new XMLHttpRequest()を用いる。
などとしましたが、いずれもXMLHttpRequestのセキュリティ制約のため
ログイン情報が引き継がれません。
HTAなら動くかと思っていたのですが、そうは行きませんでした。

XMLHttpRequestと違ってIEのcookieをセットすることのできる
ActiveXObjectがあれば良いと思うのですが。
以上です。よろしければアドバイスをお願いいたします。
0708706
垢版 |
2013/12/20(金) 14:28:33.10
自己解決。
>>685さんのご紹介なさった WinHTTPが、そのものズバリでした。
WinHTTP は XMLHttp とほぼ同じで、セキュリティ制約だけが違うものの
ように見えます。

//実際に動作したコード
var xhr = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
xhr.open("GET", url, false);
xhr.setRequestHeader("Cookie", ie.document.cookie);
xhr.send();

あとは new ActiveXObject("Adodb.Stream"); を使ってファイル保存できました。
ここの過去のやりとりを見て解決できました。ありがとうございました。
0709デフォルトの名無しさん
垢版 |
2013/12/25(水) 13:21:58.97
質問です。

HTAに限らない話ですが、
new ActiveXObject("InternetExplorer.Application");
で取得した IEの User-Agent文字列は、どうやって取得したら良いでしょう?
オブジェクトのプロパティに見つかりませんでした。

Inconsistent Results using InternetExplorer.Application - KiXtart.org - official site
http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&amp;Number=206419
ググったら、UAを表示するページに遷移させて、DOMからUAを取得するという、
大変面倒なことをしている人がいました。
もうちょっと良い方法がありそうな気がします。
0711デフォルトの名無しさん
垢版 |
2013/12/26(木) 08:30:26.74
>>710
すみませんが、UA文字列を取得したい理由については、説明がしづらいです。

結局、ie.document.createElement(), appendChild()で、IEの表示中のページ
にscript要素などを動的に追加して、UAの取得をしました。

これも煩雑ですが、IEを「診断くん」などのページに遷移させて取得するより
はまだマシだと思います。
0712デフォルトの名無しさん
垢版 |
2013/12/26(木) 08:36:22.96
別の質問です。

HTAで呼び出したIEの、DocumentCompleteイベントを利用する方法についてです。

ブラウザのビジー状態を判定するための,より良い方法
http://d.hatena.ne.jp/language_and_engineering/20100410/p1

1. このやり方だと、IEのインスタンス化に、
WScript.CreateObject( "InternetExplorer.Application", "hoge_" )
が必要です。HTAでインスタンス化するにはどうしたら良いでしょう?

2. このやり方だと、イベントハンドラが固定です。ページ遷移をするごとに
別のイベントハンドラを動的に割り当てることはできないのでしょうか?
0715デフォルトの名無しさん
垢版 |
2013/12/26(木) 17:59:34.75
>1. このやり方だと、IEのインスタンス化に、
>WScript.CreateObject( "InternetExplorer.Application", "hoge_" )
>が必要です。HTAでインスタンス化するにはどうしたら良いでしょう?

htaでwscriptオブジェクト使う方法が、例のところにあったような。
0717デフォルトの名無しさん
垢版 |
2013/12/26(木) 19:02:34.67
>2. このやり方だと、イベントハンドラが固定です。ページ遷移をするごとに
>別のイベントハンドラを動的に割り当てることはできないのでしょうか?

代表で受け取って、
call hoge

ページ遷移のイベントで、
set hoge=getref("実際のハンドラ")
0718712
垢版 |
2013/12/27(金) 00:13:27.32
ご返事、遅くなりました。

>>713-714
すみません。「忍法帖」の書き込みエラーよけです。よく知らないですが。

>>715-716
ありがとうございます。見てみます。

>>717
ありがとうございます。
よろしかったら、JScriptでの書き方も教えていただけませんか?
0720デフォルトの名無しさん
垢版 |
2013/12/28(土) 00:40:28.09
>>719
ありがとうございました。

別件で忙しく、この件をまだ試せないでいます。
試したらまた改めてご返事させていただきます。
0724712
垢版 |
2014/01/10(金) 02:47:06.91
大変遅くなって申し訳ありません。
残念ながら、HTAでIEのイベントを取得できないでいます。

>>715-716 さんの方法で、HTAからWScriptオブジェクトを利用することができました。

また、>>719さんの記法はよく分からなかったのですが、WSHの場合、
hoge_DocumentComplete = function() { .... }
と記述することで、イベントハンドラを動的に変更できました。

しかし、それを HTAの<script>要素に記述しても、イベントハンドラが割り当てられ
ませんでした。

どうしたら良いか、アドバイスをいただけたらありがたいです。
0725712
垢版 |
2014/01/10(金) 15:06:30.31
質問を再定義すると「HTAで、スクリプト内で生成されたActiveXオブジェクトの
イベントを取得できるか」になるでしょう。>>618さんの質問と同じです。
こちらに回答がないので、不可能なのかもしれません。

関連する質問です。HTA内でIEを生成(new ActiveXObject)、終了(ie.quit())を
繰り返していると
「このシステムでは、これ以上のスレッドを作成できません。」
というエラーが発生してしまいます。
これを避けるにはどうしたら良いでしょう?
quitイベントを取得するまで待つのが良いかと考えています。
0726デフォルトの名無しさん
垢版 |
2014/01/10(金) 15:52:33.52
ieのeventは特殊で一般論は通用しない

new ActiveXObject以外の方法、wscript.shell runなどでieを起こせばいい

shell.application windowsでieを捕捉すればいい
0727712
垢版 |
2014/01/10(金) 17:16:24.95
>>726 ありがとうございます。WScript.ShellからIEの起動と、
Shell.Application windows によるIEのインスタンス取得はできました。
これのDocumentCompleteイベントを取得するにはどうしたら良いのでしょうか?
知識不足で申し訳ありません。

なお、IEのインスタンスの取得ですが、このスクリプトを動かす環境が多様で、
他にIEが起動している場合が多いし、起動直後のIEのホームページも一定では
ありません。起動したIEをどうやって見分けるかについても悩んでおります。
0728712
垢版 |
2014/01/11(土) 13:08:38.76
何度もすみません、HTA内で動的に生成したActiveXオブジェクトのイベントの
取得法を説明するページを、お教えいただけないでしょうか?

Scripting Clinic: イベントのスクリプティング
http://msdn.microsoft.com/ja-jp/library/ms974564.aspx
ここだと、
・ブラウザの要素のイベント
・<object>要素で指定したActiveXObject
のイベントの記述しかありませんでした。

WSHだとイベント取得はできるので、最悪、ロジックを全部WSHに書いて、HTAから
それをキックするしかないのかもしれません。
0730712
垢版 |
2014/01/11(土) 20:57:59.68
>>729
ご返事ありがとうございます。

結局、HTAでは、動的に生成したActiveXオブジェクトのイベントの
取得はできない、ということですか…。

>ieのeventは特殊で一般論は通用しない
これは「IEのActiveXObjectが特殊」という文意ではなくて、
IEはスクリプトホストとして特殊で、だからイベント操作には
HTAではなく、他のホスト(WSH, PowerShell, .NETなど)を
使ったほうが良い、という文意だったのでしょうか?

HTAでメインロジックをすでに書いてしまったので、正直頭を
抱えています。
>>348さんなどの、HTAをWSFに埋め込む方法も検討してみます。
0732712
垢版 |
2014/01/12(日) 10:07:12.67
WSF埋め込みのHTAを書いてみました。

HTAとWSHが一つのファイルにまとまるのは大変ありがたいのですが、
機能的には別ファイルにあるのと変わりがないようです。

変数や関数の共有はできないし、WSHからHTAにデータを渡すのは
HTA起動時に標準入出力を経由したり、外部ファイルをポーリングで監視する
などしかないようで、私のような初心者にはなかなか厳しいですね…。
0733デフォルトの名無しさん
垢版 |
2014/01/15(水) 02:39:42.98
IEが簡単に素人にしかも簡易なスクリプト程度で制御できちゃったら
今頃ウィルスやらなにやら大問題になってると思わないか?
とにかくローカルからはおいそれと手出しできないように
進化してきてるからある程度で諦めるのが吉
IEの操作はユーザーに任せるべきってMS自体が言ってんだし
しかも環境バラバラで特定できないんだろ?そんなん普通に難しいぞ
まずはそっちをどうにかしてもらった方が早い
0734712 忍法帖【Lv=2,xxxP】(1+0:5)
垢版 |
2014/01/16(木) 01:35:49.38
アドバイスありがとうございます。
>>732を書いたあと、規制等でここに書けないでおりました。

>>731
webbrowser control とは、普通の "InternetExplorer.Application" の
ことでしょうか?今はそれを使っています。visible = true にしないほうが
安定して動くようです。
0735712 忍法帖【Lv=2,xxxP】(2+0:5)
垢版 |
2014/01/16(木) 01:42:36.98
>>733
おっしゃるとおり、安定して稼働する環境の条件を見つけ出して、
それ以外はサポート対象外にさせてもらえないか、交渉する方向で
行こうと思います。

今までここに書いた以外にも、IEの不安定さを痛感することが
いくつも起こり、苦戦しております。

IEを細かくコントロールするには、C#で書くべきだったかもしれないし、
そもそもIEを千ページ以上にわたって自動制御する事自体、無理な課題
だったかもしれません。
0738デフォルトの名無しさん
垢版 |
2014/01/19(日) 05:23:06.35
まあ、やらないで無理っていうのはなかなか顧客には納得してもらえないだろうから
その為の期間だったと思えば・・・つかC#使えるのかよ迷わずそっちだろっていう
それ以上はリッチクライアントとか考慮するしか無いんじゃない
0740デフォルトの名無しさん
垢版 |
2014/05/20(火) 00:01:37.94ID:bwvL81ad
>>739
> 結論から言えば、対価を得られるような代物は作れない。

HTAで対価を得ようとか思う奴がいるのか?
0741デフォルトの名無しさん
垢版 |
2014/05/20(火) 20:14:59.88ID:qmBR4auP
リンクをユーザーの標準のブラウザで開かせるにはどうしたらいいのでしょうか
0745デフォルトの名無しさん
垢版 |
2014/05/21(水) 09:19:04.48ID:pNDMw+QG
>>740
> 詳しいことはkia HTA:APPLICATIONタグとかで。

とか書いておきつつ

> テキスト選択ができる
> マウスのドラッグでアプリケーション上のテキスト選択ができる。(選択範囲が反転する)
> ブラウザ上と同じ動きをするので、テキストだけではなく、ボタンとか画像とか全部反転
> 表示される。ひどい。

ってwww
0749デフォルトの名無しさん
垢版 |
2014/06/02(月) 00:12:50.77ID:E3BEJVo9
イケイケ時代ならいざ知らずMSの宣言は逆説
SilverlightでリッチUX!、チーン
PowerShellでUnixShell超え!、チーン
JScript改めJavaScriptでアプリ!←今ここ
0753デフォルトの名無しさん
垢版 |
2014/06/05(木) 08:22:13.99ID:JxeISGSi
>>751
実際の所リスナの追加やら何やらをページ側のスクリプト無しでタイミングも気にしないで
実行できるのは非常に便利。
・・・世の中にIE以外のブラウザが無けりゃ。
0755デフォルトの名無しさん
垢版 |
2014/06/16(月) 11:49:03.97ID:TgcVEHkU
>>754
このコード今のIEだと動かないし、互換モード指定して動かしたとしても「スクリプトがタブを閉じようとしてる」って
警告が出るんだけどほんとに何したいんだか。
普通のユーザーがIEで訪問したページにこれが仕込まれてても、なんかバグってるとしか思われないと思うんだが…。
0756デフォルトの名無しさん
垢版 |
2014/06/23(月) 00:40:27.56ID:1MZYUWya
firefoxとかClome板htaって出ないかな
0758デフォルトの名無しさん
垢版 |
2014/06/26(木) 21:22:15.25ID:56wR5ryD
とりあえずローカルファイルと階層が簡単に弄れればokなんだが
0760デフォルトの名無しさん
垢版 |
2014/07/05(土) 13:41:53.29ID:AlsL4J+L
>>759
いや、自己満足ローカルツールがHTML+Javascriptで簡単に作れる機能が
あればいいなーと思っただけ。
XULもFile APIも俺みたいな底辺には手軽でないし、記述方式も優しくないからな
0761デフォルトの名無しさん
垢版 |
2014/07/05(土) 20:45:49.65ID:EL6gVfGT
html5のFile APIで今後どうなるかってところだろうな
でも*nix系やmacではそういう需要ない気がする
0762デフォルトの名無しさん
垢版 |
2014/07/06(日) 15:17:01.13ID:4j5XaxT1
Windowsストアアプリが窓化できるようになって
簡単にサイドローディングできるようになればいいんだよ
0764デフォルトの名無しさん
垢版 |
2014/10/04(土) 08:01:51.43ID:r3/HxU2u
WInsows10でストアアプリが全画面でなくデスクトップに表示にできるようになりましたってアピールが苦笑せざるをえない

WinJSとSegoeSymbolのアプリアイコンをWin7とIE9のHTAで使えるようにしろ
0767デフォルトの名無しさん
垢版 |
2014/10/29(水) 23:05:42.85ID:+FmHsxMh
ユーザーにVSをインストールしてもらって自分でビルドしてもらえばいいんだよw
0769デフォルトの名無しさん
垢版 |
2014/11/16(日) 09:06:27.71ID:yzwLS/JR
>>768
window.open メソッドのバグか。
リンク先に回避方法も書かれてるけど、そもそもhtaでiframeってそんなに使うかな?
0770デフォルトの名無しさん
垢版 |
2014/11/17(月) 23:55:24.90ID:MIxGkQpt
Win10 Build9879のIEの新機能をHTAで使う方法が分からない…
まだ試験的実装だから仕方ないか
0771デフォルトの名無しさん
垢版 |
2014/12/06(土) 01:29:26.86ID:zfdgj8Pu
以下のようなツールを過去に作ったって人いたら下さい!

・Dドライブ内をcmdのdir /s や dir /s /bで検索する
・条件は単一でいいですし and や or で複数
・結果の文字列はハイパーリンク
・dir /s /b の場合はフォルダ毎に開閉できるHTMLタグ
・ウィンドウサイズの変更に、HTA上のオブジェクトの位置がバランスよく追従

ないですかね?
0772デフォルトの名無しさん
垢版 |
2014/12/06(土) 01:42:21.35ID:zfdgj8Pu
ハイパーリンクじゃなくて、ラジオで選択してフォルダを開く、またはファイルを開くボタンでもいいです!
0776デフォルトの名無しさん
垢版 |
2014/12/06(土) 22:08:12.90ID:kbxsIH5l
>>775
EXE化出来るんだから標準搭載がどうとか関係無いだろw
0779デフォルトの名無しさん
垢版 |
2014/12/06(土) 22:57:02.28ID:zfdgj8Pu
作った人いないのですか?しょぼん
0781デフォルトの名無しさん
垢版 |
2014/12/08(月) 22:41:56.36ID:bVi9rgke
それはつまり、dirじゃないけど似たのは作ったということです?下さい!
dirが最速だと思ってるだけで他のでも全然まったくもって下さい!
もしかしたら日付や時刻まで条件に指定できたりしますか?スゴい!
0784デフォルトの名無しさん
垢版 |
2014/12/22(月) 08:25:25.06ID:7LUwf6eu
HTA では VBScript より Jscript の方がけた違いに速いってさ

VBScriptについて必死に話し合うスレ [転載禁止](c)2ch.net
ttp://peace.2ch.net/test/read.cgi/tech/1416826139/178
> ### WScript/CScript
> VBScript 14秒
> JScript 25秒   ←遅すぎ
>
> ### HTA(mshta)
> VBScript 14秒
> JScript 0.9秒   ←速すぎw
>
> ### Google Chrome
> JavaScript 0.3秒
0785デフォルトの名無しさん
垢版 |
2014/12/22(月) 08:48:03.57ID:8L7faHaX
>>784
それ、ベンチマークのやり方が不適切なので参考程度で見て
JavaScriptの最適化が進んでいて速いのは確かなんだが
0786デフォルトの名無しさん
垢版 |
2014/12/22(月) 21:10:21.29ID:MSM2wBGo
>>784
空ループの時間を計るとか、何の意味もないし参考にならないな。
コード書いた人は脳味噌が80年代のBASICで止まってるんじゃなかろうか。
0790デフォルトの名無しさん
垢版 |
2015/01/16(金) 22:42:25.86ID:i0+CMkGh
http://blogs.msdn.com/b/osamum/archive/2015/01/06/internet-explorer-6.aspx

2013 年、CSS Nite さんとご一緒させていただき、セミナーで地方をまわった際に、セミナーのアンケートに
「マイクロソフト社員は IE 6 で Web の進化を停滞させてことを反省してほしい」というコメントをいただきました。

たしかに、気持ちはわからないでもありません。

Internet Explorer 6 の時代にそぐわなくなった使用と、Web 標準に準拠しないコンテンツの解釈、
それでいて、なかなか減ることのないシェアは、Web 制作の工数をいたずらに増やし、実装の難易度を上げ、
場合によっては他の Web ブラウザーではあたりまえの機能の搭載を断念せざるを得なくなるといったこともあったことでしょう。
昨今の状況だけを見れば「IE6 が Web の進化を遅らせた」と言われても仕方がないのかもしれません。

しかし、本当にそれだけでしょうか?

Internet Explorer 6 は Web の進化を停滞させるだけで、
Web の進化に寄与した部分はまったくなかったのでしょうか?
0793デフォルトの名無しさん
垢版 |
2015/04/22(水) 21:36:08.05ID:GX9YaxbE
>HTAとvbscriptで作られたアドレス帳的なもの使ってるんですが、 ブラウザがSpartanになったら使えなくなるの?

3年(企業ユーザは+5年)の間に作りなおそう
0794デフォルトの名無しさん
垢版 |
2015/05/12(火) 23:16:21.75ID:Z/VY+NQv
ElectronでGyazoっぽいUIを実現する
http://qiita.com/uiureo/items/0353e37bcffe94731c6b

>たとえばこのUIをWindowsで実装しようとすると、千行近いコードを
>Cか何かで書かなければならずその苦痛は拷問にも等しい。

>PCアプリ開発者はWeb技術を見くびらないほうがいい、あなたの仕事は今にも失われつつある。
0795デフォルトの名無しさん
垢版 |
2015/05/21(木) 17:54:04.83ID:RawVOEwv
http://www.itmedia.co.jp/pcuser/articles/1505/20/news111.html

まずは「Project Westminster」に注目しよう。
これを簡単に言うならば、HTML+CSS+JavaScriptで記述されたWebアプリケーションを
そっくりそのままWindowsのアプリストア(Windowsストア)で公開可能なアプリ形式に変換する技術だ。
ここで作られるアプリは「Hosted Web App」などと呼ばれることもある。

本来は、一般的なWebブラウザであればプラットフォームを選ばずに実行可能であり、
Webサイト上にアップロードするだけで公開可能なWebアプリケーションだが、
それをなぜわざわざアプリストアに登録させようというのか?

理由は大きく2つあり、1つはハードウェア特有の機能(センサーなど)や
OS固有の機能(Cortanaやライブタイルなど)が利用可能になること、
もう1つはストアに登録することによってユーザーが発見しやすくなったり、
あるいはインストールやアプリ内課金(In-App Purchase)により、
リテンション率の向上やマネタイズの可能性が上がる点にある。

ストアアプリとして実行はされるものの、
Project Westminsterで用意されるのはアプリとしての“ひな形”であり、実際のコードの実行は
Windows 10に内蔵されたWebレンダリングエンジン「EdgeHTML(.dll)」に委ねられている。
0797デフォルトの名無しさん
垢版 |
2015/11/17(火) 23:09:43.62ID:Ku6VE81r
取りあえず、HTAは32bitしかサポートされないから...プロバイダにJetとか普通に使えるんだよな...
0798デフォルトの名無しさん
垢版 |
2016/03/29(火) 09:55:31.14ID:/c8bAcK4
サッカーブッシュ日本代表日程ぷあたん(しゅっちょうまいくろ教育長交代)春文執行40代売上差額シュガーチョコ
https://www.youtube.com/watch?v=NDq1QoJY0nY宇ドナルドアナリストパワーストーンコーチングとしまえん
サッカーブッシュ日本代表日程古本屋よしたけしゅっちょうちょこしゅがー
ディーラー税務署天才開発者死亡詰みヨミドクターマイクロサービス不足
サッカーブッシュ日本代表日程ぷあたんシフト光金さかい強制バイト人権侵害問題
春分資源執行ニューヨーク低原価ぼったステーキソルトレイク福岡横浜新橋奴隷課金パチシフト強制バイト問題新潟米センター生残
コスメ24チャリティー隠れ40代生活保護プレイボーイバイトレードいたりあん接待問題
マスコミKARDローンケーオーサービス不足婚活パーティー寄付金執行原発ビジネス
FBIチャイニーズタイホテル売上事務所ガチャ決算ガチャキャンペーン(販売報道陣過激派組織向携帯最新情報提供終了
校長発言細心注意ノートン産廃エラー(著作権クレーム中国反応融資高額教育費)(中国捕鯨団体40代社員サッカーコメント
高額入学金ヤフウ新橋大学ヤフウ新橋理事長FX経費 おじや50代資産ガリバズフィード40代エリート
0799デフォルトの名無しさん
垢版 |
2016/03/29(火) 11:41:29.39ID:aO63WqVq
>>776
開発業務でもない仕事で開発環境がなく、
情報セキュリティの観点から、フリーソフトをインストールできない
状況で、ちょっとしたツールを作成する場合にWindows標準搭載が
望まれる
0800デフォルトの名無しさん
垢版 |
2016/04/26(火) 21:13:20.22ID:Fyj1ZicP
htaもpowershellも管理者権限で設定変更しないとダブルクリックで実行できない
いまどきなら関連付けを有効にしてないケースもあるはず
よっていまどきは標準搭載といっても何もせずに動くわけではない
0801デフォルトの名無しさん
垢版 |
2016/04/27(水) 10:00:55.84ID:TeiQuvgt
>>800
htaにロジックいれて管理者権限で起動できるようにしたよ。
デフォでhta紐付けがないのは2012svrだけかな。
0803デフォルトの名無しさん
垢版 |
2016/05/16(月) 09:03:06.77ID:Tg6+c8K9
>>621
>bashが動くターミナルがコマンドプロンプトだから

コマンドプロンプト(cmd.exe)じゃなくてコンソールウインドウホスト(conhost.exe)だ無知が
0804803
垢版 |
2016/05/17(火) 09:31:50.91ID:5LUQsvwI
誤爆しました
ごめんなさい
0805デフォルトの名無しさん
垢版 |
2016/05/21(土) 08:12:25.93ID:tuIOq260
どなたか、
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20060927/249163/
(htaで)クリップボード・データからURLとメールアドレスを抽出
のソースをお持ちでないですか?
記事からソースは削除されてます。

キモの部分は説明してありますが、
コピペ改編プログラマ(私)には難しいです。
0807805
垢版 |
2016/05/21(土) 22:41:51.45ID:d5IGXUbM
やっと書けました。
ありがとうございます。
web.archive.orgは調べたのですが
探し方が悪かったようで。
※お尻をFD=1 とすることで
もう1つのファイルも見れました。
0810デフォルトの名無しさん
垢版 |
2017/11/03(金) 09:30:20.38ID:9CXEo34m
オワコン?
0812デフォルトの名無しさん
垢版 |
2017/11/24(金) 22:24:39.55ID:lrxXbvXt
WinXPで使ってたのをWin10で使ってみたのだがどうもIEを自動操縦させようとすると
動かしてるうちに実行権限あたり?が悪さするのかIEとの接続が切れて
それ以上操作できなくなっちまうな。
フォームのボタンにclick()発行するとまず間違いなく切れちまう。
何とかならんものか。
0814812
垢版 |
2017/11/28(火) 19:06:11.76ID:dlJjMbT5
調べてみたらIEのオブジェクトが一つの時は問題ないが
下みたいに大量に作るとclickとかで画面遷移させた後に無効になるようだった
さてどうしたもんか

var ie1 = new ActiveXObject("InternetExplorer.Application");
var ie2 = new ActiveXObject("InternetExplorer.Application");
var ie3 = new ActiveXObject("InternetExplorer.Application");
・・・
0816デフォルトの名無しさん
垢版 |
2017/11/29(水) 15:15:35.16ID:NsEjraek
>>815
最初はその辺が原因だと思ってましたがそれは関係ないですね。
と言うかそもそも保護モードがオフだと全くと言って良いほど動かないですから。
0817デフォルトの名無しさん
垢版 |
2017/11/29(水) 17:38:13.58ID:T3MArjm6
>>816
ローカルイントラネットも保護モードONかどうかってことだろ

制御できなくなる状況が分かるなら解決の仕方はありそう
中途半端な情報をグダグダ書いているだけでは解決しないぞ、無能くん


「誰か助けろ」みたいな態度  ←大抵はコミュ障
0818デフォルトの名無しさん
垢版 |
2017/12/04(月) 00:12:35.75ID:NDVSw/qp
あ、>>814の段階で自己解決してたので見てなかったスマンです。
なので助けてくれってつもりではなかったのですが勘違いさせてたのなら重ねてスマン。
保護モードに関してはググって最初に出てきた答えだったので
勿論イントラネットも含め検証した結果関係ないと結論出しました。
解決方法に関してはどうもIEのメモリ管理のバグっぽいので
大量にオブジェクトを作らないという方法で回避しました。
なお情報の小出しと怒られそうですが、XPでもオブジェクトを作る量を思いっきり増やした所
同じ症状が出ましたのでWin10での問題じゃないと確認できました。
0820デフォルトの名無しさん
垢版 |
2018/05/23(水) 21:08:44.76ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

ELWCS
0822デフォルトの名無しさん
垢版 |
2018/07/04(水) 22:27:58.30ID:gFgZc5FG
CG1
0825デフォルトの名無しさん
垢版 |
2019/01/18(金) 01:24:49.60ID:Z5dNQJrg
簡単なGUI付きスクリプトならやっぱりHTAだよなあ
powershellには代替機能ない
XBAPを後継しにしてほしかった
0830デフォルトの名無しさん
垢版 |
2019/06/28(金) 14:09:29.33ID:wA1nQeQO
AutoHotkeyだろ
癖があるけど、大抵のことは可能

HTA側でAutoHotkeyのExitApp引数を受け取れるので
サブルーチンの様にも使える
0831デフォルトの名無しさん
垢版 |
2019/06/28(金) 14:55:29.60ID:2bLDyTWm
しゃぶろうちんちん
0832デフォルトの名無しさん
垢版 |
2019/06/28(金) 17:55:03.61ID:bFcXoO0M
>>830
癖は強そうだねぇ
ActiveXもなんとかなりそうか...
0837デフォルトの名無しさん
垢版 |
2019/07/06(土) 14:09:51.69ID:WfFz1GWJ
自分から話題を振るほどの物は無いけど
話題を振られたらそれに乗ることは大いにあるので
書きたいことがある人はスレ立てればいい
0839デフォルトの名無しさん
垢版 |
2019/07/08(月) 15:32:02.20ID:ZVrMjsH1
そういや、Windows Script Componentってのもあったな...
0841デフォルトの名無しさん
垢版 |
2019/07/09(火) 14:36:05.34ID:EJhf+0qY
>>840
そのスレ見てたら、VBScriptでクラスの継承がしたいから、ソースをコピーして云々とか書いてる人が居るんだが...
VBScriptは、クラスの継承を否定した言語デザインなんだから、親クラスを継承するんじゃなく、親クラスのオブジェクトを所有する形でプログラムすればいいのになと思う

継承の使える言語に慣れ親しんでると、なんでも継承したくなるって気持ちも分からんではないが...
0845デフォルトの名無しさん
垢版 |
2020/06/09(火) 01:04:33.60ID:4DWGZxBT
HTML5のcanvasやVGAやWebストレージ
JavaScriptのclassは使えたりしますか?
0846デフォルトの名無しさん
垢版 |
2020/06/22(月) 22:22:56.15ID:w8IRA68f
>841
遅レスだがその通り。
委譲だけが解であって、継承が必要な規模では使っちゃ駄目なのよね…。

>>845
自分で試せバーカ。
十中八九使えないことを予言いておく。
HTA のターゲットは HTML5 じゃねーんだよ。
0847デフォルトの名無しさん
垢版 |
2021/07/29(木) 06:39:35.73ID:KFvXMzsi
標準windows10環境でデバッグやりやすい環境ない?
メモ帳たdosコマンドで行を調べるの辛い

会社の端末だからソフト入れられないの
0851デフォルトの名無しさん
垢版 |
2023/01/14(土) 22:45:31.87ID:ErYz5kaO
>>218
あなたの言っている問題と違うかもしれないけど

Set objHttp = CreateObject("MSXML2.XMLHTTP.6.0")

とすると少数のユーザーからのエラー報告が無くなった
0852デフォルトの名無しさん
垢版 |
2023/01/14(土) 23:38:08.55ID:uTqnsWWg
>>851
それだとWinInetと同じでIEの設定に左右されることになる
WinHttp.WinHttpRequest.5.1 又は
Msxml2.ServerXMLHTTP.6.0
だとWinHTTPが使われるので推奨
0853デフォルトの名無しさん
垢版 |
2023/01/14(土) 23:40:20.92ID:uTqnsWWg
>>851
あとRefererの指定が有効にならないとかいろいろある昔の奴なので
ただ互換性だけが優れているとも言える
レスを投稿する


ニューススポーツなんでも実況