Quantcast
Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
    1. Welcome to GTAForums!

    1. GTANet.com

    1. GTA Online

      1. Los Santos Summer Special
      2. The Diamond Casino Heist
      3. Find Lobbies & Players
      4. Guides & Strategies
      5. Vehicles
      6. Content Creator
      7. Help & Support
    2. Red Dead Online

      1. Frontier Pursuits
      2. Find Lobbies & Outlaws
      3. Help & Support
    3. Crews

    1. Red Dead Redemption 2

      1. PC
      2. Gameplay
      3. Missions
      4. Help & Support
    2. Red Dead Redemption

    1. Grand Theft Auto Series

    2. GTA 6

      1. St Andrews Cathedral
    3. GTA V

      1. PC
      2. Guides & Strategies
      3. Help & Support
    4. GTA IV

      1. The Lost and Damned
      2. The Ballad of Gay Tony
      3. Guides & Strategies
      4. Help & Support
    5. GTA Chinatown Wars

    6. GTA Vice City Stories

    7. GTA Liberty City Stories

    8. GTA San Andreas

      1. Guides & Strategies
      2. Help & Support
    9. GTA Vice City

      1. Guides & Strategies
      2. Help & Support
    10. GTA III

      1. Guides & Strategies
      2. Help & Support
    11. Top Down Games

      1. GTA Advance
      2. GTA 2
      3. GTA
    1. GTA Mods

      1. GTA V
      2. GTA IV
      3. GTA III, VC & SA
      4. Tutorials
    2. Red Dead Mods

      1. Documentation
    3. Mod Showroom

      1. Scripts & Plugins
      2. Maps
      3. Total Conversions
      4. Vehicles
      5. Textures
      6. Characters
      7. Tools
      8. Other
      9. Workshop
    4. Featured Mods

      1. DYOM
      2. OpenIV
      3. GTA: Underground
      4. GTA: Liberty City
      5. GTA: State of Liberty
    1. Rockstar Games

    2. Rockstar Collectors

    1. Off-Topic

      1. General Chat
      2. Gaming
      3. Technology
      4. Movies & TV
      5. Music
      6. Sports
      7. Vehicles
    2. Expression

      1. Graphics / Visual Arts
      2. GFX Requests & Tutorials
      3. Writers' Discussion
      4. Debates & Discussion
    3. Gangs

    1. Announcements

    2. Support

    3. Suggestions

Alpha Ice

.dll Merging/Combining

Recommended Posts

Alpha Ice

As you probably know already, many gta mods use .dll files

 

The problem is that you can't use two .dll files with the same name.

 

The point of this topic is to gather as much information as possible on how to combine two .dll files with the same name so that the .exe file can read them both or any other way around this problem.

 

(Example)

Enb for Vice City uses a d3d8.dll file

 

"Xbox like graphics" for vice city also uses a d3d8.dll

 

The two files work differently so you can't just use one of the d3d8.dll files for both mod's to work.

 

Also if you rename one of the .dll files,

It won't work !

 

This problem has bothered me for years now and I still haven't found any solutions that actually WORK.

 

Any information on how to solve this issue would be greatly appreciated.

Thanks in advance

 

-Alpha Ice

Edited by Alpha Ice

Share this post


Link to post
Share on other sites
xNCx

First of all I think this should be posted in the modding section, because this is not only VC related.

 

Secondly, this is an issue in fact. The file has to be called d3d8, because it is somehow related to DirectX 8 used in VC and used for graphic tweaks. I don't know if this can be fixed, what I can only suggest, you can try to use DLL injector. Run VC, then open DLL injector, highlight VC, select the not loaded d3d8 and click "inject".

http://www.dllinjector.com/

 

But as I said, this is just my wild guess, I have no other idea.

Share this post


Link to post
Share on other sites
gtafan2u

Request your topic to be locked and make a new one here first so that you can get your answer quickly because the ones that uses this section are mostly players not modders. Another thing I want to say, to fix your problem contact the original modder of your mod so that he will make a dll with a different name. Some other mods using d3d8.dll- speedometer mod, SA hud mod etc. No other modder other than the original maker will be able to fix those dlls because doing that needs the source and you cannot directly edit a dll file. :santa:

Edited by gtafan2u

Share this post


Link to post
Share on other sites
The Hero

With the ultimate asi loader it should be possible to load more dlls. You give them the extension asi (file name doesn't matter) and put them inside the scripts directory. Your scripts\global.ini should be

 

[GlobalSets]LoadFromScriptsOnly=1
I haven't tested it, but I don't see why it shouldn't work. Edited by The Hero

Share this post


Link to post
Share on other sites
gtafan2u

I don`t thinks there are any solution expect changing the dll name and making it`s using program compatible to that. Dll injector and ultimate asi loader will work if you are using a standalone dll but by your description I thinks there is another program that uses it, so you only have the above option left. :santa:

Share this post


Link to post
Share on other sites
The Hero

What? What the hell is a standalone dll? A dll is always loaded by a running process.

 

EDIT: To clarify again: whether this works or not probably depends on what the code in the .dll does. I'm no windows-expert and I don't understand all this dll-business very well anyway, but I think it's worth a try.

Edited by The Hero

Share this post


Link to post
Share on other sites
gtafan2u

What? What the hell is a standalone dll? A dll is always loaded by a running process.

 

EDIT: To clarify again: whether this works or not probably depends on what the code in the .dll does. I'm no windows-expert and I don't understand all this dll-business very well anyway, but I think it's worth a try.

Yes he should give your and xNCx method a try first before doing anything other. :santa: But here he says that if he changes that dll file name then it doesnot works so, it means that there is another program that uses it to do the required task otherwise it should have loaded even after changing the name.

Here the standalone dll means a script designed to do some tasks in the game, it doesnot requires any other program to work like an exe or another dll. Like-> Speedometer mod for Vice City. But there are some other dlls too that are made for some other programs as an external code program, in those dlls case the program using it searchs for that particular dll name, if it doesnot finds it then it is unable to do the task. Like-> Vice City SCM coding helper. :santa:

Edited by gtafan2u

Share this post


Link to post
Share on other sites
The Hero

I'll explain how this works: GTA loads d3d8.dll. It will first search the directory it was started from and if it doesn't find it there will search the windows system directories (this is where the real d3d8.dll is). Normally it just loads the d3d8.dll from the windows directory, but you can put your own d3d8.dll into the game directory to make it load that instead. When you do that you have to provide the functionality of d3d8.dll yourself however, but this is no problem, you load the real d3d8.dll and redirect the functions it exports. When you rename d3d8.dll to say foobar.dll it won't be loaded by the game of course since it just doesn't load foobar.dll. Injecting custom dlls only works with those that are loaded by the exe, so you can't choose an arbitrary name. The ultimate asi loader can be injected as a number of dlls (dinput8.dll e.g.). It then loads other dlls (with the extension .asi) from the game (you should turn that off however, see my above post) and scripts directories.

 

I don't understand much of the rest of your post but I hope my explanation was clear (and correct :/)

Edited by The Hero

Share this post


Link to post
Share on other sites
gtafan2u

I'll explain how this works: GTA loads d3d8.dll. It will first search the directory it was started from and if it doesn't find it there will search the windows system directories (this is where the real d3d8.dll is). Normally it just loads the d3d8.dll from the windows directory, but you can put your own d3d8.dll into the game directory to make it load that instead. When you do that you have to provide the functionality of d3d8.dll yourself however, but this is no problem, you load the real d3d8.dll and redirect the functions it exports. When you rename d3d8.dll to say foobar.dll it won't be loaded by the game of course since it just doesn't load foobar.dll. Injecting custom dlls only works with those that are loaded by the exe, so you can't choose an arbitrary name. The ultimate asi loader can be injected as a number of dlls (dinput8.dll e.g.). It then loads other dlls (with the extension .asi) from the game (you should turn that off however, see my above post) and scripts directories.

 

I don't understand much of the rest of your post but I hope my explanation was clear (and correct :/)

Yes you understood correct..... :santa:

Share this post


Link to post
Share on other sites
Alpha Ice

Thanks for the reply's.

 

Firstly: I tried using ultimate asi loader and renaming the .dll to .asi and putting it in the scripts folder but the mod needs to load before the splash screen so that wont work,

And I know for a fact that it is possible because Iv'e seen others using both mods that require d3d8.dll.

 

Secondly: I found this forum that claims to show you how to do it: http://gtaforums.com/topic/173198-rel-vice-city-dll-linker/

But I couldn't make any sense of it and just ended up pulling my hair out after trying for about 2 hours straight.

 

I am no pro at coding but I am no amateur either and I simply couldn't make any sense out of it.

(The instructions are very unclear) :panic:

 

Give it a try yourselves, let me know if you got anywhere with it :r*:

Oh..

And dll injector doesn't work either.

Edited by Alpha Ice

Share this post


Link to post
Share on other sites
gtafan2u

Thanks for the reply's.

 

Firstly: I tried using ultimate asi loader and renaming the .dll to .asi and putting it in the scripts folder but the mod needs to load before the splash screen so that wont work,

And I know for a fact that it is possible because Iv'e seen others using both mods that require d3d8.dll.

 

Secondly: I found this forum that claims to show you how to do it: http://gtaforums.com/topic/173198-rel-vice-city-dll-linker/

But I couldn't make any sense of it and just ended up pulling my hair out after trying for about 2 hours straight.

 

I am no pro at coding but I am no amateur either and I simply couldn't make any sense out of it.

(The instructions are very unclear) :panic:

 

Give it a try yourselves, let me know if you got anywhere with it :r*:

Oh..

And dll injector doesn't work either.

That's why I was saying that there is no solution expect contacting the original author.

Share this post


Link to post
Share on other sites
Alpha Ice

 

Thanks for the reply's.

 

Firstly: I tried using ultimate asi loader and renaming the .dll to .asi and putting it in the scripts folder but the mod needs to load before the splash screen so that wont work,

And I know for a fact that it is possible because Iv'e seen others using both mods that require d3d8.dll.

 

Secondly: I found this forum that claims to show you how to do it: http://gtaforums.com/topic/173198-rel-vice-city-dll-linker/

But I couldn't make any sense of it and just ended up pulling my hair out after trying for about 2 hours straight.

 

I am no pro at coding but I am no amateur either and I simply couldn't make any sense out of it.

(The instructions are very unclear) :panic:

 

Give it a try yourselves, let me know if you got anywhere with it :r*:

Oh..

And dll injector doesn't work either.

That's why I was saying that there is no solution expect contacting the original author.

 

He hasn't been online since 2007....

So that's not really possible,

Just give me some time, i'l figure out a way around this.........

Hopefully.

Share this post


Link to post
Share on other sites
Shmoopy

Open your d3d8.dll file using Cheatengine (File->Open file) then select String in the Scan Type dropbox, type d3d8 and hit the First Scan button:
You will see 4 results, right click on each one of them and select Change value of selected addresses, rename to whatever name you like ( I strongly suggest ball), Exit Cheat engine (Changes are applied permenantly in case you ran the software in Administrator mod).

Now rename your file to ball.dll or whatever name you chose.

Tada!



P.S: I assume that you ran Cheat Engine in Administrator mode, otherwise windows wont let you do sh*t.

If the d3d8.dll is of Enb Series, do this:

In enbseries.ini you have this:
[PROXY]
EnableProxyLibrary=0
InitProxyFunctions=1
ProxyLibrary=

Write it like this:
[PROXY]
EnableProxyLibrary=1
InitProxyFunctions=1
ProxyLibrary=d_d3d9.dll

---RENAME THIS OTHER d3d9.dll TO d_d3d9.dll.---
For me it works.

Edited by Shmoopy

Share this post


Link to post
Share on other sites
Alpha Ice

 

Open your d3d8.dll file using Cheatengine (File->Open file) then select String in the Scan Type dropbox, type d3d8 and hit the First Scan button:

You will see 4 results, right click on each one of them and select Change value of selected addresses, rename to whatever name you like ( I strongly suggest ball), Exit Cheat engine (Changes are applied permenantly in case you ran the software in Administrator mod).

 

Now rename your file to ball.dll or whatever name you chose.

 

Tada!

Done everything as you said and the game simply wont launch now.

Here is a link to the d3d8.dll (1mb) : http://www.mediafire.com/download/0p5wy1n3tjgenm8/Allah.rar

Will you give it a try yourself and upload it if you can get it to work with enb ?

I would be very grateful.

Thanks.

Edited by Alpha Ice

Share this post


Link to post
Share on other sites
gtafan2u

 

Open your d3d8.dll file using Cheatengine (File->Open file) then select String in the Scan Type dropbox, type d3d8 and hit the First Scan button:

You will see 4 results, right click on each one of them and select Change value of selected addresses, rename to whatever name you like ( I strongly suggest ball), Exit Cheat engine (Changes are applied permenantly in case you ran the software in Administrator mod).

 

Now rename your file to ball.dll or whatever name you chose.

 

Tada!

 

 

 

P.S: I assume that you ran Cheat Engine in Administrator mode, otherwise windows wont let you do sh*t.

 

If the d3d8.dll is of Enb Series, do this:

In enbseries.ini you have this:

[PROXY]

EnableProxyLibrary=0

InitProxyFunctions=1

ProxyLibrary=

 

Write it like this:

[PROXY]

EnableProxyLibrary=1

InitProxyFunctions=1

ProxyLibrary=d_d3d9.dll

 

---RENAME THIS OTHER d3d9.dll TO d_d3d9.dll.---

For me it works.

 

Yes this method you suggested makes a sense............... ;)

Share this post


Link to post
Share on other sites
Silent

Yes this method you suggested makes a sense............... ;)

Could you please refrain from quoting everyone and saying he's right just to increase your post count?

Share this post


Link to post
Share on other sites
gtafan2u

 

Yes this method you suggested makes a sense............... ;)

Could you please refrain from quoting everyone and saying he's right just to increase your post count?

 

Sorry I didnot knew that it causes some problem(increase my post count) because I am member since one year but started using this forum since one month so I don`t knew about it. I will not do this again..... :lol:

Edited by gtafan2u

Share this post


Link to post
Share on other sites
Alpha Ice

I hate to say it but it didn't work,I got some really weird glitches at the load screens and when I turn the enb on the entire screen turns completely white.

Thanks for trying though.

Share this post


Link to post
Share on other sites
Alpha Ice

Still no solution ?

Share this post


Link to post
Share on other sites
gtafan2u

Still no solution ?

Use one dll at a time. :lol:

Share this post


Link to post
Share on other sites
Claude_Lib

What if you rename DLL into ASI and use ASI Loader? Should work.

Share this post


Link to post
Share on other sites
Alpha Ice

What if you rename DLL into ASI and use ASI Loader? Should work.

Nope, most .dll mods need to load before the splash screen.

Share this post


Link to post
Share on other sites
thelink2012

 

What if you rename DLL into ASI and use ASI Loader? Should work.

Nope, most .dll mods need to load before the splash screen.

 

Use Ultimate ASI Loader

Though I doubt it'll do any good for those 2 graphic mods as they are hooking the D3D8 device by using the dll exports.

Edited by LINK/2012

Share this post


Link to post
Share on other sites
Alpha Ice

Would it be possible to copy all of the code and completely rebuild the .dll with a different name ?

Share this post


Link to post
Share on other sites
gtafan2u

Would it be possible to copy all of the code and completely rebuild the .dll with a different name ?

Without the real source code, the answer is no. You needs to have the real source of that dll to do any changes and compile. You cannot directly decompile any dll. :lol:

Share this post


Link to post
Share on other sites
Alpha Ice

Well that's f*cking gay.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • 2 Users Currently Viewing
    0 members, 0 Anonymous, 2 Guests

×
×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.