トップページ⇒tech
1001コメント220KB

【最適化機能】HSP初質51 【それは通常の3倍】

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/03/17(金) 11:42:01
■とりあえずこれを嫁。
  http://www.geocities.jp/hsp_summary/law.html

 ■ 前スレ
  【オフィシャル発売】HSP初質P50【コンテスト選考】
  http://pc8.2ch.net/test/read.cgi/tech/1132612819/

 ■HSPの入手はここから(HSP2.61、HSP3.0公開中。)
  □Hot Soup Processor Page
    http://www.onionsoft.net/hsp/

 ■HSPの各種情報
  □HSP Wiki
    http://quasiquote.org/hspwiki/
    http://quasiquote.org/hspwiki/2%a4%c1%a4%e3%a4%f3%a4%cd%a4%eb%a4%ce%a5%b9%a5%ec%a5%c3%a5%c9

 ■HSPLetの入手はここから(ブラウザ上でHSPを動かす)
  □HSP BIGINNER'S CLUB
    http://www.rinku.zaq.ne.jp/ultimate/
  □HSPLet3.0
    http://www.group-finity.com/HSP/HSPLet/

 ■HSPスレまとめページ
  □Hot Soup Processor@2ch
    http://hsp2ch.hp.infoseek.co.jp/
    http://www.geocities.jp/hsp_summary/
0073デフォルトの名無しさん2006/03/32(土) 13:46:56
CreateThreadとhscallbkで
まるちできっかな〜っとやってみたらだめだった。

つか、WM_CREATEがとんでこないんだけどwww
0074デフォルトの名無しさん2006/03/32(土) 13:52:13
>>73
マルチもどきなら  run "MENU2.AX","-s" で出来。。。?
0075デフォルトの名無しさん2006/03/32(土) 14:53:25
execと共有メモリを使った方がまだまし
0076デフォルトの名無しさん2006/03/32(土) 16:18:51
共有メモリか・・
ちょっとやってみっかなw
0077デフォルトの名無しさん2006/03/32(土) 23:21:03
アジ真にオモロイ記事が載っているが、どうもなぁw

4/1だしwww
0078デフォルトの名無しさん2006/04/02(日) 17:30:45
HSPのtitle に 1.2.3......って表示させたいんだけど。
うまくいかねー

#include <windows.h>
typedef struct {
HWND hwnd;
BOOL (WINAPI *pSetWindowText)(HWND, LPCTSTR);
VOID (WINAPI *pSleep)(DWORD);
int cnt;
} _DATA;
void ooo(_DATA *pData)
{
int kkk=0;
while (pData->cnt== 0) {
pData->pSetWindowText(pData->hwnd,(LPCTSTR)kkk);
kkk++;
pData->pSleep(500);
}
return ;
}
0079デフォルトの名無しさん2006/04/02(日) 19:58:04
( ゚д゚)
0080デフォルトの名無しさん2006/04/02(日) 20:01:01
HSPで変数aにいろいろなものを代入後、変数aを初期化したいのですが、
初期化方法は
a=""
でOKなのでしょうか。
0081デフォルトの名無しさん2006/04/02(日) 20:30:27
ここに答えられる香具師はおらんよw
0082782006/04/02(日) 21:26:16
出来たーwwww
0083デフォルトの名無しさん2006/04/02(日) 21:47:42
見るからに無限ループになりそうだけどwww
0084デフォルトの名無しさん2006/04/02(日) 22:03:58
>>83 そこら辺は、大丈夫だぁw
3.0になってからコード埋め込む羽目になるとは。
ない物ねだりw
0085デフォルトの名無しさん2006/04/03(月) 01:03:42
タイトルバーをつまむと
処理がとまるww

何とかしてほしい
他言語はどうなんだろうな。

0086デフォルトの名無しさん2006/04/03(月) 01:06:39
一緒に



す・る・な。
0087デフォルトの名無しさん2006/04/03(月) 04:41:16
>>85
ググってみたらあった。
0088デフォルトの名無しさん2006/04/03(月) 09:02:46
2xでも止まるのか

screen 2
screen 0
repeat

gsel 0,0:title ""+cnt
await 0
gsel 2,0:title ""+cnt
wait 10
loop
stop
0089デフォルトの名無しさん2006/04/03(月) 13:16:33
まるちもヤってみたら意外と簡単だったな。

0090デフォルトの名無しさん2006/04/03(月) 14:41:58
残念。まるち
終了時に落とし穴がw

まぁ、暇潰しだからどうでもいいけと
使える事が解っただけでも
0091デフォルトの名無しさん2006/04/03(月) 16:31:59
>>85
普通のプログラムはメッセージが着てもいないときに処理を行わないので止まる止まらない以前の話。
(逆に、タイトルバークリック中でもメッセージが来れば処理は実行される。)

メッセージが着ていないときに処理を行いたいなら別スレ立てるべきで、UIスレッドで何でもやろうとしてるHSPの実装上の問題。
マルチスレッドにすると排他制御がいろいろ厄介だしパフォーマンスも大幅に下がるからやりたくないのはわかるが。

マルチスレッドが嫌ならWM_NCLBUTTONDOWNのメッセージハンドラをオーバーライドして自前で移動するようにすれば簡単に解決なんだけどなぁ。
0092デフォルトの名無しさん2006/04/03(月) 16:32:29
まるちなんてよっぽどの暇人にしかバレないよ。
0093デフォルトの名無しさん2006/04/03(月) 16:35:28
あそこの掲示板そのよっぽどの暇人が巣食ってるからなぁ。
誰とは言わないがkz3とか。
0094デフォルトの名無しさん2006/04/03(月) 17:00:12
質問があります

コンパイル+実行、実行、コンパイルのみ、すべて試したのですが、
「#Error 38 in line 14 (fl.hsp)
-->外部DLLの呼び出しに失敗しました」
とでます。
#uselib "HMemory.dll"
#func RM ReadMemory $5
#func WM WriteMemory $5
#func WMS WriteMemoryS $5
#func GID GetID $5
#func DRM DReadMemory $5
#func DWM DWriteMemory $5
#func DWMS DWriteMemoryS $5
#func EP ExePro $5

pname = "FrontLinetito.EXE"

put = $0186A0
WM put,"FrontLine.exe",$0043A6B0,3
put = $0186A0
WM put,"FrontLine.exe",$0043A6E9,3
put = $0186A0
WM put,"FrontLine.exe",$0043A720,3
put = $0186A0
WM put,"FrontLine.exe",$0043A759,3
put = $0186A0
WM put,"FrontLine.exe",$0043A790,3
OS Windows98 SE
HSPver 3.
0095デフォルトの名無しさん2006/04/03(月) 17:04:21
↑間違えました


#uselib "HMemory.dll"
:
:
:
put = $0186A0
WM put,"FrontLine.exe",$0043A790,

上の記述であっているでしょうか。
HMemory.dllはhsed3.exeと同じフォルダにおいてあります。

OSはWindows98SEでHSPのVerは3です
0096デフォルトの名無しさん2006/04/03(月) 18:09:53
みんなー何作ってるでつかw
0097デフォルトの名無しさん2006/04/03(月) 18:19:10
おぉっ
ベクターにHMemory.dll



0098デフォルトの名無しさん2006/04/03(月) 18:30:49
>>94 >>95

3.0用のDLLもあるようですがww

#uselib "HMemory.dll"
#func ReadMemory "ReadMemory" str,int,var,int
#func WriteMemory "WriteMemory" str,int,int,int
#func DReadMemory "DReadMemory" var,int,var,int
#func DWriteMemory "DWriteMemory" var,int,int,int
#func WriteMemoryS "WriteMemoryS" str,int,str
#func DWriteMemoryS "DWriteMemoryS" var,int,str
#func DReadMemoryArray "DReadMemoryArray" var,int,var,int
#func DWriteMemoryArray "DWriteMemoryArray" var,int,var,int
#func GetID "GetID" str,var
#func ExePro "ExePro" str,var
#func StopProc "StopProc" str
#func RestartProc "RestartProc" str
0099デフォルトの名無しさん2006/04/03(月) 18:37:32
>>98
今自分が使っているHMemory.dllはHSP3に対応していないのですか?
GAMEなページからダウンロードしたのですが・・・。
0100デフォルトの名無しさん2006/04/03(月) 18:37:33
フロントライン

そこまでしてゲームをクリアーしたいのかwww
0101デフォルトの名無しさん2006/04/03(月) 19:06:28
>>93
言ってんじゃーんwwwwwwww




っと
0102デフォルトの名無しさん2006/04/03(月) 21:26:23
>>99
してるとか、してないとか、ここで聞くことなのか?
そんなプロセスいじくるようなもの態々試せとでも?


HSPには問題ねーけどな。

つっか作者に聞けって話だwwwww
0103RiffRaffさんのページ閉じる。2006/04/03(月) 22:52:55
HSP COMの先駆者、RiffRaffさんのページ閉じる。
2.6用のモジュールlollipopから始まり、その後ATL経由でブラウザも作れるようになり
開発は、ちょくとさんへと渡り、今では3.0に採用された。

RiffRaffさん お疲れさん。
0104デフォルトの名無しさん2006/04/04(火) 01:44:34
うお、本当だ。
オレもRiffRaffさんのページを見て
COMを勉強したクチだから残念だな。
何はともあれ、お疲れ様でしたRiffRaffさん。

あと、>>103
sageろボケ。
0105デフォルトの名無しさん2006/04/05(水) 01:18:52
本スレ
http://pc8.2ch.net/test/read.cgi/tech/1142529119/l50
0106デフォルトの名無しさん2006/04/05(水) 20:21:16
ごめそ、今になってもCOMってよくわからなんだ・・・
0107デフォルトの名無しさん2006/04/06(木) 11:23:13
別に謝るようなことじゃないが
0108Irisawa へ2006/04/06(木) 17:53:54
友達ですかwww
0109デフォルトの名無しさん2006/04/07(金) 00:44:00
2chのあるスレッドのIDを投稿順に並べる、ただし重複があった場合は最初の1つを除いてすべて消す。
結果をresult.txtとして出力。
というプログラムを組みたいのですが、

#include "hspinet.as"
neturl ""
netload ""
程度しかわかりません。

何か参考になるスクリプトやヒントをください。
01101092006/04/07(金) 09:01:00
#include "hspinet.as"
netinit
neturl "http://game9.2ch.net/test/read.cgi/tcg/"
netload "1136120025"

まで完了。
最終形はIDと改行だけにすることなんですが、
正規表現って使えないの?
0111デフォルトの名無しさん2006/04/07(金) 09:20:53
ヤれば出来んじゃんw
自分で解決したほうがオモシロスw
01121092006/04/07(金) 13:03:27
やればできるじゃんといわれても、
hypertalkと比べたらやれることは多い反面、複雑怪奇な仕様があるような気が。

#include "hspbre.as"
#include "hspinet.as"
#define target_num"1136120025"
netinit
neturl "http://game9.2ch.net/test/read.cgi/tcg/"
netload target_num
d_note="0"
notesel d_note //そのまま数値入れても動かないなんておかしすぎ。10分無駄にした。
noteload target_num
BSubst d_note,"^.[^d][^t].*$","" //動作が怪しすぎ。
BSubst d_note,"^<dt>.*[0-9] ID:",""
print "完了"

でっちあげすぎ・・・
0113デフォルトの名無しさん2006/04/07(金) 19:34:30
hypertalkって何ですか?
0114デフォルトの名無しさん2006/04/07(金) 19:36:01
つかここは削除依頼してる
0115デフォルトの名無しさん2006/04/07(金) 19:41:10
>>113
http://en.wikipedia.org/wiki/HyperTalk
0116デフォルトの名無しさん2006/04/07(金) 20:22:24
HyperTalk 興味ナシ
01171092006/04/07(金) 21:07:48
>>116
何をいまさら言語なので同意
0118デフォルトの名無しさん2006/04/08(土) 02:03:46
しかし家のPCうるさい。
HDDの音かな

0119デフォルトの名無しさん2006/04/08(土) 09:50:41
いまブラウザ作ってるんだが
最大化とかどうやればできるんだ?
ぜんぜんワカンネ。
0120デフォルトの名無しさん2006/04/08(土) 12:49:09
>>119
#uselib "user32.dll"
#cfunc GetWindowLong "GetWindowLongA" int,int
#func SetWindowLong "SetWindowLongA" int,int,int

screen 0,ginfo_dispx,ginfo_dispy,0,,,640,480
ws = GetWindowLong(hwnd,-16)
ws = ws | 0x010000
SetWindowLong hwnd,-16,ws
gsel 0,-1 : gsel 0,1
01211092006/04/08(土) 18:26:40
#include "hspbre.as"
#include "hspinet.as"
#define target_num"1136120025"
netinit
neturl "http://game9.2ch.net/test/read.cgi/tcg/"
netload target_num
sdim d_note,500000
sdim d_note2,500000
sdim d_note3,500000
notesel d_note
noteload target_num
bb = "s/^[^<].*$|^<[^d].*$|^<d[^t].*$//g"
BSubst d_note2,bb,d_note
bb = "s/.*ID:([\w/+]+)/(\<dd| \<a ).*/g"
BSubst d_note3,bb,d_note2
notesave target_num
print "完了"

やっと6割といったところ。
だが、おそらく取ってきたファイルの改行の形式の違いのためか検索が引っかからないのですが。
どうしたらいいものでしょうか?

hspbre
ttp://www.vector.co.jp/soft/win95/prog/se337635.html?y
BREGEXP.DLL
ttp://www.hi-ho.ne.jp/babaq/
0122デフォルトの名無しさん2006/04/08(土) 19:29:38
BSubstってどんな命令?
一行ずつ読み込んで最後まで処理してくれるの?

>おそらく取ってきたファイルの改行の形式の違いのためか
ファイルの改行はLFになってて、
hspはCRLFじゃないと改行だと認識しないんだよねぇ

ということでヒント
CRLF = "\n"
LF = strmid(CRLF,1,1)
mes instr(d_note,0,CRLF)
mes instr(d_note,0,LF)
01231092006/04/08(土) 19:50:49
#include "hspbre.as"
#include "hspinet.as"
#define target_num"1136120025"
netinit
neturl "http://game9.2ch.net/test/read.cgi/tcg/"
netload target_num
sdim d_note,500000
sdim d_note2,500000
notesel d_note
noteload target_num
bb = "s/\n/\r\n/g"
BSubst d_note2,bb,d_note
d_note=d_note2
bb = "s/^[^<].*$|^<[^d].*$|^<d[^t].*$//g"
BSubst d_note2,bb,d_note
d_note=d_note2
bb = "s/.*ID:([\w/+]+)(\<dd| \<a ).*/\1/g"
BSubst d_note2,bb,d_note
d_note=d_note2
notesave target_num
print "完了"

まだ動かないけど(bb = "s/.*ID:([\w/+]+)(\<dd| \<a ).*/\1/g"が原因はわかるが対処法不明で今のところどうにもならない)
これでいいのだろうか。

>BSubst
BSubst p1,p2,p3[文字列を置換する]

p1(変数):文字列型変数
p2(文字列):s構文による正規表現式
p3(文字列):置換対象の文字列
引っかかったものはすべて置換されます。
0124デフォルトの名無しさん2006/04/08(土) 20:07:28
ID抜き出すだけならこんな感じでもいいかも
//このままだとコピペの中のIDにも反応しちゃうけどw

repeat
linesize = instr(d_note,size,"ID:")
if linesize =-1 : break
size += linesize+1
mes strmid(d_note,size+2,9) //IDの末尾に0やOが表示されない板では8にする
loop
01251092006/04/08(土) 20:18:03
>>124
反応するとめちゃくちゃいやなんですよ。
最終的には抽出したIDから数値を求めるのが目的ですので。
0126デフォルトの名無しさん2006/04/08(土) 20:23:44
なに作ってるでつか?
0127デフォルトの名無しさん2006/04/08(土) 20:27:36
2chのdatかhtmlの中身見たことある?
反応しちゃうってことは反応しないようにすればいいってことで
0128デフォルトの名無しさん2006/04/08(土) 20:28:36
できたー

#define WM_SIZE$00000005
#uselib "user32.dll"
#cfunc GetWindowLong "GetWindowLongA" int,int
#func SetWindowLong "SetWindowLongA" int,int,int
#func global MoveWindow "MoveWindow" int,int,int,int,int,int
onexit gosub *exit
oncmd gosub *OnSize,WM_SIZE
sdim url,512:url="http://www.google.co.jp/"
screen 0,ginfo_dispx,ginfo_dispy,2,,,640,480
SetWindowLong hwnd,-16,GetWindowLong(hwnd,-16)|0x010000
gsel 0,1
axobj ie, "Shell.Explorer.2",640,480: haw=stat
ie->"Navigate" url
stop
*OnSize
MoveWindow objinfo(haw,2),0,0,lparam&$ffff,(lparam>>16)&$ffff,1
return
*exit
delcom ie:ie=0
end
0129デフォルトの名無しさん2006/04/08(土) 20:44:59
オメ

ついでに、ドラッグでサイズ変更できるようにしちゃえw
01301092006/04/08(土) 21:05:39
>>127
htmlはみながら作ってますけど。
問題はdatがどこに格納されているかわからないことなのですが。
0131デフォルトの名無しさん2006/04/08(土) 21:33:11
>>123とかのソースだとdatは取りにいってないよ
カレントディレクトリに1136120025って
(拡張子がついてない)名前のファイルが無い?
noteloadできてるってことはあるはずだけど。
01321092006/04/08(土) 22:02:51
1136120025というファイルはできています。
中身はttp://game9.2ch.net/test/read.cgi/tcg/1136120025
と同じと思われます。
0133デフォルトの名無しさん2006/04/09(日) 04:56:07
ここID無いw
0134デフォルトの名無しさん2006/04/09(日) 15:41:24
DLGTEMPLATE 構造体と DLGITEMTEMPLATE 構造体の使い方が良くわからない。DLGTEMPLATEだけ付けてやるとうまくいくけど(18+α)
typedef struct {
DWORD style;
DWORD dwExtendedStyle;
WORD cdit;
short x;
short y;
short cx;
short cy;
} DLGTEMPLATE;

cditを0 にすると うまく行く。コールバックは、hscallbk.as
sdim DLGTEMPLATE,18+4+40+4
st=WS_VISIBLE|WS_CAPTION|WS_POPUP|DS_MODALFRAME|WS_SYSMENU|DS_SETFONT
lpoke DLGTEMPLATE,0,st ;style;
lpoke DLGTEMPLATE,4,0 ;dwExtendedStyle;
wpoke DLGTEMPLATE,8,0 ;cdit;
wpoke DLGTEMPLATE,10,0:wpoke DLGTEMPLATE,12,0 ;xy
wpoke DLGTEMPLATE,14,200 :wpoke DLGTEMPLATE,16,80 ;cxcy
wpoke DLGTEMPLATE,18,0:wpoke DLGTEMPLATE,20,0;クラス名
sdim po,40: cnvstow po,"バージョン情報"
memcpy DLGTEMPLATE,po,40,22 :wpoke DLGTEMPLATE,62,10:wpoke DLGTEMPLATE,64,0;フォント名

DialogBoxIndirectParamA hinstance,DLGTEMPLATE,0,pDlgProc,0

Cのサンプルは、ぐぐりゲットし、ためしたらうまく動いてる。ABのサンプルもあったけど。エラーで動かず

GlobalAllocでもだめ。ボタンぐらいは付けたいな。最悪 WM_INITDIALOGで処理しても。
01351342006/04/09(日) 20:25:21
リソースをコードにして埋め込んだら なんか出来た。w

でっも納得いかねー
01361342006/04/09(日) 23:38:53
やっと原因がわかった_| ̄|○

全角と半角をマルチに変換したときの長さ・・・。。
この時点でうまく行かんわな。土日損したような、さっぱりしたような気分。

#uselib "KERNEL32.DLL"
#cfunc global lstrlenW "lstrlenW" var

sdim po,64
st="バージョン情報"
mes strlen(st):cnvstow po,st:mes lstrlenW(po)
st="HSP test Version 1.0"
mes strlen(st):cnvstow po,st:mes lstrlenW(po)
st="MS P明朝"
mes strlen(st):cnvstow po,st:mes lstrlenW(po)
st="MS UI Gothic"
mes strlen(st):cnvstow po,st:mes lstrlenW(po)
0137デフォルトの名無しさん2006/04/09(日) 23:54:50
おめでとう。
0138デフォルトの名無しさん2006/04/10(月) 04:48:48
削除依頼してあるから
大事な事は書かない方が良い。

↑HSPWikiに載せてorz。
0139デフォルトの名無しさん2006/04/10(月) 15:16:59
どう見てもこっちが本スレなのになんで削除依頼でてんの?
01401092006/04/11(火) 01:54:31
さあ・・・

しかし、hspbreの作者に質問のメール送ったのですが、
2日経っても帰ってこない・・・
0141デフォルトの名無しさん2006/04/11(火) 02:10:41
お客さんじゃないから
0142デフォルトの名無しさん2006/04/11(火) 04:16:45
>>123
今更ですが
bb = "s/.*ID:([\w/+]+)(\<dd| \<a ).*/\1/g"
bb = "s/.*ID:([\\w/+]+)(\\<dd| \\<a ).*/\\1/g"
とか?

ちがうか。。。
01431092006/04/11(火) 04:18:35
>>142
おそらく
\w/+
の/が原因かと。
0144デフォルトの名無しさん2006/04/11(火) 18:23:15
削除依頼すれば必ず削除されると思ってんじゃないか
01451092006/04/12(水) 00:10:53
<[email protected]>:
Sorry, I wasn't able to establish an SMTP connection. (#4.4.1)
I'm not going to try again; this message has been in the queue too long.

orz
0146デフォルトの名無しさん2006/04/12(水) 13:40:37
前に自演ソフト作ったっけな
本当は、無能機能付けたかったんだけど断念。
0147デフォルトの名無しさん2006/04/12(水) 13:42:09
大体正規表現がよくわからない
0148デフォルトの名無しさん2006/04/13(木) 11:34:54
hspbre
HSP3.0〜でも使える?
0149デフォルトの名無しさん2006/04/13(木) 15:11:03
つか、なんでそれを使うのかが訳わか。
hspbre.dllも使うしBREGEXP.DLLも用意しないといけないみたいだし。
3.0ならCOMから正規表現を使うサンプル付いてるしw
01501092006/04/13(木) 16:56:47
#include "hspinet.as"
#define target_num"1136120025"
netinit
neturl "http://game9.2ch.net/test/read.cgi/tcg/"
netload target_num
sdim d_note,5000000
notesel d_note
noteload target_num
bb = "\n"
cc = "\r\n"
newcom oReg,"VBScript.RegExp"
comres result
oReg("Pattern")=bb
oReg->"Replace" d_note,cc
d_note=result
bb = "^[^<].*$|^<[^d].*$|^<d[^t].*$"
cc = ""
comres result
oReg("Pattern")=bb
oReg->"Replace" d_note,cc
d_note=result
bb = ".*ID:([\w/+]+)(\<dd| \<a ).*"
cc = "\1"
comres result
oReg("Pattern")=bb
oReg->"Replace" d_note,cc
d_note=result
notesave target_num
print "完了"

・・・なんか置換が動いていない気がする・・・
0151デフォルトの名無しさん2006/04/13(木) 18:11:48
>>149
COMは嫌いだからHmJreを使ってみるね。
0152デフォルトの名無しさん2006/04/13(木) 22:43:41
>>150
そりゃそうだろ。
0153デフォルトの名無しさん2006/04/14(金) 01:57:13
>>149
なるほど〜そっち使います
01541092006/04/14(金) 02:10:04
>>152
理由がさっぱりわかりません・・・
サンプルどおりに打ち込んでみたんですけど。
0155デフォルトの名無しさん2006/04/14(金) 06:10:24
HSPを始めたばかりのプログラミング初心者なのですが、
どうしても行き詰まってしまったので質問させて頂きます。

まず、いくつかのサイトのURLを変数に代入して(例:url=http://hogehoge.com)
exec url,16として既定のブラウザで開かれるところを、
既定のブラウザではなくブラウザを選択して開きたいのです。
要約するとやりたい事は「ブラウザを選択してサイトを開く」という事なのですが…

dialog "exe",16,"実行ファイル"
として、システム変数refstrに代入されたexe(ブラウザ)で、変数urlを実行良いと考えたのですが、
「指定した実行ファイルで指定したファイルを開く」の様な命令が見つからずに困っています。
neturlやnetrequest、netexecを使うのかとも考えましたが、
やはり取得したファイルをどうやって指定のブラウザで実行するのかがわかりません…。

何か根本的に間違えているのでしょうか…?
0156デフォルトの名無しさん2006/04/14(金) 14:47:06
ググったほうがはえぇ

path = "c:\\Program Files\\Mozilla Firefox\\"
p="http://www.google.co.jp/"
exec path+"firefox.exe "+p
0157デフォルトの名無しさん2006/04/14(金) 15:07:09
>>154
mes bb してみりゃ分かる。
0158デフォルトの名無しさん2006/04/14(金) 15:41:58
>>150
正規表現はよくわかんないけど
3.0a以降

notesel d_note
noteload target_num
bb = "\n"
cc = "\r\n"
newcom oReg,"VBScript.RegExp"
oReg("Pattern")=bb
oReg("Global") =-1
oReg->"Replace" d_note,cc
d_note=oReg("Replace",d_note,cc )
bb = "<[^>]*>"
cc = ""
oReg("Pattern")=bb
oReg("Global") =-1
d_note=oReg("Replace",d_note,cc )
bb = ".*ID:([\\w/+]+)(\\<dd| \\<a ).*"
cc = "\\1"
oReg("Pattern")=bb
oReg("Global") =-1
d_note=oReg("Replace",d_note,cc )
notesave target_num
print "完了"

で少しは、マシじゃない??
0159デフォルトの名無しさん2006/04/14(金) 15:45:12
それよりそのDL先のスレも、なんともwww
01601092006/04/14(金) 16:41:16
http://with2ch.net/cgi-bin/up/src/with2chup1209.lzh

とりあえず改行の変換は成功しましたが、
どうしてもそれ以降の置換の調子が・・・

まあ、どうもこのルーチンの場合だと最初の1つしか引っかからないみたいですが、
その1個すら置換されてないみたいで。
0161デフォルトの名無しさん2006/04/14(金) 17:34:59
109はもう少し自力でなんとかしろ
0162デフォルトの名無しさん2006/04/14(金) 18:22:33
答えは知っててやってるんだよ・・きっと
まっ ネタって事だな。
01631092006/04/14(金) 19:25:17
すいません、
HSP暦15日で。
orz
0164デフォルトの名無しさん2006/04/14(金) 21:34:27
これじゃダメなんかなぁ?(重複チェックは別だけどw

zz = ""
repeat
linesize = instr(note,size,"<dt>") //<dt>タグの位置を基準に
if linesize = -1 : break
size += linesize+1
posID = instr(note,size,"ID:") //ID:の文字を探して
if posID = -1 : break
zz += strmid(note,posID+size+3,9) + "\n" //その後の文字列を抜き出す
loop

len = strlen(zz)
bsave "ID.txt",zz,len
0165デフォルトの名無しさん2006/04/15(土) 05:12:55
3.0のlibソース売るって言ったら幾らなら買う?

2,3千円かな
0166デフォルトの名無しさん2006/04/15(土) 13:34:08
買わね。
金かけるんなら、Cやる。
0167デフォルトの名無しさん2006/04/16(日) 01:56:27
ひ・ま・だ
XPでツールバーのカスタムドローって出来ないな!
0168デフォルトの名無しさん2006/04/16(日) 08:27:43
しかし、あいつは暇なんだなw
0169デフォルトの名無しさん2006/04/17(月) 04:09:53
CLのランタイムリコンパしてみたら
43kだった。/O1/MD
でもレッツupxで圧縮できないorz
APIが使えるみたいだけど
DOS窓出ないようにできないかな
コールバックが付けばAPIで窓造ってウマーw
0170デフォルトの名無しさん2006/04/17(月) 16:48:50
HSPから、iアプリを作る企画が進行中・・・・・・らしい。

0171デフォルトの名無しさん2006/04/18(火) 05:36:52
DoCoMo持ってないし
ウィルコム最強
0172デフォルトの名無しさん2006/04/18(火) 13:07:36
スパムメール削除ソフトってシェアが多いな。

自作が一番使いやすいw
0173デフォルトの名無しさん2006/04/18(火) 16:31:12
ソースくれ
■ このスレッドは過去ログ倉庫に格納されています