HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2010
0624
Rabbit_Footファイルについて8解決


Rabbit_Foot

リンク

2010/6/24(Thu) 17:52:17|NO.33412

ファイルについての質問です。まず、ファイルを作成しますよね。その、ファイルに何かの
情報を付け足したりするのはできないのでしょうか?
また、作ったファイルの中身を見るにはどうすればいいんでしょうか?



この記事に返信する


SYAM

リンク

2010/6/24(Thu) 17:54:46|NO.33413

notesave , noteload , bload , bsave , …

あたりの命令の説明を読みましょう。



lltakashill

リンク

2010/6/26(Sat) 17:54:50|NO.33442

例えば、どんな情報を加えるのですか?



Rabbit_Foot

リンク

2010/6/26(Sat) 22:51:28|NO.33448

>lltakashill
情報といっても、文字を入れたりしたいと思っています。



KA

リンク

2010/6/27(Sun) 08:40:19|NO.33453

>>ファイルについての質問です。
>>まず、ファイルを作成しますよね。
>>その、ファイルに何かの情報を付け足したりするのはできないのでしょうか?
>>また、作ったファイルの中身を見るにはどうすればいいんでしょうか?
>>情報といっても、文字を入れたりしたいと思っています。

「行き詰って質問」というよりは「思いつきで質問」しているような気がします。

作ろうとする努力も感じられません、サンプルを探せば似たようなスクリプトは有
ります、キーワードは既に出ています。

そんな貴方に、ピッタリで高性能な”メモ帳”と言うソフトが、ウィンドウズに最
初から入っています。わざわざ新しく作る必要は無いでしょう。



木村

リンク

2010/6/27(Sun) 16:17:23|NO.33462

 『どんな』文字列データを、『何の』ファイルの、『どこの』地点に書き込むかによって
回答は天と地ほど違ってきます。

 例えばHSP仕様の文字列データ(アスキーコード+シフトJIS形式)のファイルならKAさんが
おっしゃられた通りメモ帳でも十分ですし、
notesel note : noteload "***.txt" : note=note+add : noteadd "***.txt"

でも十分です。  仮に同じ文字列のファイルでもUnicode形式となると書き込みも少しばかり難しく
notesel note : noteload "***.txt" : cnvwtos ascii,note
ascii=ascii+add : cnvstow note,change : noteadd "***.txt"
となります。


 純粋な文字列データでさえ、書き込む対象及び内容によって複数種類の解法があるわけです。
 これがバイナリデータともなれば、データの種類が分からなければ書き込みなど雲をつかむ
ような話となります。

 例えばHSPの実行ファイル内の文字列データに書き込みたいという事になれば、まず.exeの
内部を解析して、書き込みたい文字列の座標を探し出し、実行ファイルに分かる表記方法で
文字列を書き込まなければなりません。

>(こんな話をしたのはRabbit_Footさんが『ファイル』はファイルでも『実行ファイル』の
> データに書き込みをしたいと言いたいのではと危惧しているからです。
> 何故なら
> 『まずファイルの作成をしますよね?』⇒別に実行ファイル以外作る必要は無い
> 『情報を付けたしたりするには?』⇒真っ当な文字列データならメモ帳でどうにかなる
> 『作ったファイルの中身を見るにはどうすれば?』⇒バイナリはメモ帳では理解できない
> と、実行ファイルの事を示唆する文面が、短い文章の中に実に3つも現れているからです)


 ですので重ね重ねですがまず、

『どんな』文字列データを     ⇒『ASCII+SJIS』なのか『Unicode』なのかを明確に 『何の』ファイルの     ⇒『.txt』や『.exe』と言ったファイルの拡張子を明確にして 『どこの』地点に     ⇒ファイル次第なので何とも言えない
書き込みたいのかを改めて明確にしてくださると、回答する側としても助かります。



Rabbit_Foot

リンク

2010/6/27(Sun) 22:53:40|NO.33472

詳細がかかれてなくすみませんでした。メモ帳を使えば?と書かれていただきましたが、
簡単に見れない特定のプログラムを使わないと開けない、UCCAPILOG ファイルのようなものが
いいと思っているんです。わけは、他人に見られてはいけないパスワードをいれたいと。
それなら、作ってから書き込めばいいじゃんと思うかもしれませんが、
なにかの間違いで削除してしまったら、と思うととても・・・
それに、いろいろなパスワードをひとつのファイルに集めておきたくなく・・・
アプリを作ってそれを起動させれば、ひとつのファイルにひとつのパスワードが入ってるいる
ものが出てくる・・・というふうにしたいというわけです。



SATTO

リンク

2010/6/27(Sun) 23:22:28|NO.33473

暗号化処理を自前で用意するならこんな感じで

#const key 1000 //暗号化キー //暗号化するファイルを開く dialog "", 16 if stat == 0 : end FilePass = refstr //サイズを調べてバッファにロード exist FilePass size = strsize sdim buf ,size //もとデータ保存用 sdim encbuf, size //暗号化データ保存用 bload FilePass, buf, size //ファイルロード //暗号化 randomize key //乱数の初期化を指定 ※1 repeat size a = peek(buf, cnt) //bufから1byte取り出す a ^= rnd(255) //乱数とxor演算を行う poke encbuf, cnt, a //encbufに書き込む if (cnt \ 10000) == 0 { title ""+(100*cnt/size)+"%"//進行状況を表示 } await loop //ファイルを保存 dialog "", 17 if stat == 0 : end FilePass = refstr bsave FilePass, encbuf, size end
復号化する場合は同じ暗号化キーで、もう一度読みこめば復号化出来ます



Rabbit_foot

リンク

2010/6/28(Mon) 19:21:27|NO.33487

いろいろとありがとうございます。書いてもらったものを参考にして、自分なりに工夫したら
なんとか自分の理想のものができました。本当にありがとうございました。



ONION software Copyright 1997-2021(c) All rights reserved.