C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

cygwinで作成したdllをVisualStudioで利用


(過去ログ 87 を表示中)

[トピック内 1 記事 (1 - 1 表示)]  << 0 >>

■51841 / inTopicNo.1)  cygwinで作成したdllをVisualStudioで利用
  
□投稿者/ デザパタ (17回)-(2010/07/22(Thu) 11:50:24)

分類:[C/C++] 

2010/07/22(Thu) 11:54:27 編集(投稿者)

いつもお世話になっています。

Winanthyのようなanthyを利用したWindowsアプリを作成したいと考えています。
すでにWinanthyがあるじゃないかと意見はもっともですが、いくつかの勉強を兼ねていますのでそっとしといてください。
cygwinで作成したdllをVisualStudio(のCコンパイラ)で利用したいと考えています。
Winanthy(http://www.kmc.gr.jp/proj/winanthy/)のプログラム内に収められている
cyganthy-0.dllとかです。

http://www.sixnine.net/cygwin/translation/faq/faq_3.html#SEC99
を参考にlibファイルを作成し、リンクすることはできましたが、実行時にエラーが出ます。
エラーの詳細はつかめていません。
リンク先の関数を呼ぶとtidtable.cでアクセス違反が起きます。
作成しているプログラムではthreadを使っています。

考えられる原因があれば教えてください。そもそもこのような手法は不可能なのでしょうか。
よろしくお願いします。

確認していること。
・impdef cyganthy-0.def cyganthy-0.dll
でdll→def作成(def内で関数名が出力されていることを確認しました)
・lib /DEF:cyganthy-0.deff /MACHINE:X86 /out:cyganthy-0.lib
 でlibを作成しました。
・プロジェクトファイルのあるフォルダにlibを配置
・プロジェクトのプロパティ→構成プロパティ→リンカ→入力→追加の依存ファイルに$(InputDir)\cyganthy-0.libを追加
・コンパイル及びリンクできることを確認
・cyganthy-0.dllやcygwin1.dllをプロジェクトフォルダに配置
(どこに配置すればよいか迷ったので、念のため、パスの通ったシステムフォルダ、実行ファイルのあるフォルダ、プロジェクトファイルのあるフォルダなど全てに上記dllを配置)

#分類を修正しました
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -