A little clarification/help please

Need help running MacroQuest 1? Too bad! Use MQ2.

Moderator: MacroQuest Developers

Xecros
a lesser mummy
a lesser mummy
Posts: 54
Joined: Tue Apr 22, 2003 9:24 am

A little clarification/help please

Post by Xecros » Wed Apr 23, 2003 9:46 am

Okay,

I've been all thru these boards searching for instructions on how to get MQ up and running and I've tried several search criteria without much luck. The best I've been able to come up with is this.

I've gotta compile MQ under VS6 or C++ 7.

Before i do that, i have to have detours.lib and i gotta have perl56.dll and i gotta have dinput.h but nothing anywhere tells me where these files have to be located(i'm assuming in my PATH somewhere)

I get hints that i'm suppose to compile Detours to get detours.lib but i've done no such thing and still have detours.lib???

I get hints that I'm suppose to install perl, and not the latest one, to get perl56.dll but that file is included in the MQ source i downloaded already???

I also get hints that MAYBE, i'm suppose to actually install the directx 9 SDK???


I've downloaded and installed VS6 Enterprise.

I've downloaded the latest Detours

I've downloaded the latest DirectX 9 SDK

I've extracted the dinput.h from the directx 9 SDK distribution file.

I've extracted the detours.lib from the Detours distrobution file.

From here, i'm gathering i simply need to compile the source ensureing the files are in my PATH somewhere. Is this correct??

If your uncomfortable with posting detailed instructions on what more i need to do, or what i've done wrong, feel free to PM.

Thank you
Xec

p.s. I'm trying to do this with has little help has possible but, help is definitely needed here.

Xecros
a lesser mummy
a lesser mummy
Posts: 54
Joined: Tue Apr 22, 2003 9:24 am

update

Post by Xecros » Wed Apr 23, 2003 10:21 am

I've figured out now that i have to have detours.h and detours.lib put in the detours directory of the MQ source before compiling....

I've figured out that perl56.lib has to be put in the perl directory of the mQ source....

still trying to figure out what to do with dinput.h, i found this
4. cd macroquest\eqlib
5. if using VC60, modify the makefile line 1 to point to the 8.1 dinput.h
but this confuses me, i have the 9.0 dinput.h. i'm thinking it'll still work so i went into that directory, eqlib, and cannot locate the makefile to make the appropriate changes to point to where dinput.h is located....

discovered that i need detours.pdb, i'm assuming this gets placed in the same directory has the lib file...

still searching the forums for more instructions, but feel free to post them here while i search.... :)

Thank you
Last edited by Xecros on Wed Apr 23, 2003 10:49 am, edited 1 time in total.

User avatar
Densetsu
orc pawn
orc pawn
Posts: 22
Joined: Sat Apr 19, 2003 3:31 am
Location: NYC
Contact:

FLAME ON!

Post by Densetsu » Wed Apr 23, 2003 10:49 am

HA HA HA before the others attack and devastate you with FLAMES I'm going to save you by saying yes there is clear instructions on everything! Unfortunatly some minor portions where ommitted to force you into discovering on your own but the information is out there! Try following all My posts and you will haev all you need to know :lol:

And dont ever ask for Generalized help again or they will slit your throat!
Who's pants are these?!

Xecros
a lesser mummy
a lesser mummy
Posts: 54
Joined: Tue Apr 22, 2003 9:24 am

hmmmm

Post by Xecros » Wed Apr 23, 2003 1:27 pm

Well, I tried compiling and got this:

Code: Select all

--------------------Configuration: eqlib - Win32 Debug--------------------
Compiling resources...
Compiling...
EQLib.cpp
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(179) : warning C4273: 'TelnetServer_AddToChatQueue' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(459) : warning C4273: 'ListConnections' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(1631) : warning C4273: 'Delay' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(1829) : warning C4273: 'VarCalc' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(1910) : warning C4273: 'VarSet' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2003) : warning C4273: 'MyVarAdd' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2100) : warning C4273: 'MyVarSub' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2197) : warning C4273: 'MyVarAnd' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2276) : warning C4273: 'MyVarOr' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2355) : warning C4273: 'VarRShift' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2435) : warning C4273: 'VarLShift' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2515) : warning C4273: 'Echo' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2534) : warning C4273: 'ListMacros' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2597) : warning C4273: 'Items' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2667) : warning C4273: 'ItemTarget' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2746) : warning C4273: 'Doors' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(2794) : warning C4273: 'DoorTarget' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(3402) : warning C4273: 'CharInfo' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(3516) : warning C4273: 'ZoneDelay' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(3536) : warning C4273: 'Click' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(3586) : warning C4273: 'MouseTo' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(7700) : warning C4273: 'Goto' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(7743) : warning C4273: 'ZapVars' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(7783) : warning C4273: 'EndMacro' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8143) : warning C4273: 'If' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8163) : warning C4273: 'Call' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8261) : warning C4273: 'DoEvents' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8333) : warning C4273: 'Return' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8390) : warning C4273: 'MemSpell' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8434) : warning C4273: 'Macro' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8516) : warning C4273: 'FindItem' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8630) : warning C4273: 'Merchant' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8685) : warning C4273: 'Help' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8720) : warning C4273: 'MacroBeep' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(8749) : warning C4273: 'Filter' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9036) : warning C4273: 'DebugSpewFile' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9065) : warning C4273: 'Identify' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9208) : warning C4273: 'Location' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9226) : warning C4273: 'SendKey' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9272) : warning C4273: 'Press' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9294) : warning C4273: 'Cleanup' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9311) : warning C4273: 'For' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9353) : warning C4273: 'Next' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9607) : warning C4273: 'Alert' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(9749) : warning C4273: 'Breakin' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10021) : warning C4273: 'SuperWhoTarget' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10045) : warning C4273: 'SuperWho' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10148) : warning C4273: 'SetError' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10172) : warning C4273: 'MQMsgBox' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10192) : warning C4273: 'MacroLog' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10252) : warning C4273: 'Face' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10426) : warning C4273: 'Where' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10484) : warning C4273: 'DoAbility' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10548) : warning C4273: 'Cast' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10596) : warning C4273: 'Target' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10863) : warning C4273: 'HSlider' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10892) : warning C4273: 'Skills' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10947) : warning C4273: 'MacroPause' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(10993) : warning C4273: 'Alias' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(11074) : warning C4273: 'Unload' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(11446) : warning C4273: 'InjectEnable' : inconsistent dll linkage.  dllexport assumed.
c:\documents and settings\xecros\desktop\eq\macroquest\src-20030308\eqlib\eqlib.cpp(11452) : warning C4273: 'InjectDisable' : inconsistent dll linkage.  dllexport assumed.
events.cpp
PerlMod.cpp
PerlModCore.cpp
stdafx.cpp
timers.cpp
Linking...
   Creating library Debug/eqlib.lib and object Debug/eqlib.exp
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/eqlib.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

eqlib.exe - 2 error(s), 62 warning(s)
I followed these instructions verbatim
1. Compile the detours source and move lib and pdb file into appropriate directory
2. Create a blank win32 application project pointing at the MQ directory.
3. Add a win32 dll project to the project in step 2. Call it eqlib
4. Add all the sources in the eqlib directory to the eqlib project.
5. Add the CINTERFACE definition to the Preprocess definitions.
6. Add the DX8.1 include path to the Additional include directories.
7. Add ws2_32.lib to the Object/library modules.
8. Add ..\Detours\lib (where you put the objects from 1.) to Additional library path
9. Press F7 and cross your fingers.
At step 2, you didn't specify what to name the project so i named it mq.

After step nine, i get the errors, i've quoted above.

point of note, I am using DX9 and pointed the additional include directories to the entire include directory for DX9. Was that right?

Non M$ Coder
a lesser mummy
a lesser mummy
Posts: 43
Joined: Sun Apr 13, 2003 8:00 pm

Post by Non M$ Coder » Wed Apr 23, 2003 1:36 pm

I named mine 'macroquest' but that sould not be an issue I think. I don't recall seeing that set of warnings while figuring out how to get everything working, but if you go through the thread you pulled those instrucions from, there are a lot more information and clarifications. I think it was about page 5 or 6 where I got the info that finally made everything clear. I'm at work, so I don't have access to my mq built stuff, but if you go through that tread and read all the posts, you should be able to get a clean compile with a little effort. It looks like you are missing a configuration setting (or more likely put some linking info in the wrong tab or space in the project settings window, the ui for that thing is rediculous).

eqjoe
a grimling bloodguard
a grimling bloodguard
Posts: 984
Joined: Sat Sep 28, 2002 12:26 pm

Post by eqjoe » Wed Apr 23, 2003 4:07 pm

Looks like your not finding your DX libs for your build.

Double check you dxsdk path.

User avatar
dont_know_at_all
Developer
Developer
Posts: 5450
Joined: Sun Dec 01, 2002 4:15 am
Location: Florida, USA
Contact:

Post by dont_know_at_all » Wed Apr 23, 2003 4:22 pm

You failed step 3. You made it a win32 application and not a win32 dll.

Mckorr
Developer
Developer
Posts: 2326
Joined: Fri Oct 18, 2002 1:16 pm
Location: Texas

Post by Mckorr » Wed Apr 23, 2003 7:56 pm

Also, you can't use detours.h and detours.lib directly from the detours distribution. You need to actually delete those files, and recompile detours from the source.

To do that, with VC6, get a command line (C prompt). Change to the detours SRC directory, for example C:\detours\src. At the command prompt in that directory type "nmake" (without the quotes). This will create a new detours.h and detours.lib. Those are the files you need.

Clawed
a ghoul
a ghoul
Posts: 105
Joined: Mon Jan 20, 2003 6:17 am

Post by Clawed » Wed Apr 23, 2003 11:30 pm

I believe I am using the detours.lib directly from the distribution. No problems. I never compiled it or perl56. Nor did I have to get any new DX header files. (VS.Net) /shrug but my computer often works in mysterious ways...
Clawed

Mckorr
Developer
Developer
Posts: 2326
Joined: Fri Oct 18, 2002 1:16 pm
Location: Texas

Post by Mckorr » Thu Apr 24, 2003 9:06 am

Yeah, mine to. I had to compile detours for it to work, but I have a very weird hardware/software setup, no telling what that causes.

zedisdeadbaby
a ghoul
a ghoul
Posts: 83
Joined: Sun Nov 03, 2002 4:24 pm

Post by zedisdeadbaby » Thu Apr 24, 2003 11:16 am

I didn't have to get any directX SDK either (VS.NET too). I also used the detours.lib from Microsoft and did not have to compile my own.
Clawed wrote:I believe I am using the detours.lib directly from the distribution. No problems. I never compiled it or perl56. Nor did I have to get any new DX header files. (VS.Net) /shrug but my computer often works in mysterious ways...