「なでしこv1」開発掲示板

なでしこv1のバグや要望を書き込む掲示板

(#817) RE:RE:RE:WinAPIと利用するOSの問題 - しらたま (2009-05-23 17:37) /中 議論中
私も2つほど案を考えていました。

1つはクジラ飛行机さんの(2)と同じで、Windowsのバージョン指定を入れるものです。
●hoge(a,b)=DLL("test.dll","int hoge(int a,int b)",[メジャーバージョン[,マイナーバージョン]])
のような感じで、Windowsのメジャーバージョンとマイナーバージョンを省略可能の形で追加できるように。
ただ、クジラ飛行机さんもおっしゃっているように、Win32APIでは良いかもしれませんが、他のDLLには対応できないので、汎用性が低いです。

もう1つは、「DLL」とは別に何らかのキーワード、仮に「DLLIF」、を導入して、
●hoge(a,b)=DLLIF("test.dll","int hoge(int a,int b)")
 ~関数が見つからなかったときの関数の処理内容~
という風に、DLL関数が見つからなかったときに行う処理を、普通の関数のように書くことが出来るようにする、というものです。
これだと、目的のDLL関数に合わせて、その関数が失敗したときの返り値を常に返すようにしたり、エラーメッセージを表示したりなど、柔軟な記述が出来ると思います。
ただ、内部構造として、このような書き方が許容できるかどうかは、確認していないため分かりませんが…

個人的には、出来るものなら後者の方法が採れるといいのですが、みなさんはいかがでしょう。
WinAPIと利用するOSの問題 / area (2009-03-16 21:21) (#561)/ 中 未処理
  RE:WinAPIと利用するOSの問題 / しらたま (2009-05-21 15:44) (#790)/ 中 調査中
    RE:RE:WinAPIと利用するOSの問題 / canot (2009-05-21 18:33) (#796)/ 中 未処理
      RE:RE:RE:WinAPIと利用するOSの問題 / クジラ飛行机 (2009-05-22 22:55) (#813)/ 中 議論中
      RE:RE:RE:WinAPIと利用するOSの問題 / しらたま (2009-05-23 17:37) (#817)/ 中 議論中
        RE:RE:RE:RE:WinAPIと利用するOSの問題 / area (2009-05-25 19:01) (#845)/ 中 未処理
          RE:RE:RE:RE:RE:WinAPIと利用するOSの問題 / area (2009-05-25 19:03) (#846)/ 中 議論中
  とりあえずLuaを使うことで回避可能 / クジラ飛行机 (2009-06-04 00:46) (#869)/ 中 議論中
  使ってみました。 / area (2009-06-04 18:56) (#873)/ 中 議論中
  わからない / kiki (2009-07-19 15:51) (#977)/ 緊急 詳細求む!
    RE:わからない / U D (2009-07-19 21:23) (#983)/ 中 議論中
  alienでも動的リンクでエラーが! / クジラ飛行机 (2009-07-20 15:52) (#993)/ 中 議論中
  聞いてください / mop (2009-07-23 14:47) (#1000)/ 緊急 詳細求む!
    RE:聞いてください / NON (2009-07-24 17:20) (#1002)/ 中 議論中
  LUAする か ナデシコする か / area (2009-07-25 14:48) (#1005)/ 高 議論中
  質問 / nadenade (2013-10-26 19:46) (#2220)/ 緊急 議論中
  とりあえず / クジラ飛行机 (2014-01-28 02:19) (#2255)/ 低 議論中

(#817)へ返信する:

👆お手数ですが、いたずら防止のために、「真夏」の読み方を記入してください。

編集時に使うキーを入力(省略可能)

画像ファイル(最大300KB)を添付可能