SQLiteについて

投稿者:shutzen 投稿日:2017/11/23(Thu) 17:08:46 No.1403

こんにちは、たびたび失礼します。
SQLiteデータベースからデータを取得するプログラムから実行可能ファイルを作成して実行すると、「問題が発生しました」のメッセージボックスが表示されて正常に動作しません。実行ファイルにはプラグインを同梱しないで作成しています。なにかうまく回避できる方法はないでしょうか?

◆動作環境情報◆
プロデル 1.5.862
Windows 10(64)
メモリ:7.87 GB


・プログラム
------ここから
「Produire.Data.SQLite.dll」を利用する
SQLiteというSQLiteデータベースを作る

開く画面のフィルタを「Sqliteデータベース|*.db|すべてのファイル|*.*」に変える
開く画面を表示する
もし開く画面のキャンセルなら、終了する
ファイル名は、開く画面のファイル名

SQLiteのデータソースを、ファイル名に変える
SQLiteへ接続する

SQL文は、「
SELECT 姓||名 AS 氏名, 性別名称 AS 性別, 生年月日, 利用者ID, 姓よみがな||名よみがな AS よみがな
FROM 利用者マスタ INNER JOIN 性別リスト ON (利用者マスタ.性別=性別リスト.性別)


SQLiteから、SQL文を取得して結果とする
結果の内容を表示する
-------ここまで

・メッセージの内容
---------------------------
問題が発生しました
---------------------------
BadImageFormatException ファイルまたはアセンブリ 'System.Data.SQLite, Version=1.0.92.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139'、またはその依存関係の 1 つが読み込めませんでした。間違ったフォーマットのプログラムを読み込もうとしました。

場所 Produire.Data.SQLite.SQLiteデータベース..ctor()

[エラー番号2] [はじめ:2行目]
---------------------------
OK キャンセル
---------------------------

常に32ビットで起動するにチェック

投稿者:ゆうと 投稿日:2017/12/17(Sun) 00:37:55 No.1405

こんにちは ゆうとです。

> SQLiteデータベースからデータを取得するプログラムから実行可能ファイルを作成して実行すると、「問題が発生しました」のメッセージボックスが表示されて正常に動作しません。実行ファイルにはプラグインを同梱しないで作成しています。なにかうまく回避できる方法はないでしょうか?

SQLiteが32ビット版で提供されておりますので、プロデルを32ビットモードで起動させる必要があります。
作成した実行可能ファイルが64ビットモードの場合にこのメッセージが表示されます。

プロデルデザイナの「オプション」→「プログラム」にて
「常に32ビットで起動する」にチェックを入れて、改めて実行可能ファイルを作成することで、正常に起動するようになるかと思います。

ご確認ください。

Re: 常に32ビットで起動するにチェック

投稿者:shutzen 投稿日:2017/12/17(Sun) 17:32:12 No.1408

試してみましたらうまく動作しました。
ありがとうございました。

▲ページの先頭へ

- WebForum -