Re: SetUserWindow By .NET版 ( No.1 ) |
- 名前:管理人 日時:2010/09/17 22:26
.NET版のdllを作成するプログラムで HWND 型を使用する関数を弾いていました
弾かないようにプログラムを変更して
SetUserWindow 関数も使えるようにしましたので、よろしければお試し下さい m(_ _)m
http://homepage2.nifty.com/natupaji/DxLib/DxLibDotNet.zip
VC++用のライブラリは今のところdll化されたものはありません
|
Re: SetUserWindow By .NET版 ( No.2 ) |
- 名前:hl 日時:2010/09/21 15:24
一応試してみましたが、WinFormやWPFのGUIウィンドウのハンドルを使用して表示することが出来ましたが、
Formに埋め込んだPictureBoxやPanelのハンドルを使用するとプログラムが落ちてしまい使用不能です。
つまりトップレベルのウィンドウでしか使用できませんでした。
やはり、このライブラリの仕様なのでしょうか?
PictureBoxなどに表示することが出来ればエディタやレンダラなどのツール作りに便利になると思います
|
Re: SetUserWindow By .NET版 ( No.3 ) |
- 名前:xsy 日時:2010/09/23 17:32
横から失礼いたします。
私も、hlさんに同意見でありまして、昔、C++とDxライブラリで、ちょっとしたゲームを作らせていただきましたが、現在はC#しか扱わないため(C++挫折)、ゲームに使えるライブラリがなく、いつか、DXライブラリがC#と親和してくれないものかなあと、考えておりました。
HWND 型はC#でも扱える(読み替えれば)ので、はじかないでいただけると、C#プログラマが何とかして使うと思います。
DXライブラリは相当有用なライブラリですので、開発を応援しております。
もしできるならば、.net用のdllファイルをビルドされたプロジェクトそのものを完全に公開していただけませんでしょうか。
ライセンス上、公開に問題がある部分は、自力でかき集めます。
やはり、公開が難しいようでしたら、制限を外したdllが公開されるとうれしいです。
お願いばかりで、すいません。
|
Re: SetUserWindow By .NET版 ( No.4 ) |
- 名前:管理人 日時:2010/09/25 20:36
> hlさん
メインウインドウ以外を指定すると DirectInput の初期化が失敗するようです
DxLib_Init の前に SetUseDirectInputFlag( FALSE ) ; を実行していただいて
DirectInput を使用しないようにすれば PictureBox などのウインドウハンドルを
SetUserWidnow に渡しても問題なく動作します
> xsyさん
No.1 の書き込みにある .NET版では HWND を引数に取る関数も弾かないようにしてありますので
よろしければお試し下さい
dllファイルをビルドするプロジェクトは .NET版のパッケージの中の Source フォルダの中にある
DxDLL.h DxDLL.cpp DxDLL.def を使用して VisualC++6.0 でコンパイルするだけのものですので、
よろしければご覧になってみてください
|