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


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0102
kaiクリップボードにコピーするとランタイムエラーが発生する5解決


kai

リンク

2014/1/2(Thu) 13:49:58|NO.59081

名前作成ソフトを作ったのですが、名前を作成した後にクリップボードにコピーしようとするとランタイムエラーが発生します。

名前作成まではしっかり行くのですが・・・

どうすればいいでしょうか。

myoji ="田中","山田" mei ="太郎","次郎" title "Name Maker" width 230,45 objsize 110,30 pos 120,5:button goto "名前を作成!",*namae pos 0,0 mes "苗字候補数= " + length(myoji) mes "名前候補数= " + length(mei) mes stop *namae namet = myoji(rnd(length(myoji))) + " " + mei(rnd(length(mei))) notesel name noteload "save/name.txt" noteadd namet,0,1 notesave "save/name.txt" goto *namaeg stop *namaeg cls noteload "save/name.txt" noteget name,0 width 330,30 objsize 110,30 pos 0,0:input name,,,12 pos 110,0:button goto "名前を作成!",*namae pos 220,0:button gosub "コピー",*copy stop *copy clipset name dialog "クリップボードにコピーしました。",0,"コピー" return



この記事に返信する


FunnyMaker

リンク

2014/1/2(Thu) 15:14:08|NO.59083

こちらではうまくいきましたが...。

ところで、提示されたスクリプトが動くためには然るべきファイルやフォルダの配置が必要ですよね。
そのままコピーしてエディタに貼り付けても動かない箇所がたくさんあります。

この掲示板の閲覧者が提示されたスクリプトをコピーしてスクリプトエディタに貼り付けてそのまま実行して
正常動作できるようにして質問するか、またはやむをえない場合は必要なファイル構成をzip等でパックして別途アップローダ等を介して
DLしてもらうようにしないと、回答が得にくい場合があると思われます。
作者じゃないと、スクリプトの細かい部分まですぐには把握できないので。主題と関係ない部分でエラーが連発してしまっては、回答者が困ってしまいます。
(今回の場合は易しめのスクリプトなのでまだいい方ではありますが...)


便宜上、私の方でちょっと手を加えて下の様にしてみましたが、これでも動きませんでしょうか?
kaiさんの方で発生したランタイムエラーのエラーコードを教えてもらえると何か分かるかもしれませんが。


#include "hspext.as" myoji ="田中","山田" mei ="太郎","次郎" title "Name Maker" width 230,45 objsize 110,30 pos 120,5:button goto "名前を作成!",*namae pos 0,0 mes "苗字候補数= " + length(myoji) mes "名前候補数= " + length(mei) mes stop *namae namet = myoji(rnd(length(myoji))) + " " + mei(rnd(length(mei))) name = "" : notesel name name_IO = "save/name.txt" exist name_IO if strsize > 0 { ;初回起動時の想定をすべし...(配布パッケージには初期状態でファイルが存在するように作ってあるのだろうけど...) noteload name_IO } else { dirlist var1,"save",5 if var1(0) ! "save" { mkdir "save" } } noteadd namet,0,1 notesave "save/name.txt" goto *namaeg stop *namaeg cls noteload "save/name.txt" noteget name,0 width 330,30 objsize 110,30 pos 0,0:input name,,,12 pos 110,0:button goto "名前を作成!",*namae pos 220,0:button gosub "コピー",*copy stop *copy clipset name dialog "クリップボードにコピーしました。",0,"コピー" return



kai

リンク

2014/1/2(Thu) 18:44:07|NO.59090

すいません。説明を忘れていました。
エラーが発生するのはCtrl+F9で実行ファイルを作成して、実行するとです。



kai

リンク

2014/1/2(Thu) 18:45:45|NO.59091

あと、エラーの時のスクリーンショットをアップロードしておきました。

http://www.fastpic.jp/images.php?file=8908661957.png



FunnyMaker

リンク

2014/1/2(Thu) 20:06:54|NO.59095

Windows8ですか...。
(しかもエラーが想像してたのと違った...。(わかんないかも...))
私は8を持っていないので、正確なアドバイスが出来るかどうかわかりませんが、できるだけ。

とりあえず、作成した実行ファイルが入っているフォルダと同じフォルダに「hspext.dll」がちゃんとありますか?
これが無いとだめなんです。このdllは、HSPのインストールディレクトリの直下にあるので、探し出してコピーしてください。

実は、エディタからの実行時には、このdllがあるのと同じフォルダ内にあるランタイムが起動されているので、特にdllの存在を気にする必要は
ないのですが、本番の実行ファイルを作成した後は、一緒にdllを置いておいてあげないといけません。このdllがロードされて使われます。

他に原因があるかもしれませんが、とりあえずこれを試してみてください。



kai

リンク

2014/1/2(Thu) 20:53:33|NO.59096

ありがとうございます。
実行ファイルと同じフォルダにhspext.dllを置くことにより、問題が改善されました。



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