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


HSPTV!掲示板


未解決 解決 停止 削除要請

2011
0415
ひらまるパックしたファイルを展開4解決


ひらまる

リンク

2011/4/15(Fri) 01:35:24|NO.38406

パックしたファイルを展開するだけのプログラムです。
このスクリプトを保存し、同じフォルダ内に「Test.txt」というファイルを作り、
実行ファイル化し、別のフォルダに移動させ、実行させます。

#pack "Test.txt" sdim Buf bload "Test.txt",Buf,-1,-1 bsave "Test.txt",Buf,-1,-1 mes "OK"
私の環境では、正常に動きました。exeファイルと同じフォルダに「Test.txt」が出現します。
しかし、このexeファイルを知人に渡したところ、エラー12が出て開けないと言われたのです。
エラー12は「ファイルが存在しないか無効な名前」だったと思います。
どうやら、以下の場所でエラーが起きるらしいのです。

#pack "Test.txt" dialog "バッファ確保" sdim Buf dialog "パックファイル読み込み" bload "Test.txt",Buf,-1,-1 dialog "パックファイル出力" bsave "Test.txt",Buf,-1,-1 ;どうやらここでエラーが起きるらしい dialog "正常終了" mes "OK"
知人のパソコンはWindows Vistaですが、環境依存の問題とも思えません。
普通に考えれば、私のPCにあって、知人のPCにないファイルが原因だと思いますが、
「Test.txt」はパックされたファイルなので、これが展開できないとなると理由がよくわかりません。
どなたか、可能性でも良いので、ご教授いただけないでしょうか。



この記事に返信する


字がキタナイ

リンク

2011/4/15(Fri) 09:54:56|NO.38408

参考にならない気はしますが、

私の所有しているパソコンは、Xpが2台で、

片方のXPパソコンにはHSP3.2とHSP3.22が、
zipを解凍しただけの状態でのインストールで入っており、

もう片方にはHSPは入っていません。

で、HSPが入っているほうで、そのスクリプトで
実行ファイル自動作成で、実行ファイルを作成。

そのexeファイルを、HSPが入っていないもう一台の
パソコンにコピー。

で、(HSPの入っていないパソコンで)実行させたところ、
ちゃんとtest.txtが作成されました。

ですので、プログラムソースとしては正常ですし、実行ファイルも
正常なようです。

そのことから、原因としては、OSの違いによるものか、システムの
異常の可能性が・・・。



inovia

リンク

2011/4/15(Fri) 11:35:22|NO.38409

フォルダに対するアクセス権限(特に書き込み)がない可能性はないですかね。
試しに権限をなくしてみたところ、bsaveのところでエラー12になりました。

詳しいエラーを取りたければ、GetLastErrorを使ってみるのはどうでしょうか?

権限がない状態では以下のスクリプトは「アクセスが拒否されました。」と表示されます。


#include "kernel32.as" #pack "Test.txt" onerror *error dialog "バッファ確保" sdim Buf dialog "パックファイル読み込み" bload "Test.txt",Buf,-1,-1 dialog "パックファイル出力" bsave "Test.txt",Buf,-1,-1 ;どうやらここでエラーが起きるらしい dialog "正常終了" mes "OK" stop // HSPエラー時にジャンプ *error // 最後のエラーコード(Win32)を取得 GetLastError // バッファ確保 sdim e, 256 // エラーコードから文字列へ変換 FormatMessage 0x1200, 0, stat, 0, varptr(e), 256, 0 // エラー内容表示 dialog ""+e, 1 end



ひらまる

リンク

2011/4/15(Fri) 15:04:08|NO.38412

アクセス権限がない可能性、大いに考えられます。
その場合は、右クリックから「管理者として実行」を押してもらえば良いのでしょうか。
せっかくですから、提示されたスクリプトをexe化し、知人に渡してエラーを確認してもらおうと思います。
その上で、管理者として実行が有効かどうかの判断もしてもらおうと思います。
有力な情報ありがとうございました。
また問題があれば追記します。



ひらまる

リンク

2011/4/16(Sat) 00:27:48|NO.38426

管理者として実行しても同じエラーが出たという報告を受けました。
これ以上の改善方法は考えられませんが、
相手がパソコン初心者なので、なにかを大きく間違えている可能性があります。
今度直接合ったときに相手のパソコンをいじりながら解決策を考えたいと思います。
回答してくださった皆様、本当にありがとうございました。



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