高分急求解!關於DLL的問題


不知那位大蝦用過這個DLL : mrma3emu.dll(是雅馬哈公司用來播放mmf音樂文件的)
如果能告訴我這個dll里面的一些函數的參數結構就幫了我大忙了!!

8 个解决方案

#1


C:\Program Files\Microsoft Visual Studio\VC98\Bin
下的dumpbin.exe可以幫助你的?

#2


怎么使用的?

#3


在命令行中DUMPBIN/?
弄明白怎么用千萬要告訴我啊,呵呵。

#4


Dumpbin看不到函數參數吧?

#5


dependies

#6


http://bible.younet.com/files/2003/06/01/38961.shtml
不知道對你有沒有用。

#7


http://bible.younet.com/files/2003/06/01/38961.shtml

LG ContentsBank軟件的DIY 
 
Avenger 2003-06-01 20:47:11 
 
相信大家都和我一樣,經常使用LGContentsBank(CB)或者CB2下載鈴聲和圖片,真的很方便,但有一個問題始終困擾着我,就是CB軟件有時候試聽的效果和傳到手機上的並不一樣,樂器發生了變化.
前一陣看到網上在討論YAMAHA的播放器MidRadio Player,說用它來聽MMF,所聽到的音質就是你最終刷到手機里的音質,昨天安裝了一個,效果確實和傳到手機上一樣,那么,有沒有辦法也讓CB軟件達到同樣的效果呢?到安裝目錄查看了一下文件,發現兩個軟件都是靠調用DLL來實現MMF播放的,它們之間會不會有共同點?說干就干,立即對兩個軟件的DLL文件進行對比:
MidRadio Player 調用mrma3emu.dll大小:676K 開發商:YAMAHA CORPORATION 版本:1, 0, 0, 2009
CB調用ma3smwemu.dll 大小:872K 開發商:YAMAHA CORPORATION 版本:1, 0, 0, 2002
通過反向工程查看,兩個DLL都有下面的導出函數
0000000D10004EE0MaSound_Close
0000000610004D90MaSound_Control
0000000310004D00MaSound_Create
0000000F10004F40MaSound_Delete
0000000110015110MaSound_DeviceControl
0000001010005270MaSound_End
0000000210004CE0MaSound_Initialize
0000000410004D20MaSound_Load
0000000510004D60MaSound_Open
0000000A10004E50MaSound_Pause
0000000B10004E80MaSound_Restart
0000000810004DF0MaSound_Seek
0000000710004DC0MaSound_Standby
0000000910004E20MaSound_Start
0000000C10004EB0MaSound_Stop
0000000E10004F10MaSound_Unload
進一步確認,查看MaSound_Start調用部分代碼(匯編)
Exported fn(): MaSound_Start - Ord:0009h
:10004DD0 8B0D58DE1310mov ecx, dword ptr [1013DE58]
:10004DD6 83C8FFor eax, FFFFFFFF
:10004DD9 83F901cmp ecx, 00000001
:10004DDC 751Cjne 10004DFA
:10004DDE 8B442410mov eax, dword ptr [esp+10]
:10004DE2 8B4C240Cmov ecx, dword ptr [esp+0C]
:10004DE6 8B542408mov edx, dword ptr [esp+08]
:10004DEA 50push eax
:10004DEB 8B442408mov eax, dword ptr [esp+08]
:10004DEF 51push ecx
:10004DF0 52push edx
:10004DF1 50push eax
:10004DF2 E8C92F0100call 10017DC0
:10004DF7 83C410add esp, 00000010
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:10004DDC(C)
|
:10004DFA C3ret
兩個文件的代碼如出一轍,這說明,兩個軟件的DLL是可以通用的。
試驗:
進入CB安裝目錄,把原來的ma3smwemu.dll更名為ma3smwemu.dll.BAK,COPY MidRadio Player軟件的mrma3emu.dll文件到CB安裝目錄,更名為ma3smwemu.dll。
啟動CB軟件,操作一下,一切功能正常,試聽效果和傳到手機上一樣,成功了。
咳,早知道這么簡單就直接COPY過來了 費了我一上午的時間才跟蹤到代碼 :-)
結論:
LG的CB軟件是靠調用YAMAHA的DLL來實現鈴聲試聽的,DLL和MidRadio Player的通用,直接COPY MidRadio Player軟件的DLL過來替換就能達到一樣的效果。
感興趣的朋友可以到下面的地址下載下載:
http://www.473200.com/avenger/cb2_ch.rar 
壓縮包里有CB2.EXE和更新后的DLL,直接解壓到安裝目錄覆蓋原來的程序就可以了。CB2.EXE我進行了漢化,水平有限,難免會有錯誤,請各位見諒。
另外,現在CB2軟件都存在一個問題,就是在圖片模式下直接點選目錄會出現非法操作,出錯的原因我已經找到了,但找不到解決的辦法,希望有能力的朋友和我聯系,共同解決,讓軟件更完美。shuailutta@hotma

#8


感謝上面的朋友們,以上的資料我都有了,但是好像不能有什么實質的幫助,因為現在工程特別急,我不知道聯系yamaha是否有可能拿到這個dll的一些詳細資料,正在試圖聯系中,如果有朋友有現成的東西的話,那是最好不過了,我現在正在看一些導出的匯編代碼,郁悶中!

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com