HTAをもっと流行らせる計画 at TECH
[2ch|▼Menu]
[前50を表示]
350:デフォルトの名無しさん
06/12/16 01:15:59
できるよ

351:デフォルトの名無しさん
06/12/19 23:38:41
ありがとう。できました。

こういうのがうまくいかないのはなぜなんでしょう?

<HTML id=maindoc onkeydown=fOnkeydown>
<BODY>
<SCRIPT>
//maindoc.onkeydown=fOnkeydown;
function fOnkeydown(){
    if (window.event.keyCode == 0x0D){
        alert("enter");
    }
}
</SCRIPT>
</BODY>
</HTML>

「//」を取ると動きますが・・・

352:デフォルトの名無しさん
06/12/20 11:54:35
おぉ、HTAのスレがあったんですね。過疎ってますけど(ノ∀`)アチャー

自分の場合は、
番組表、天気予報、ニュースなどを取得する、
Samurizeのスクリプト(VBS)を使って、
出力結果をHTML+CSSで整形、単体で起動できるようにしてます。

353:デフォルトの名無しさん
06/12/20 12:06:11
ありきたりな使い方だな
俺もありきたりな使い方しかしてないけど

354:351
06/12/21 00:39:13
なんとなくわかりました。どうも。

355:デフォルトの名無しさん
06/12/22 15:42:17
>>198 のよりも手軽に使えるかも
DHTML Suite for applications
URLリンク(www.dhtmlgoodies.com)
注)ライセンス:LGPL  …なのが玉に瑕...か

356:デフォルトの名無しさん
06/12/23 15:50:48
起動時にウインドウの位置と大きさを指定したいのですが、
マウスボタンを下げた状態でresizeToした場合にエラーが出るので
念のためマウス状態を取得して場合分けしてみたところ、fireEventで
イベントを呼び出したためかevent.buttonがうまく機能してくれません。
onloadイベントを使うと画面表示後にリサイズして見栄えが悪いので
出来ればfireEventを使いたいのですが、
この場合たまに起こる程度のエラーは諦めるしかないのでしょうね。

<html><head><script language="javascript">
document.all.tags("html")(0).onclick = function (){
if (1 & event.button) return true;
resizeTo(300, 300);
moveTo(event.screenX -150, event.screenY -150);
document.all.tags("html")(0).onclick = null;
return false;
}
while (document.all.tags("html")(0).fireEvent("onclick"));
</script><hta:application></head></html>

357:デフォルトの名無しさん
06/12/23 16:03:05
エラー拾ってリトライするか、
エラー無視してonloadで念のためもう一度やる、とかは?

358:sage
06/12/23 17:57:10
>>356
例外処理という方法があったのですね。
アドバイスありがとうございます、
おかげで期待通りの動作になりました。

359:デフォルトの名無しさん
06/12/26 14:37:26
>>355 ライセンス:LGPL ねぇ…
Yahoo UI Libraryが出てるから魅力感じないス。
phpspotでも紹介してたスね。こっちのほうが速いけど。

// 何気にこのスレって面白い情報集まるのね >>39 >>85 とか早い時期から注目してるし。

360:デフォルトの名無しさん
06/12/27 11:07:58
HTMLと同じように使えるので気に入ってます。
ただ,HTAではcookieは使えないようですね?
以前のデータをcookieのように保存するよい方法
がHTAにあれば,教えてください。

361:デフォルトの名無しさん
06/12/27 11:28:30
バイナリに保存しちゃえばええんちゃう?

function readBinary(file){
var adTypeBinary = 1;
var stream = new ActiveXObject("ADODB.Stream");
stream.type = adTypeBinary;
stream.open();
stream.loadFromFile(file);
stream.position = 0;
var bin = stream.read();
stream.close();
var tmpElm = new ActiveXObject("Microsoft.XMLDOM").createElement("tmp");
tmpElm.dataType = "bin.hex";
tmpElm.nodeTypedValue = bin;
return tmpElm.text;
}

function writeBinary(file,hexBinStr){
var adTypeBinary = 1;
var adSaveCreateNotExist = 1;
var adSaveCreateOverWrite = 2;
var tmpElm = new ActiveXObject("Microsoft.XMLDOM").createElement("tmp");
tmpElm.dataType = "bin.hex";
tmpElm.text = hexBinStr;
var bin = tmpElm.nodeTypedValue;
var Stream = new ActiveXObject("Adodb.Stream");
Stream.Type = adTypeBinary;
Stream.Open();
Stream.Write(bin);
Stream.Savetofile(file, adSaveCreateOverWrite);
}

362:デフォルトの名無しさん
06/12/27 14:49:50
>361
詳しいコードまで作成していただき,感謝です。これを改良して使わさせて
いただきます。

ところで,自分で教えていただいた
new ActiveXObject("ADODB.Stream");
をネットで検索すると,Ajaxの解説ページ,JavaScript Libraryのページ
などにありました。HTAに関連する他のnew ActiveXObject("...")の基本
的な機能を勉強するに,おすすめのサイトはございますか?

363:デフォルトの名無しさん
06/12/27 16:24:47
>>362
ActiveXObjectはHTA用とか関係ないから。とりあえずMSDNにはMSが作ってる
ADODB.Stream、Microsoft.XMLHTTP、MSXML2.DOMDocumentや
WSH付属のWScript.XXXXX、Scripting.FileSystemObject、Scripting.Dictionaryなどの
解説があるし、MS製以外なら制作者のHPや付属ドキュメントみれば良い。

364:デフォルトの名無しさん
06/12/27 19:25:05
>>360
cookie使えたような気がしたけど、俺の記憶違いかな

HTAらしさを醸し出すならやっぱし
behavior:url(#default#userData)

365:デフォルトの名無しさん
06/12/29 21:08:44
HTAならテキストファイルの読み書きが出来るからiniでもxmlでも好きなようにするがよろしい。

366:デフォルトの名無しさん
07/01/22 07:00:27
HTAで2ちゃんねるブラウザってありそうなんんだけど探したら無かった・・・

367:デフォルトの名無しさん
07/01/22 07:10:44
×探したら無かった・・・
○検索スキルの低さ故に見つけられなかった

でしょ。ちゃんと存在してるんだから。

368:デフォルトの名無しさん
07/01/25 07:47:05
HTA 2ちゃんねるブラウザ
で探したら無かった。


369:デフォルトの名無しさん
07/01/26 02:39:30
>>368
俺はあるかどうか知らんけど、HTAで出来てることを強調していないブラウザはその方法じゃHitしないかもね

370:デフォルトの名無しさん
07/01/27 21:23:42
HTAを起動した時に押されていたキーを取得することって出来ますか?

371:デフォルトの名無しさん
07/01/27 22:38:47
HTAの窓をサイズ固定&常に最前面表示って可能でしょうか?
どちらか片方だけでもいいので方法があれば教えてください。

372:デフォルトの名無しさん
07/01/27 23:01:03
BORDER=NONE

373:デフォルトの名無しさん
07/01/27 23:27:40
>>370
シフトキー or 文字キー ?


374:デフォルトの名無しさん
07/01/27 23:53:33
>>373
どちらでも。
何でもよいからHTAを起動した時にキーが押されていたらと言う処理がしたいのです。

375:デフォルトの名無しさん
07/01/28 14:40:26
>>370
event.shiftKey
event.keyCode

376:デフォルトの名無しさん
07/01/28 23:27:35
>>375
keycodeの方はうまく動かなかったのでshiftの方も動かないかと思ったら
onloadに組み込んでも動くみたいですね。どうもです。

377:デフォルトの名無しさん
07/02/17 11:29:58
これをスタートアップに登録しとくとPCが挨拶してくれるという
しょうもないスクリプト

<html>
<head>
<meta http-equiv="Content-Type" content="text/html"; charset="Shift_JIS">
<title>G41</title>
<HTA:APPLICATION border="dialog" SCROLL="no">
<style type="text/css">
</style>
<Script language="VBS">
Call Window.ResizeTo(300,100)
Sub wclose()
window.close()
End Sub
</Script>
</head>
<body>
おはようございます、ご主人様!
<input type="button" onClick="wclose()" value="うむ">
</body>
</html>

378:デフォルトの名無しさん
07/02/17 14:29:26
>>377
萌えが足らなくね?

<script>
var spkr = new ActiveXObject("SAPI.SpVoice");
spkr.Speak("o ha yo, go zai math, Go shou zine samar.");
window.close();
</script>


379:デフォルトの名無しさん
07/02/17 17:04:09
PM5:00を回りましたね。


<html><head><script>
function speach(msg) {
var sam = new ActiveXObject("SAPI.SpVoice");
sam.Speak(msg);
}
</script><head>
<body onload="speach(fm.msg.value)">
<form id="fm" onsubmit="speach(this.msg.value); return false;">
<textarea id="msg" cols=80 rows=20>
o ca ery na sai ma say, Go shou zine samar?
o show ku g ni nasay masu car?
o flow ni nasay masu car?
so, re, tow, mo oh?
</textarea>
<input type="submit" value="おk">
</form></body></html>

380:デフォルトの名無しさん
07/02/17 17:08:23
>>379はちゃんと動くけど>>378
「型が一致しません」とか出て動かない
どこがおかしいんだろ



381:デフォルトの名無しさん
07/02/17 17:14:23
めちゃくちゃ野太い声で挨拶されたw

382:デフォルトの名無しさん
07/02/18 00:55:07
>>380
環境依存のActiveXを使ってるからだよ。
初心者はよくこういうことを注意書きも無しにやらかす。
まぁうちでは動くけどな。

383:デフォルトの名無しさん
07/02/18 12:37:46
>>382
379が動いて378が動かない環境依存のActiveXってどんなのだよ!?

384:デフォルトの名無しさん
07/02/18 12:52:45
どうしたの?

385:デフォルトの名無しさん
07/02/18 14:31:54
>>382
>>377のScriptの部分を>>378のと入れ替えて
bodyの中身を削っておみ? 動く筈。

386:385
07/02/18 15:41:56
ごめ。
安価ミスった 385での382へのアンカは >>380ね。スマソ
>>382 へは>>383と同意見。

387:デフォルトの名無しさん
07/02/19 20:45:05
>>386
動かない。「ステートメントの末尾が不正です」って出る。

388:デフォルトの名無しさん
07/02/20 00:31:29
も〜
>>378 は JScript だ。VBScript に直すと

<script language="VBS">
Set spkr = CreateObject("SAPI.SpVoice")
spkr.Speak "o ha yo, go zai math, Go shou zine samar."
window.close
</script>


389:387
07/02/20 05:31:59
>>388
動いた!

390:デフォルトの名無しさん
07/02/20 12:03:16
>>389
<Script language="VBS">を残してたのかw
378のをまんま置き換えれば動いたろうに。
てか今度からはエラーメッセージ追いかけれw

閑話休題
コードジンに 『MS Agentを使った...』って記事が出てたね。
萌えを追求するならエージェント自分で作っ(ry

391:デフォルトの名無しさん
07/02/20 21:52:50
質問です。
とあるhtaファイルを作成・実行し、それをwindow.close()で閉じたのですが、
閉じた後もmshta.exeがプロセスに残ってしまいます。
原因としては何が考えられるのでしょうか?
そのhtaファイルを実行する前は、mshta.exeはプロセスにはありませんでした。
環境はwindowsXP、mshta.exeのバージョンは6.0.2900.2180です。

392:デフォルトの名無しさん
07/02/20 21:58:06
まずは「とあるhtaファイル」と「とないhtaファイル」の
違いを探して報告してください。

393:デフォルトの名無しさん
07/02/20 22:09:25
とりあえずソースを部分的に伏せたりせずにここに貼るかどっかにうpするかだな。
話はそれからだ。情報貰いたいけど情報出したくはないとか我が侭いうならさようなら。

394:デフォルトの名無しさん
07/02/20 23:24:50
if ... then
window.close()
end if
nanika
みたいにcloseの後で処理してない?

395:391
07/02/21 00:17:48
>>394
なるほど、そういうことをすると残っちゃうんですね。
>>392,393
htaの仕様ではないみたいなので、とあるの悪いところを探してみます。

ありがとうございます。

396:デフォルトの名無しさん
07/02/21 00:24:47
そんなんで残るの?

397:デフォルトの名無しさん
07/02/21 04:55:02
HTAは完全に処理を分岐させないとそういうことがままある。

398:391
07/02/21 12:59:29
原因は埋め込まれていた「読み込みに成功していないJavaApplet」でした。
Appletをとりあえず削除した状態で動かしてみると正常に終了できました。

399:デフォルトの名無しさん
07/02/23 18:17:22
IE7に入れ替えたら、XPで"htaファイルって何で実行したら良いんですか?"
と聞いてくるようになった。設定が間違えているのかな?

400:デフォルトの名無しさん
07/02/23 18:34:33
IE7入れてるけどそんなの聞いてこないよ。

401:デフォルトの名無しさん
07/02/23 22:10:07
>>399
IE7入れてないんで判らんけど
フォルダオプション確認してみれば?
HTA→mshta.exe

402:デフォルトの名無しさん
07/02/23 22:18:32
>>399
フォルダオプションで関連付けを直すのは適切でないので、まず
↓をメモ帳に貼り付けて hta.reg という名前を付けて保存して,hta.regを実行してみては
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.hta]
@="htafile"
"Content Type"="application/hta"

403:デフォルトの名無しさん
07/02/23 22:32:57
HKEY_CLASSES_ROOT\htafile は放置ですかそうですかw

404:デフォルトの名無しさん
07/02/23 22:34:53
HKEY_CLASSES_ROOT\htafile は残ってることが前提、ってことは
この手の関連付け問題を何度か扱っていればわかる。

405:デフォルトの名無しさん
07/02/23 22:44:00
何度か経験してれば、その前提が当てにならないことに気付くと思うんだが
運良く(運悪く?)そういうのに当たったこと無いのかな?

406:デフォルトの名無しさん
07/02/23 22:52:24
「前提」だから当てにならないこともあるだろ

407:デフォルトの名無しさん
07/02/24 01:14:00
>>401
フォルダーオプション見てみましたが、hta拡張子自体がなくなってました。

408:デフォルトの名無しさん
07/02/24 01:15:25
>>404
m9(^Д^)プギャー

409:デフォルトの名無しさん
07/02/24 02:46:47

mshta.exe /register

410:こんな朝早くからなにやってんだろ、俺
07/02/24 07:40:41
<html><head><script>
function AX(s){return new ActiveXObject(s);}
function exec(dat,arg){var fp,xd,bs,fs=AX("Scripting.FileSystemObject");
fp=fs.GetSpecialFolder(2)+"\\htaEx.exe";
xd=AX("Microsoft.XMLDOM").createElement("x"); xd.dataType="bin.base64";
xd.text=dat.replace(/\s/g,"").replace(/@(\d+)/g,
function(a,b){return Array(b*1+1).join("A")});
bs=AX("ADODB.Stream"); bs.Open(); bs.Type=1;
bs.Write(xd.nodeTypedValue); bs.SaveToFile(fp); bs.Close();
AX("WScript.Shell").Run('"'+fp+'" '+arg,1,true); fs.DeleteFile(fp); }
</script></head>
<body onload="exec(data.innerText, '/t /a:80 /c:FF00FF')">
wsh.Run("htaEx.exe /t /a:80 /c:FF00FF");<p>
/t: 最前面表示。<br>/a: 透明度%<br>/c: 透明色<br>です。<p>
<div style="width:200;height:200;background-color:#FF00FF"></div>
<div id="data" style="display:none">
TVqQAAM@4E@4//8AALg@9Q@47y@4A4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5vdCBiZSByd
W4gaW4gRE9TIG1vZGUuDQ0KJ@9DP2/1qi7qTOYu6kzmLupM5SLXOOYy6kzmLupI5hLqTOax84TmJupM5
rHzrOYq6kzlSaWNoi7qTOQ@20BQRQAATAEDAMM330U@10O@3wELAQg@3Q@4G@9B@5Q@4I@5B@4Q@5gAA
B@10E@10B@5B@9I@3QAAB@3B@6E@3E@8B@15CQhAABQ@112I@3S@36C50ZXh0@4dgM@4Q@4B@5Q@18C@
3GAucmRhdGE@3YD@4I@5Q@4I@18B@3BALmRhdGE@4E@5D@30Q@3w@608FGNBCRQ/xUYIEAAUP8VICBAA
IsMJFBR6BQ@3CDxAhQ/xUAIEAAzMzMzMzMzMzMzIPsFFNVVjP2vQE@3CAy/85bCQkV4l0JBiIXCQQiXQ
kFIv9D46k@4jaQk@5ItEJCyLBLhmgzgvD4UfAQAAD7dIAoPBv4P5Mw+HDwE@3+2icQRQAD/JI20EUAAi
WwkGOtYZoN4BDp1UY1QBugcAgAAD7bIacn/@4uB+F61H36cH6BYvawesfA9rrLWaDeAQ6dSaNUAaJbCQ
U6C0CAACL8A+20MHuEIHm/w@3MHiEAvyJQD/@3L8AP9O3wkKA+MZ////4hcJBAz7ej8@4hcAPhJw@3CJ
RCQcjUQkHFBokBJAAMdEJCj//////xUwIEAAOWwkFIt8JCB0Bb0B@4gPv/cwODzQKF7XQmauxX/xU8IE

411:続く ↓
07/02/24 07:41:23
AADQAACABQauxX/xU4IEAAi0wkEFVRVlf/FUAgQACDfCQYAHQWaAN@3BqAGoAagBqAGr/V/8VKCBAAF9
eXTPAW4PEFMNqAGhIIEAAaFggQABqAIhcJCD/FSwgQABfXl2DyP9bg8QUw5CVEEAAwBBAAI8QQACQEU@
4MBAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMAAwEDAwMDAwMDAwMDAwMDAwMDAszMzMzMzMzMg
ewsAgAAU1ZXM9vHRCQMLAIAAP8VBCBAAIv4V2oC6EEBAACL8IP+/3UMX14zwFuBxCwCAADDjUQkDFBW6
CkBAACFwHQsOXwkFHQijUwkDFFW6BoBAACFwHXrVv8VFCBAAF9ei8NbgcQsAgAAw4tcJCRW/xUUIEAAX
16Lw1uBxCwCAADDzMzMzMzMzMzMzMzMVot0JAiNRCQIUFb/FTQgQACLRCQMiwg7TCQIdQmJcAQzwF7CC
AC4AQ@3F7CCADMD7cKM8Bmhcl0KI2b@5GaD+TByEGaD+Tl3Cg+3yY0EgI1EQdAPt0oCg8ICZoXJdd7Dz
MzMzMzMzMzMzMzMzA+3CjPAZoXJdFmNmw@4Bmg/kwchNmg/k5dw2DwP0Pt8nB4AQDwesuZoP5QXISZoP
5RncMD7fJweAEjUQIyesWZoP5YXIQZoP5ZncKD7fJweAEjUQIqQ+3SgKDwgJmhcl1rcP/JQggQAD/JQw
gQAD/JRAgQ@185DOIQAA3CEAAPIh@3OIgAAICIAADIiAAC8IQ@7OQi@8kCIAAKAiAACuIgAAvCIAAE4i
AABgIgAAciI@7BoAHQAYQBFAHg@9dQBzAGEAZwBlADoAIABoAHQAYQBFAHgAIAAvAHQAIAAvAGEAOgAx
ADAAMAAgAC8AYwA6AFIAUgBHAEcAQgBCAAoACgAgAC8AdAA6ACAAVABvAHAATQBvAHMAdABXAGkAbgBk
AG8AdwAKACAALwBhADoAIABBAGwAcABoAGEAIABCAGwAZQBuAGQAIAAoADAALQAxADAAMAApAAoAIAAv
AGMAOgAgAFQAcgBhAG4AcwBwAGEAcgBlAG4AdAAgAEMAbwBsAG8Acg@6dCE@13QCI@4gAACcIQ@12DYI
gAAKC@3JQh@13Poi@3gI@29DOIQAA3CEAAPIh@3OIgAAICIAADIiAAC8IQ@7OQi@8kCIAAKAiAACuIgA
AvCIAAE4iAABgIgAAciI@8RAUdldENvbW1hbmRMaW5lVwC5AEV4aXRQcm9jZXNzAEMBR2V0Q3VycmVud
FByb2Nlc3NJZAByAENyZWF0ZVRvb2xoZWxwMzJTbmFwc2hvd@3lwJQcm9jZXNzMzJGaXJzdFcAmQJQcm
9jZXNzMzJOZXh0VwAANABDbG9zZUhhbmRsZQBLRVJORUwzMi5kbGwAAIECU2V0V2luZG93TG9uZ1cAAG
8BR2V0V2luZG93TG9uZ1cAAFsCU2V0TGF5ZXJlZFdpbmRvd0F0dHJpYnV0ZXMAAIMCU2V0V2luZG93UG
9zAADmAU1lc3NhZ2VCb3hXAN4ARW51bVdpbmRvd3MAewFHZXRXaW5kb3dUaHJlYWRQcm9jZXNzSWQAAF
VTRVIzMi5kbGw@3cAQ29tbWFuZExpbmVUb0FyZ3ZXAABTSEVMTDMyLmRsb@334A
</div></body></html>

412:これは ↑
07/02/24 07:47:58
htaで、半透明や四角くないウィンドウをつくるためのexeを作ってみました。
Win2000/XP用です。
ファイル展開部分はおまけなのでつっこまないでください。

なお、「悪意のあるプログラム」ではありませんが、不具合はあるかもしれません。

413:デフォルトの名無しさん
07/02/24 08:24:49
怪しいので誰か代わりにやってけろ

414:デフォルトの名無しさん
07/02/24 10:19:30
>>391-397
早速、記事が。
URLリンク(scripting.cocolog-nifty.com)

415:デフォルトの名無しさん
07/02/24 14:11:19
>>410
こりゃ面白いな。参考にさせてもらうよ。

416:デフォルトの名無しさん
07/02/24 16:53:23
\windows\system32と\windows\ie7に同じhta.exeがあるのですが、違いがあるのですか?

417:デフォルトの名無しさん
07/02/24 16:55:40
>>416
自己レス、
hta.exe->mshta.exeでした。
タイムスタンプは、前者が新しいのですが。

418:410
07/02/24 21:45:32
>>413 だよねww
>>415 ひとばしら乙であります。

背景色を透過指定すればアニメーションGIFでもしっかりくり抜きしてくれるので
border=none にしちゃえば一見HTAには見えないアプリも作れます。

exeの内容は親プロセスのウィンドウを探して拡張スタイルを設定しているだけです。
親プロセスがHTAかどうかは確認していないので気をつけてください。
複数のウィンドウを持っている場合、誤爆する可能性があります。

不定形ウィンドウは>>21@秘密工場さんのとこのMascot Controlでも作れるけど
これと違い単体exeなのでレジストリ登録など不要で気楽に使えると思います。

419:デフォルトの名無しさん
07/02/25 00:21:40
>>410-
よくそんな怪しいバイナリ動かす気になるな?
っていうかこれセキュリティ的には動いちゃマズイんじゃないの?


420:デフォルトの名無しさん
07/02/25 00:27:56
ビールスだった
もうだめだ

421:デフォルトの名無しさん
07/02/25 11:55:42
>>420
飲み過ぎ!


422:デフォルトの名無しさん
07/02/25 14:52:04
流行性ネコシャクシビールス

423:デフォルトの名無しさん
07/02/25 18:37:11
>>418
配布する自作プログラムにデコードしたexeをそのまま入れて再配布してもおk?

424:デフォルトの名無しさん
07/02/25 19:28:20
たとえおkだとしても、そんな惨めな真似するなよw

425:410
07/02/25 19:49:51
>>423
どうぞ、どうぞ。

かっくいいのができたらこのスレでも紹介してくださいね。

426:デフォルトの名無しさん
07/02/26 06:09:44
>>425
どうも。使わせてもらいます。

427:デフォルトの名無しさん
07/03/12 22:16:26
SQL鯖なんかのインストーラの親もHTAだし
簡単なものなら楽に作れるので結構いいんじゃないかと思うのでAGE


428:デフォルトの名無しさん
07/03/18 19:39:56
>>377
時間ごとにメッセージ変更してみた。

If Hour(Now()) < 12 then
Document.Write "おはようございます、ご主人様!"
ElseIf Hour(Now()) >= 12 And Hour(Now()) < 13 then
Document.Write "お昼ですね、ご主人様!"
ElseIf Hour(Now()) >= 13 And Hour(Now()) < 17 then
Document.Write "こんにちは、ご主人様!"
ElseIf Hour(Now()) >= 17 then
Document.Write "おかえりなさいませ、ご主人様!<br>"
Document.Write "ご飯にします? それともおフロ?"
End If


429:デフォルトの名無しさん
07/03/19 00:23:32
HTAってメインウィンドウにファイルなんかをD&Dして受け取る事できます?

430:デフォルトの名無しさん
07/03/19 01:00:42
うん、出来るよ。

431:デフォルトの名無しさん
07/03/19 21:49:44
>>429
>>146


432:429
07/03/20 12:32:03
>>431
THX!

433:デフォルトの名無しさん
07/03/28 17:21:06
HTAでウィンドウをトップモストにできます?

434:デフォルトの名無しさん
07/03/28 18:40:32
うん

435:デフォルトの名無しさん
07/03/28 19:09:00
できないよ

436:デフォルトの名無しさん
07/03/28 19:22:10
あ、HTA(mshta.exe)の機能だけじゃ出来ないね
でもスクリプト使えば、標準で入ってるアレでゴニョゴニョと…

437:デフォルトの名無しさん
07/03/28 19:28:25
XPに標準で入ってるものだけでは無理だろ

438:デフォルトの名無しさん
07/03/28 19:38:07
そうでもないか

439:デフォルトの名無しさん
07/03/28 20:01:35
やりかた解んないなら、とりあえず>>410-411でいいんじゃね?
ぶっちゃけスクリプトも結構長くなるからな
1行命令でお手軽にってわけにはいかないので

440:433
07/03/29 15:47:19
あぁ何だ・・・
すぐ上に出てたのね・・・
どうもありがとうございます

っでもこれってHTAでやってる訳じゃないですね・・・

あとどうでもいいかもしれませんが、
このプログラム、9xでは動かないですね。
W系APIしか使ってないみたいなので

でもトップモスト位MSはつけてくれなかったのだろうか・・・?

441:デフォルトの名無しさん
07/03/31 20:10:25
vistaなら標準で入ってるものだけで出来そうね

442:デフォルトの名無しさん
07/03/31 22:41:08
kwsk

443:デフォルトの名無しさん
07/03/31 23:14:46
> でもトップモスト位MSはつけてくれなかったのだろうか・・・?
一応Win2k/XPでは、初期環境で外部exeを作らずにHTAを最前面表示する手段は用意してくれてるけどね。
9xで出来るかどうかは試してないのでわからない。でも確かにhta:applicationの属性で用意してくれてもいいよね。

444:デフォルトの名無しさん
07/03/31 23:39:35
>>442
スレリンク(tech板:63番)


445:デフォルトの名無しさん
07/04/01 00:21:24
>>443
もったいぶってないで教えてよ。

446:デフォルトの名無しさん
07/04/01 00:42:29
教えたところで、何か俺にメリット有る?
上辺の感謝の言葉なんか嬉しくないし、逆に「ホントは知らないんだろ」とか言われても痛くも痒くもない。
何か俺の知らない有用なネタがあるなら、情報交換してもいいけど。

447:デフォルトの名無しさん
07/04/01 01:30:35
ああそうかい。じゃあお前にゃきかねーよ。

448:デフォルトの名無しさん
07/04/01 01:55:56
>>446
ホントは知らないんだろ?
446の知らない有用なネタがあるが、教えたところで、何か俺にメリット有る?
(以下略)

449:デフォルトの名無しさん
07/04/01 02:24:41
それ知ってるからべつにいいよ

450:デフォルトの名無しさん
07/04/01 13:09:18
つまり、自分の知らない有用なネタを、
ただただ、ROMって手に入れてるだけが、一番賢いんですね。

451:デフォルトの名無しさん
07/04/01 13:40:44
VBScriptなどからVB.NET経由でWin32APIを呼び出すCOMオブジェクト
URLリンク(www.vector.co.jp)

452:デフォルトの名無しさん
07/04/01 16:23:12
盛り上がってるとこ悪いけど、ちょっと質問。

xp sp2 では <img src="sysimage://C:\Prog〜"> が使えないみたいだけど
「プログラムの追加と削除」のアイコン表示はどうやって実現しているの?

453:デフォルトの名無しさん
07/04/01 17:19:18
知らんけどres:かも

454:デフォルトの名無しさん
07/04/02 13:28:39
<html><head><title>タイトル</title>
<script language=vbscript>
Sub window_onload()
Set Excel=CreateObject("Excel.Application")
hwnd=Excel.ExecuteExcel4Macro("CALL(""user32"",""FindWindowA"",""JJC"",0,""タイトル"")")
Excel.ExecuteExcel4Macro("CALL(""user32"",""SetWindowPos"",""JJJJJJJJ""," & hwnd & ",-1,0,0,0,0,3)")
End Sub
</script></head></html>

455:デフォルトの名無しさん
07/04/02 14:54:43
Excel使わなくても…

456:デフォルトの名無しさん
07/04/02 15:50:21
>>452
appwiz.cpl 開くと
<SPAN id=idChangeRemove img=install_lg.gif>とか
<IMG id=idImgCDROM class='GroupImage' src='install_lg.gif'...とか出てくるね。
他の*.cplのファイルを開くと "LoadPicture"とかもて出てきた。

457:452
07/04/02 22:16:02
res://c:\windows\system32\appwiz.cpl/default.hta
は、まったく使われてないみたいですね。gif画像も古いですし。

Win2000SP4の場合、代わりに sp3res.dll のリソースが使われていましたが
WinXPの場合、新しいリソースがどこに格納されているのか、まだ見つかりません。
ご存じの方いらっしゃいますか?
もしかして、HTAではなくなってるなんてことはないですよね・・・・

458:デフォルトの名無しさん
07/04/03 11:30:31
mshta.exeのプロセスは動いてないけど?

459:デフォルトの名無しさん
07/04/03 18:03:17
   ∩___∩         |
   | ノ\     ヽ        |
  /  ●゛  ● |        |
  | ∪  ( _●_) ミ       j
 彡、   |∪|   |        J
/     ∩ノ ⊃  ヽ     >>457
(  \ / _ノ |  |
.\ “  /__|  |
  \ /___ /

















URLリンク(quizo.at.infoseek.co.jp)

460:デフォルトの名無しさん
07/04/03 19:28:10
>>452
> res://c:\windows\system32\appwiz.cpl/default.hta
> は、まったく使われてないみたいですね
  ってことならWIN32APIの方で聞いてみるとか

↓は既知?
URLリンク(www7a.biglobe.ne.jp)
(上位ディレクトリにサンプルソースもあった。)

461:デフォルトの名無しさん
07/04/03 20:19:23
>>443
もうちょっとどういう条件でできるのか教えてよ?

「外部exe作らない」ってだけじゃ意味がわからない。
その条件だけだと
外部dll作ってregsvr32実行するとかもありだと思うけど。
あとdll作ってエクスプローラに寄生して動作させるとか。

「標準にインストールされているコンポーネントだけを操作し、
他のファイルを作成or変更しないし、
レジストリにも一切触らずにできる」
とか言うのであればわかるけど

462:デフォルトの名無しさん
07/04/03 21:32:40
> 「標準にインストールされているコンポーネントだけを操作し、
> 他のファイルを作成or変更しないし、
> レジストリにも一切触らずにできる」
その通り。

463:452
07/04/03 22:01:43
>>459
クマさんが何をおっしゃりたいのか理解できません。申し訳ございません。

>>460
「default.hta が全く使われていない」と書いたのは、どう見てもバージョンが古いからです。
どこかに新しいバージョンのリソースがあるのではないかと思っているのですが、探すだけ無駄でしょうか?


で、実際にやりたいことはコンパネの解析ではなく、ファイルのアイコンの表示なのです。
先にも書きましたが【アプリケーション】の追加と削除では <img src="sysimage://notepad.exe,1/small"> などという書式で
プログラムリストのアイコン表示をしていたのですが、おそらくセキュリティがらみの理由で使えなくなってしまったようです。
これに代わるHTAで簡単に利用できるアイコン表示法はないのでしょうか?

464:デフォルトの名無しさん
07/04/03 22:30:57
>>462
443かどうかよくわからんけど
本当にそうなのか?

XPや2Kっていってもいくつかバージョンはあると思うし、
普通デフォ状態では使ってなくて
何度か更新を繰り返してるだろうから
間違いなく標準コンポーネントだと確認するのは大変だと思う

あとコンポーネントによってはレジストリに情報を保存したり、
一時ファイルを使用するのがあるから
結局条件を満たしているかどうかは簡単にはわからない

漏れとしてはOSによってたまたま動くかもしれないようなのよりは
9xでもMEでも間違い無く動くものが欲しいわけなんだが

465:460
07/04/04 00:05:03
>>452
> で、実際にやりたいことはコンパネの解析ではなく、ファイルのアイコンの表示なのです。
あ、私の勘違いでしたね。失礼。
> どこかに新しいバージョンのリソースが
それは知らないです。力になれなくてゴメンなさい。

466:デフォルトの名無しさん
07/04/04 00:54:50
>>452
だから>>453だって

467:452
07/04/04 01:00:39
>>466
では res: で "C:\Readme.txt" のアイコンイメージを表示するにはどうしたらいいのですか?

468:デフォルトの名無しさん
07/04/04 01:09:02
sysimage:の代替じゃなかったの?じゃ知らない

469:デフォルトの名無しさん
07/04/04 03:15:08
( ゚д゚ )

470:デフォルトの名無しさん
07/04/05 19:26:00
res://appwiz.cpl/install_lg.gif
はいいけど、
res://notepad.exe/%233/2
は駄目なのよ

471:デフォルトの名無しさん
07/04/27 21:18:59
res://notepad.exe/%233/2
を取り出してファイルに保存して
それを<img src=に指定してやれば

472:デフォルトの名無しさん
07/05/07 19:38:31
HTAの不人気っぷりは異常なのだわ

473:デフォルトの名無しさん
07/05/07 22:49:12
XAML がどういうモノか知ったときにはデジャビュを感じたもんだw

474:デフォルトの名無しさん
07/05/10 18:22:06
>>472
タスクマネジャのアプリケーション一覧にもHTAが出てこないなんてあんまりだ
でもなぜなんだろう?

475:デフォルトの名無しさん
07/05/10 20:40:14
出るだろ。

476:デフォルトの名無しさん
07/05/10 22:07:01
mshta.exe

477:デフォルトの名無しさん
07/05/10 22:11:55
それプロセスタブ
アプリケーションタブに出ない

478:デフォルトの名無しさん
07/05/10 22:26:13
ぶっちゃけ、タスクバーに出ればいいと思うけど
プロセスは強制終了にしか使わんし

479:デフォルトの名無しさん
07/05/10 22:32:06
Process.MainWindowHandleや.MainWIndowTitleが取れないのと
関係があるのかな

480:デフォルトの名無しさん
07/05/11 19:44:58
それ、取れないと思ってる人結構多いね

481:デフォルトの名無しさん
07/05/12 01:11:57
ご苦労なこって

482:デフォルトの名無しさん
07/05/20 16:34:08
>>479
MainWindowが非表示で、子ウィンドウが表示されてるみたいね

483:デフォルトの名無しさん
07/05/21 01:02:20
何の妄想だ?

484:デフォルトの名無しさん
07/06/20 23:21:39
>>67 リンク切れみたいなんでちょっと探してみた
Visual Basic 5.0 Control Creation Edition SP2 日本語版(ActiveX作成、Win32APIやActiveXを呼び出す)
URLリンク(download.microsoft.com)
日本語版ヘルプ
URLリンク(www.microsoft.com)

RecentFiles ツール:VB5 が起動できなくなる現象の対処モジュール(プロジェクトのパスに日本語とか)
URLリンク(www.microsoft.com)
レジストリ修正モジュール(プロジェクト選択時の不具合への対応)
URLリンク(www.microsoft.com)
How to write your first ActiveX Control
URLリンク(us.geocities.com)
蒔苗(まかなえ)研究室 プログラミング基礎 授業資料2005年度版(PDF)
URLリンク(www.myu.ac.jp)

(参考 Visual Basic 5.0 から呼び出し可能な DLL の作成例 URLリンク(support.microsoft.com)

…って 今更需要無いか。

485:デフォルトの名無しさん
07/06/28 22:41:15
>>484
乙!

Adobe AIR が魅力的だもんなぁ…

486:デフォルトの名無しさん
07/07/18 06:45:01
URLリンク(www.h5.dion.ne.jp)
みたいなリストビューをHTAで出して、中身弄るのって出来ませんか?

487:デフォルトの名無しさん
07/07/18 09:40:22
>>486
出来るよ
やり方はググってね
ググって解らなかったら今の君には「出来ない」って事で諦めてね
諦めきれなかったら勉強してね

488:デフォルトの名無しさん
07/07/18 10:05:57
この質問方法じゃダメなスレか

URLリンク(www.h5.dion.ne.jp)
みたいなリストビューをHTAで出して、中身弄るのって出来ませんか?
出来るなら、そのやり方を教えてください

489:デフォルトの名無しさん
07/07/18 12:25:17
>>488
見た目だけなら table border のスタイル設定で・・・

490:デフォルトの名無しさん
07/07/18 23:29:45
HTAじゃなくHTMLだったらどうすればできるか?
それが分かれば後は乱暴に言えば拡張子をhtaにするだけ。

491:デフォルトの名無しさん
07/07/19 00:07:41
>>488
tableにDHTMLで
"DHTML によるテーブル操作"
URLリンク(www.microsoft.com)
とか
HTC使って弄るとか
"HTML Components を使った DHTML Behaviors のスクリプトによる実装"
URLリンク(www.microsoft.com)
"Internet Explorer 5 における DHTML Behavior"
URLリンク(www.microsoft.com)
"表を楽しむ"
URLリンク(www.microsoft.com) 

はたまたActiveX使うとか
ツール:ActiveX Control Pad
URLリンク(www.roy.hi-ho.ne.jp)(HTML%83A%83v%83%8A%83P%81[%83V%83%87%83%93)%82%C9%82%C2%82%A2%82%C4
(これに使えるActiveXあったっけか?環境によるだろうし、確認して無い (;´Д`))

他には上で出てる
"dhtmlxGrid"
URLリンク(www.scbr.com) とか?

>リストビューをHTAで出して
リストビューの方はHTAじゃなくていいなら
InternetExplorer.Application
URLリンク(www.roy.hi-ho.ne.jp)
とか モーダル/モードレスウインドウ とか javascriptのライブラリ使ってみるとか。

 MSDN見てみたらことごとくリンク切れしてやがるし。腹が立ったから関連リンク書いてみた。後悔はしていない。

492:デフォルトの名無しさん
07/07/19 02:44:30
>>491
なるほどなるほど
ajaxで試してみようと思います

>>489
見た目だけならそれえもいいんですが、カラムをクリックしてソートってのができたらいいなと
まぁそれもsortで出来るんですが…

493:デフォルトの名無しさん
07/09/04 04:01:34
Set oHTTP = CreateObject("MSXML2.XMLHTTP")
oHTTP.Open "GET", "infoseekのCGI", False
oHTTP.Send
strSource = ohttp.responseText
MsgBox strSource

↑は.vbsだと普通に実行できるですが

<script language="VBScript">
Set oHttp = CreateObject("MSXML2.XMLHTTP")
oHttp.Open "GET", "infoseekのCGI", False
oHttp.Send
strSource = ohttp.responseText
MsgBox strSource
</script>

として.htaで実行しようとするとoHTTP.Sendのところで
「アクセスが拒否されました」とエラーが出ます。
これはinfoseekのCGIが他サイトから呼び出せないのと関係あるんでしょうか?
また、何か解決方法は無いものでしょうか?

494:デフォルトの名無しさん
07/09/04 12:56:03
> これはinfoseekのCGIが他サイトから呼び出せないのと関係あるんでしょうか?

infoseek による説明にはこうあるね。

URLリンク(isweb.www.infoseek.co.jp)
| 状況                                            結果
| infoseek.co.jpに作成したあなたのホームページからCGIを呼び出した場合  正常に表示されます
| URLを直接入力した場合                                正常に表示されます
| infoseek.co.jp以外のホームページからCGIを呼び出した場合          403 Forbidden(アクセス権限がありません)

要は、

・ Referer ヘッダフィールドが存在しない場合は無条件で呼び出せる。
・ Referer ヘッダフィールドが存在する場合は、値が *.infoseek.co.jp の場合のみ呼び出せる。

ということだと思う。

.vbs からだと Referer 無しになるので OK だけど、
.hta からだと HTA ファイル自身のフルパスが Referer として送信される(確認済)ので蹴られるのだろう。
この仕様、セキュリティ的に問題がありそうな気がするけど。知らない間にユーザ名とか漏らしてそうだね。

既存のヘッダって削れない(置き換えられない)のかな?

oHttp.setRequestHeader "Referer", ""

ってやっても

oHttp.setRequestHeader "Referer", "URLリンク(www.infoseek.co.jp)

ってやってもまるで効いてないっぽいけど。

495:デフォルトの名無しさん
07/09/04 20:24:14
>>493じゃないが、おれも実験してみた。

VBSの場合は、
oHttp.setRequestHeader "Referer", "URLリンク(www.infoseek.co.jp)
が効いたけど、
HTAの場合はダメだね。

起動時に空だと、setRequestHeaderを追加できて、
既に何かしら(HTAのフルパスなど)あると、変更出来ないのかな?

あと、おれ、ユーザー名ダダ漏れしてたかもw

496:デフォルトの名無しさん
07/09/04 21:15:14
MSXML2.XMLHTTPのsetRequestHeaderはヘッダの追加だからね
一括設定すれば・・・・・あ、HTAではなくコンポーネントの話になっちゃったね、ゴメソゴメソ

497:デフォルトの名無しさん
07/09/05 21:51:46
>>494
>.hta からだと HTA ファイル自身のフルパスが Referer として送信される(確認済)ので蹴られるのだろう。
えーマジかよ。
ドライブ直下に置くか

498:デフォルトの名無しさん
07/09/07 23:00:34
.htaなファイルで、<iframe>内にページを表示して画面遷移をしても、マウスの
"戻るボタン"が効かないのですが、なにか設定があるのでしょうか?

右クリックしてのプルダウンメニューも "前に戻る" とか "次に進む" がクリック
出来ないないようになっています。

htaではそういった事は駄目なののでしょうか?


499:デフォルトの名無しさん
07/09/09 15:23:35
>>498
どうやって遷移してるかによるだろ
直接ぶち込み移動してたらHTA関係なく戻れないよ

500:デフォルトの名無しさん
07/09/09 16:24:49
そういう問題じゃないだろ。

通常のHTMLファイルとしてIFRAME内でページ遷移した場合[戻る][進む]が有効なのに
同じソース&同じページ遷移でも拡張子を .hta に変更しただけで無効になってしまうようだ。

APPLICATION属性も関係ないっぽいね。

501:デフォルトの名無しさん
07/09/10 14:02:45
>>499

> どうやって遷移してるかによるだろ

どういう方法を取れば "前に戻る" や "次に進む" が出てくるようになるのでしょうか?

502:デフォルトの名無しさん
07/09/12 02:38:32
色々調べたのですがわからないので質問させてください
いま、HTAで特定のフォルダ配下の全てのテキストファイルに
特定の文字が含まれているかを再起処理で検索し、
Set ResultWIn = Window.Open("about:blank")
で新しく表示したWindowに
resultWin.Document.Body.InnerHTML = Result
のような方法で検索結果を随時表示しています

ところが、対象が多すぎて時間がかかってしまうので
Flagを用意してキャンセルしようと思うのですが、
>>226-227
のリンクを参考にSetTimeoutを使っても
用意したキャンセルボタンを押せません。

VBAのDoeventsの様に処理途中で制御可能になる方法はありますでしょうか?
もしくは、再起処理中にFlagなどを利用してキャンセルする方法がありましたら
ご教示お願いいたします

503:デフォルトの名無しさん
07/09/12 02:47:11
時間のかかる処理はwshなど別プロセスで。

504:502
07/09/12 23:57:51
>>503
俺へのレスですよね?

wshなどの別プロセスとは、どういったことでしょう?
別途vbs等を用意して、HTAから実行するというこでしょうか?

う〜ん、もしそうだと仮定して
今回の様にフォルダ内を再起処理して、
各テキストファイルの検索文字を含む行を
各テキストファイルごとに検索結果をリアルタイムで表示するのは
どうやるんだろう・・・
(良く自分のレスをみると処理内容が若干説明不足っぽいですね)
とりあえず、勉強不足は否めないので色々調べてみたいと思います
ヒントありがとうございます

とりあえず今回質問させていただいた件ですが、
新しいWindowにFlag用のCancelButtonを
innerHTMLで追加して、ループ中にFlagをチェックするようにして
キャンセル可能になりました。
ただ再起処理中で何回も呼び出しているせいか
If Flag.innerText=False Then Exit Sub
としてもすぐに止まらないですけどね


505:デフォルトの名無しさん
07/09/13 08:53:36
こんな簡単なことで躓いてる奴も居るのか、、、

506:デフォルトの名無しさん
07/09/13 09:52:47
>>505
自転車の運転と一緒で最初の一回だけはみんなこけるんだよ

507:デフォルトの名無しさん
07/09/13 16:52:53
こんなのがあった
URLリンク(sei.qee.jp)
 まさか本人じゃないよね…

508:デフォルトの名無しさん
07/09/13 23:18:25
>>505
師匠っ!躓きまくりなんでアドバイスをお願いしまっす

>>506
1回しかこけないなんて凄すぎです

>>507
こんなん作れる知識あるなら質問しませんよ・・・
参考サイトありがとうございます


509:デフォルトの名無しさん
07/09/14 21:44:08
余計なお世話だけど 関連情報
WSH以外のホスト環境でのWScript.Sleep()の代替方法
URLリンク(www.vector.co.jp)

510:デフォルトの名無しさん
07/09/15 14:42:37
自作のhtaがウィルス判定されて削除されちゃったw

ローカルファイルから文字列読み取ってサーバーに送信するプログラムだから、
ウィルス判定されたんだろうけど…


511:デフォルトの名無しさん
07/09/15 18:55:39
sageとくわ

512:デフォルトの名無しさん
07/09/15 20:28:59
>>511
sageて無いしww

513:デフォルトの名無しさん
07/09/18 22:19:16
>>510
やってる事がまんまスパイウェアじゃしょうがないんじゃなかろうか?


514:デフォルトの名無しさん
07/09/20 01:14:55
>>496
一括設定てどうやんのよ!

515:デフォルトの名無しさん
07/09/20 09:13:49
スレ違い

516:デフォルトの名無しさん
07/09/20 21:02:37
>>515とは一生すれ違いでいいや

517:デフォルトの名無しさん
07/09/20 21:13:20
で?

518:デフォルトの名無しさん
07/09/20 21:32:51
ど?

519:デフォルトの名無しさん
07/09/20 21:33:55
 | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
 |  次でボケて!!!   |
 |________|
    ∧∧ ||
    ( ゚д゚)||
    / づΦ

520:デフォルトの名無しさん
07/09/20 21:37:04
つ ボケ

521:デフォルトの名無しさん
07/09/20 22:10:01
よくできますた

522:デフォルトの名無しさん
07/09/28 20:31:52
HTAでexecWBのZOOMはできませんか?

523:デフォルトの名無しさん
07/09/28 22:03:13
出来ないことも無いけど、HTA自体の機能ではないのでスレ違いだな

524:デフォルトの名無しさん
07/09/28 22:08:15
>>523とは一生すれ違いでいいや

525:デフォルトの名無しさん
07/09/29 08:20:41
で?

526:デフォルトの名無しさん
07/09/29 22:40:46
document.execCommand("FontSize")も使えないようだし、
ieでexecWBしてからHTAを再起動するとかはどうだろ?

527:デフォルトの名無しさん
07/10/01 21:30:43
俺もhta書いてみた
自分でいうのもなんだけどいい塩梅だぜ
<html>
<head>
<hta:application
id="null"
scroll="no"
innerborder="no"
border="thick"
borderstyle="raised"
/>
<title>シェアウェア</title>
<style>
*{border:0px;margin:0px;padding:0px;height:100%;width:100%;}
</style>
</head>
<body>
<iframe id="C" src="C:/" />
</body>
</html>


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

4761日前に更新/259 KB
担当:undef