トップページ⇒linux
56コメント16KB

Windows用DLLをLinuxで使う手はないのか!!!

■ このスレッドは過去ログ倉庫に格納されています
0001宴会部長 島 田吾作NGNG
無理は承知です。仕事なんです。泣きそうです。

ちょっと意味で違いますけど、
値渡して、計算結果が返ってくるWindows用のDLL、
これをLinux上のC/C++で使えないかという要求が...

もちろん元ソースなどありません;;
0002login:PenguinNGNG
ワイン
0003宴会部長 島 田吾作NGNG
Vineで使えるんですか???(藁 にもすがる思い
0004宴会部長 島 田吾作NGNG
って、Wineですね...

あれってWindowsエミュレータであって、
Linux本体の動きは止まらないのでしょうか...

言うなれば、daemonからDLLを呼びタひ...鬱
0005login:PenguinNGNG
ネタでしょ?

VineとWineを間違えるあたりそうとしか思えない。。。。

「Wine Is Not Emu」ってことで

==============終了!!===============
0006宴会部長 島 田吾作NGNG
ネタじゃないですよー;;

たしかに他人から見たらネタですけど...
0007宴会部長 島 田吾作NGNG
penguinさんの叱咤激励を受けて
Wineについて、少しはマシな知識を勉強しました。

厨房です。恥ずかしいです。

でも、そんなことで挫けていられない...あと1month
0008宴会部長 島 田吾作NGNG
以下の意見も...
-----
1.2: Wine という言葉は何を表しているのですか?

Wine という言葉は次の2つのことのうちのどちらかを指しています。
WINdows Emulatr から Wine とするか、 あるいは Wine はエミュレーターで
はないという意味で Wine Is Not an Emulator。両方とも正しいので、どちら
を使うかはあなたの好みです。
0009login:PenguinNGNG
できもしない仕事を取ってくるような会社とはおさらばしなさい
0010login:PenguinNGNG
>>8
両方の意味があることは知ってましたよ
でも、わざとそう書いた。

揚げ足取るより作業を先に進めたほうがいいんでないの?
とりあえず、WinのDLL使う方法としてWineって方法が見つかったんだから
その線で調べてみないの?

その前に、そのDLLを使うのは必須なん?
次に、必須だとしてそのDLLはWineに実装されてるの?
んで、プログラムは俺はかけないけど、DaemonからWineを呼び出すことはできるの?

それとは別に必須でなかった場合そのDLLと同等のことをPerlなどで実装することはできないの?

ほら、やることいっぱいだ(藁
0011login:PenguinNGNG
というか、どのDLLか逝ってくれよ! 世界は広いぜ。
0012宴会部長 島 田吾作NGNG
>10

スマン 決して揚げ足ではない。

自分が厨房だったことを恥じて、
Wineの真の姿を知ったことに驚いただけ...

>11

まず、最初にありきは、
複雑な...自分では1年かかっても考えることが不可能な
計算をしてくれるDLLがあると。。。

で、色々調べたら、
wine経由でdllから返事もらった人がいるような
検索結果がgoogleで出たから、

いま、必死に調べてます。
でも、X入ってない;;>サーバ
(ただし、実現出来るんなら、入れさせる)
0013login:PenguinNGNG
Linuxでも強力な数値演算libっていくつもあると思うんだけど。
どーしてもそのDLLじゃないとダメ?
特定の業務専用に、猛烈にカスタマイズされてるとか?
0014宴会部長 島 田吾作NGNG
>>13

残念ながら、数値演算というジャンルではないんです...
詳細が言えないのは企業戦士の性でありますが、
入力に対して、とってもユニークな方法で結果を返してくれます。

win/dll提供以外の方法(ソース提供、Linux用にリコンパイル)を
一切拒む輩のせいで...ahh(つーか開発者逃げてんじゃないのか)
0015login:PenguinNGNG
DLL自体をLinuxに移植する方が早いです。
0016login:PenguinNGNG
詳細を言ってくれんと、どうにもならんがな。
0017login:PenguinNGNG
ソース盗むほうが早いです。
0018login:PenguinNGNG
     | ̄ ̄ ̄ ̄ ̄ ̄|
     | 早期終了 |
     |______|
     ∧,,∧ ||
    ミ,,゚Д゚ミ..||
    ミ   づΦ
  〜ミ  ミ
    U .U
0019宴会部長 島 田吾作NGNG
ソース盗みてー

と思って、さっき開発者らしき人間を特定して
直接メールした 爆
0020login:PenguinNGNG
金で解決しろよ。
仕事なんだろ?
0021login:PenguinNGNG
WinにCygwinをインストールして、
dllをリンクした実行可能形式を作って(hoge.exe)、
LinuxでWine($ wine hoge.exe)

つーのをやったことがある。
(簡単なものだったけど、でけた)
0022login:PenguinNGNG
>>21
> dllをリンクした実行可能形式を作って(hoge.exe)
これは、すたちっくりんくのようなものってことですか?
0023login:PenguinNGNG
PEACE とかは?
http://chiharu.haun.org/peace/ja/

まだまだほとんど動いてないみたいだけど。
Linux でもないけどね。
0024login:PenguinNGNG
  l || l
Λ_Λ
( ・∀・)
( ∩∩)
       さげ♪
0025login:PenguinNGNG
22の人へ
そそ、んなかんじ(だったかな?)。

dlltoolだのdefファイルだのと格闘したような記憶がある。
http://www10.u-page.so-net.ne.jp/fa2/riue-s/cygwin-ug-net/dll.html
0026login:PenguinNGNG
つーか、動画再生ツールとかには、 dozeの DLLを使うやつが
一杯あったろ。
http://divx.euro.ru/ あたりか。
0027login:PenguinNGNG
1. DLL実行専用Windows機を用意して、
  Linux側からはRPCで呼ぶ。

2. Wine上のプロセスに対してRPC呼び出し可能であれば、
  1.を同居させる

ってだめかしらん。
そのDLLがWindowsにまったく依存しないようなものなのであれば、
Windows上でモジュール該当部をdis-assembleして、
その結果をLinux上のソースに張る、というのはどうだろうか?
0028login:PenguinNGNG
Linux機とWin機をLANで繋げばいいじゃん。
0029宴会部長 島 田吾作NGNG
>>27

なるほど...そのDLLを呼ぶRPC通信ウェアを作れと。
Goodそうだ...がんばってみよ;;
0030login:PenguinNGNG
その「DLL実行専用Windows機」ってのをVMwareで作れば、
1台のLinux機だけですんでしまう…ってのは、ナシ?

でも、それが純粋に計算だけのDLLなら、
Wine上で実行させられると思うけどな。
漏れなら、たぶんそうする。
0031login:Penguin NGNG
Win上のオブジェクトファイル形式ってPEっていうらしいけど、
これの資料ってあんまり見ないよね。どうして?
0032login:binNGNG
>>31
MSDN Libraryに載ってるぞ。
http://msdn.microsoft.com/library/
0033宴会部長 島 田吾作NGNG
Linux側にXは入れちゃダメだそうで;;

RPCでがんばってみてます。
0034login:PenguinNGNG
enfle とか参考にならないかな。。
http://enfle.fennel.org/
SUSIE のプラグインが使える画像閲覧ソフトだYO!

なんか、ソースに wine というディレクトリがあるのがちょっと気になるが(笑
0035login:PenguinNGNG
優良スレになるかな?
>>1 がんばれYO!
0036宴会部長 島 田吾作01/08/27 12:41ID:tsafJUDg
上から、2台構成は×、Xも×と。。。

サーバをNTにする動きも...おいおい;;
>>26あたりから、また頑張ってみます。
0037 01/08/27 13:15ID:Uofeyeso
>値渡して、計算結果が返ってくるWindows用のDLL、
>これをLinux上のC/C++で使えないかという要求が...

あらゆる組み合わせで値を渡して、その計算結果を全部テーブルに
格納する。これでDLLは不要。
0038login:Penguin01/08/27 16:01ID:L9JXua7U
32bit intを二つ使っただけで破綻することも分からない厨房 >>37

そういや、「落穂拾い」で
「なんで全ケース確認しなかったんだ」
なんて食って掛かる老人もいたよナ・・
0039login:Penguin01/08/27 16:12ID:wi3879hI
> >>26あたりから、また頑張ってみます。

http://xine.sourceforge.net/には、

$ cd xine-lib-0.5.1/src/libw32dll
$ ls
Makefile.am Makefile.in w32codec.c w32codec.h wine/

ちゅう、そのものずばりのブツがあるでよ。
0040宴会部長 島 田吾作01/08/27 20:36ID:tsafJUDg
>>39

thx
解析中;;
0041login:Penguin01/08/28 03:47ID:No2uniDw
ところで成功したら「実はこういうの作ってたんだよーん」
って明かしてくれるの?
0042宴会部長 島 田吾作01/08/28 09:37ID:R4BEBsv.
>>41

成功したらね...
0043名無しさん@Emacs01/08/28 10:10ID:v9Ioy6TM
Kylixも DLL 使うのに libwine とか使ってたんじゃなかたけ。
あと最近は Konqueror で ActiveXコントロールが使えるとかいう
話がでたけど、あれも Wine 使ってんでしょうね。
0044login:Penguin01/08/29 02:25ID:oFwcR7mo
Linuxじゃなきゃダメ?
NetBSDにはPEACEというのがあるんだけれども…。
0045login:Penguin01/08/30 09:35ID:4e1ZVBkI
>>44
NetBSDでしか動かないんでしょーか。
FreeBSDでもダメでしょーか。
それってバイナリ配布のみなんでしょーか。
NetBSDでしか動かないなんて、初耳なんですがどうでしょーか。
0046名無しさん@XEmacs01/08/30 13:54ID:A.tlE2D.
>>45
FreeBSD にも移植されてるけど NetBSD で動かす方が楽。

PE/COFF フォーマットのバイナリを動くようにカーネルに機能を
追加しないといけないからLinux でPEACE動かすにはそれなりの手間がかかる。
具体的には binfmt_elf.c 相当のものを用意する必要がある。
0047sage01/08/30 23:55ID:Cfn1Bj..
>1
そのDLL内部から他のAPIを呼んでなければ、ある程度の逆アセンブル&解析で
UnixからDLLをコールできると思われ。
DLLの関数エントリの取得とスタック調整関連を自作すればなんとかなりそう。

内容から推測して、msvcrt.dllなんかを使ってそうだから無理かな?
00484701/08/30 23:56ID:Cfn1Bj..
sage損ねた。スマソ。
0049login:Penguin01/08/31 07:25ID:IfKNytdM
>>47
本当に純粋なアルゴリズムを提供してるDLLでなければ、まずAPI呼んでると思う。
そうでなかったとしてもCランタイム呼んでると思う。
(そんくらいのものだったら書き起こしてもいいかも知んない)
多分msvcrt.dllへの依存は有り気・・・
安全策でRPCかな。
0050   01/08/31 10:56ID:36GQ3rAc
そんなことすでに↓のすレッドにみんな書いてあるよ。

http://piza2.2ch.net/test/read.cgi?bbs=jisaku&key=999071335

わざわざくだらないスレッドもうひとつ作るな。アホタレ
0051login:Penguin01/08/31 11:11ID:yFxq13i2
>> 50
誤爆?
0052   01/08/31 12:10ID:36GQ3rAc
馬鹿。
そういうことは、下のスレでかけや
>>51

は?

なんだこのチンカス野郎は?


そんなことすでに↓のすレッドにみんな書いてあるよ。

http://piza2.2ch.net/test/read.cgi?bbs=jisaku&key=999071335

わざわざくだらないスレッドもうひとつ作るな。アホタレ
0053宴会部長 島 田吾作01/08/31 16:46ID:dkRxMJCg
1です。

結局、その会社提供のDLLは使用しないことになり、
同じような物をソースで提供してくれる会社と協力することに。

しかし、すでに前の会社から提供されていた別機能の
ソースを解析して、移植コーディングを完了した部分は
全部パー。

とは言っても、RPCしたりWin32APIemuするよりは
1/3作り直したほうがまだマシというものです。

皆様には大変貴重な意見を頂き、感謝しています。
どうもありがとうございました。

引き続き、
Win32APIエミュレーションによるDLL利用は、
個人的に非常に興味がありますが、
これにて、このスレッドは倉庫行きの運命でしょう。。。
0054     01/10/02 11:52ID:9Csi/PZg
確かに、Windows用のデバイスドライバーが使えたら便利だと
思うことも多いよ。
0055login:Penguin01/10/08 00:13ID:YbWXlqR2
>>1さん
大変だねー。
やっぱどこのソフトハウスも無茶やってんだねー。
お互いがんばろーな。
0056login:Penguin02/02/06 22:13ID:DRgSQiPT
age
■ このスレッドは過去ログ倉庫に格納されています