投稿者:ゆっきー 投稿日:2022/11/18(Fri) 14:38:14 No.2803
こんにちは、はじめまして。
現在公開されているサンプルを元に入退室アプリを作成しております。
ICカードリーダーをかざした後にカードを取ると下記のようなエラーが起こります。
参考にさせていただいたサイト
https://wp.utopiat.net/2017/05/171/#more-171
エラーメッセージ1ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
[NFCポート]で受け付ける@NFCポート
エラーが発生しました。
文法に間違えがないか、指定した値が正しいか、ご確認ください。
発生した例外:
インデックスが配列の境界外です。
文法や使い方に誤りがない場合、不具合によって発生したエラーと思われます。申し訳ございません。
[エラー番号901] [はじめ:4行目]
プロデル 1.8.1157 (64)
エラーメッセージ2ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
[FeliCaスマートカード]からIDmを テキストで 取得
エラーが発生しました。
文法に間違えがないか、指定した値が正しいか、ご確認ください。
発生した例外:
値を Null にすることはできません。
パラメーター名:value
文法や使い方に誤りがない場合、不具合によって発生したエラーと思われます。申し訳ございません。
[エラー番号901] [はじめ:6行目]
プロデル 1.8.1157 (64)
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
どのようにすればこのようなエラーが出なくなりますでしょうか?
お忙しい中申し訳ありません。
ご教授のほどよろしくお願いいたします。
プログラムーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
「Produire.PCSC.dll」を利用する
カードIDmは,「」
繰り返す
NFCポートで受け付けしてカードとする
もしカードが「」でなければ
カードからIDmをテキストで取得して読み取り結果とする
もしカードIDmが読み取り結果でなければ
カードIDmは、読み取り結果
読み取り結果を報告する
もし終わり
そうでなければ
もしカードIDmが「」でなければ
「カードが取られました」を報告する
もし終わり
カードIDmは、「」
もし終わり
繰り返し終わり
投稿者:MSXマスタ 投稿日:2022/11/13(Sun) 20:48:25 No.2802
今更Vistaの人もいないと思いますが、
Win10とVistaの動作済みソース載せておきますね。
objCmExというCOM型(「excel.application」)を作る
objCmExからインスタンスを作ってobjXlsとする
objXlsのVisible=「true」 //win10はこっちで動きました
//objXlsのVisible=「-1」 //Vistaはこっちでも動きました
objXlsのWorkbooks:Add()
ご参考になれば幸いです。
投稿者:MSXマスタ 投稿日:2022/11/13(Sun) 13:17:33 No.2801
> プロデルで定義済みの名前を呼び出しできないケースがありました。
> 1.9.1158で実行してください。
おおー、エクセル起動しました。
ありがとうございました。
修正後はAddが「未知語」となっています。
なるほど、前回は「動詞」となっていた記憶があります。
既に何かに割り振られてた?みたいですね。
プロデルは文系の受験英文法マニアの私からすると
非常に分かりやすい開発言語です。うれしいです。
これからもよろしくお願いします。
投稿者:ten 投稿日:2022/11/12(Sat) 17:44:34 No.2800
こちらこそいつも本当にお世話になっています。
ありがとうございます!サンプルコードを試してみました。なるほど、書式つきの方・・・自分のプログラムの方に突っ込んで試してみます。
投稿者:ゆうと 投稿日:2022/11/12(Sat) 17:25:46 No.2799
プロデルで定義済みの名前を呼び出しできないケースがありました。
1.9.1158で実行してください。
投稿者:ゆうと 投稿日:2022/11/12(Sat) 17:24:04 No.2798
こんにちは。お世話になっております。
> GUI部品のテキスト領域等ですが、そのままでは、行がぎちぎちに詰まってしまって見にくいので、できれば、少し行間を広げたいです。
書式付きテキストを使って「選択行間」設定項目を設定する方法はいかがでしょうか。
お試しください。
-------------------
メイン画面を表示する
待機する
メイン画面とは
ウィンドウを継承する
はじめの手順
初期化する
書式付きテキスト1の選択行間は、50
ーー貼り付けた部品に対する操作をここに書きます
終わり
初期化する手順
ーー自動生成された手順です。ここにプログラムを書き加えても消える場合があります
この実質大きさを{428,394}に変える
この内容を「メイン画面」に変える
初期化開始する
書式付きテキスト1という書式付きテキストを作る
その位置と大きさを{47,52,338,299}に変える
初期化終了する
この設計スケール比率を{144,144}に変える
終わり
終わり
--------------------
投稿者:MSXマスタ 投稿日:2022/11/11(Fri) 10:36:36 No.2797
objCmExというCOM型(「excel.application」)を作る
objCmExからインスタンスを作ってobjXlsとする
objXlsのVisible=「-1」
objXlsのWorkbooks:open(「c:\test\test.xlsx」)
こんな感じです。
助詞「の」と「:」の違いは分からないけど
openはエラーなく開けます。
Addは何でダメなんだろう、、、。不思議だ。
投稿者:MSXマスタ 投稿日:2022/11/11(Fri) 09:48:42 No.2796
ソース的には
objCmExというCOM型(「excel.application」)を作る
objCmExからインスタンスを作ってobjXlsとする
objXlsのVisible=「-1」
objXlsのWorkbooksのAdd()=「」
になりました。
助詞「の」で行けました。
ただ、エクセルを新規でオープンする際にadd()で
エラー
「指定した式が、配列または辞書ではないため、要素番号を指定することはできません。」
が表示されてしまいます。もう少し研究してみます。
一応、Visibleは出来たのでありがとうございました。お騒がせしました。
投稿者:MSXマスタ 投稿日:2022/11/10(Thu) 13:40:48 No.2795
サンプルを見て、COMでPDFが見れるのであれば、
「エクセルも出来るのでは?」と思いトライしてみましたが、
Visibleの部分はどうすれば良いのでしょうか?以下がソースです
objCmExというCOM型(「{00024500-0000-0000-C000-000000000046}」)を作る
objCmExからインスタンスを作ってobjXlsとする
objXls:Visible(「{True}」)
3行目の部分をobjXls:Visible()「{True}」
しても
呼び出しのターゲットが例外をスローしました
となって無理なのかとも思っています。
プロデルの機能でエクセルを呼び出せるのは知っているのですが、
向学のためCOMでも出来ないかと思ってやってみました。
お忙しいところご教授下さい
投稿者:ten 投稿日:2022/11/08(Tue) 18:29:48 No.2793
お世話になります。
GUI部品のテキスト領域等ですが、そのままでは、行がぎちぎちに詰まってしまって見にくいので、できれば、少し行間を広げたいです。
ウィンドウ作成画面で設定項目に「行間」があったのでその値をいじってみましたが、何かが変わったようにも見えず・・・
もし、何か方法があるのであれば、お教え下さい。
- WebForum -