Compiling with 2005 Express

Moderator: MacroQuest Developers

Warauinu
a snow griffon
a snow griffon
Posts: 377
Joined: Fri Apr 15, 2005 9:21 am

Compiling with 2005 Express

Post by Warauinu » Wed Mar 01, 2006 2:48 pm

Slow day at work so thought I would try and compile ISXEQ for fun.

Installed the SDK from lavish site, added include path, and library path for vs80.

Opened ISXEQ.sln in VS2005 Express. Set ISXEQ as startup project then tried to build. 32 errors and 100 some warnings later I obviously missed a step.

No rush but since autobot is being worked on for port over, and most of the plugins I use are already over seemed like a good time to start learning.

Here are a few examples of my mess so far if it helps.

Code: Select all

Compiling...
MQ2Windows.cpp
c:\program files\isxdk\include\FileList.h(27) : warning C4996: 'sprintf' was declared deprecated
        C:\Program Files\Microsoft Visual Studio 8\VC\include\stdio.h(345) : see declaration of 'sprintf'
        Message: 'This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
c:\program files\isxdk\include\FileList.h(28) : warning C4996: 'strcpy' was declared deprecated
        C:\Program Files\Microsoft Visual Studio 8\VC\include\string.h(73) : see declaration of 'strcpy'
        Message: 'This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
c:\program files\isxdk\include\FileList.h(41) : warning C4996: 'strcpy' was declared deprecated

Code: Select all

C:\Program Files\Microsoft Visual Studio 8\VC\include\stdio.h(345) : see declaration of 'sprintf'
        Message: 'This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
.\MQ2Spawns.cpp(576) : error C3867: 'EQPlayerHook::EQPlayer_Detour': function call missing argument list; use '&EQPlayerHook::EQPlayer_Detour' to create a pointer to member
.\MQ2Spawns.cpp(576) : error C3867: 'EQPlayerHook::EQPlayer_Trampoline': function call missing argument list; use '&EQPlayerHook::EQPlayer_Trampoline' to create a pointer to member
.\MQ2Spawns.cpp(577) : error C3867: 'EQPlayerHook::dEQPlayer_Detour': function call missing argument list; use '&EQPlayerHook::dEQPlayer_Detour' to create a pointer to member
.\MQ2Spawns.cpp(577) : error C3867: 'EQPlayerHook::dEQPlayer_Trampoline': function call missing argument list; use '&EQPlayerHook::dEQPlayer_Trampoline' to create a pointer to member
.\MQ2Spawns.cpp(578) : error C3867: 'EQItemListHook::EQItemList_Detour': function call missing argument list; use '&EQItemListHook::EQItemList_Detour' to create a pointer to member
.\MQ2Spawns.cpp(578) : error C3867: 'EQItemListHook::EQItemList_Trampoline': function call missing argument list; use '&EQItemListHook::EQItemList_Trampoline' to create a pointer to member
.\MQ2Spawns.cpp(579) : error C3867: 'EQItemListHook::dEQItemList_Detour': function call missing argument list; use '&EQItemListHook::dEQItemList_Detour' to create a pointer to member
.\MQ2Spawns.cpp(579) : error C3867: 'EQItemListHook::dEQItemList_Trampoline': function call missing argument list; use '&EQItemListHook::dEQItemList_Trampoline' to create a pointer to member
.\MQ2Spawns.cpp(580) : error C3867: 'EQPlayerHook::SetNameSpriteState_Detour': function call missing argument list; use '&EQPlayerHook::SetNameSpriteState_Detour' to create a pointer to member
.\MQ2Spawns.cpp(580) : error C3867: 'EQPlayerHook::SetNameSpriteState_Trampoline': function call missing argument list; use '&EQPlayerHook::SetNameSpriteState_Trampoline' to create a pointer to member
.\MQ2Spawns.cpp(581) : error C3867: 'EQPlayerHook::SetNameSpriteTint_Detour': function call missing argument list; use '&EQPlayerHook::SetNameSpriteTint_Detour' to create a pointer to member
.\MQ2Spawns.cpp(581) : error C3867: 'EQPlayerHook::SetNameSpriteTint_Trampoline': function call missing argument list; use '&EQPlayerHook::SetNameSpriteTint_Trampoline' to create a pointer to member
My guess would be my includes are still messed up. But not sure how.
[quote="fearless"]
stop hindering the dev's[/quote]

Warauinu
a snow griffon
a snow griffon
Posts: 377
Joined: Fri Apr 15, 2005 9:21 am

Post by Warauinu » Wed Mar 01, 2006 2:59 pm

added lib for vs70 too just to check and had no effect.
[quote="fearless"]
stop hindering the dev's[/quote]

Warauinu
a snow griffon
a snow griffon
Posts: 377
Joined: Fri Apr 15, 2005 9:21 am

Post by Warauinu » Wed Mar 01, 2006 4:38 pm

Thanks to Lax for helping on the hook errors.

For example changed

Code: Select all

EzDetour(EQPlayer__EQPlayer,EQPlayerHook::EQPlayer_Detour,EQPlayerHook::EQPlayer_Trampoline);
to

Code: Select all

EzDetour(EQPlayer__EQPlayer,&EQPlayerHook::EQPlayer_Detour,&EQPlayerHook::EQPlayer_Trampoline);
1 last error I got was this

Code: Select all

.\ISXEQ\ISXEQCommands.cpp(563) : error C2660: 'EQClasses::EQ_Character1::CastSpell' : function does not take 8 arguments
ISXEQCommandAPI.cpp

Code: Select all

if (!stricmp(argv[1],"item")) 
   { 
      BOOL FOUND = FALSE; 
      DWORD item = 0; 
      DWORD slot = 0; 
      DWORD SpawnFooter = NULL; 
      SpawnFooter = (DWORD)pLocalPlayer; 
      for (int i=0;i<30;i++) { 
         if (GetCharInfo2()->InventoryArray[i]) 
            if (!_stricmp(argv[2],GetCharInfo2()->InventoryArray[i]->Item->Name)) { 
               DebugSpew("cast test slot %d = %s address is %x",i,GetCharInfo2()->InventoryArray[i]->Item->Name,&(GetCharInfo2()->InventoryArray[i])); 
               item = (DWORD)&GetCharInfo2()->InventoryArray[i]; 
               slot = (DWORD)i; 
               FOUND = TRUE; 
               break; 
            } 
      } 
      if (FOUND) { 
         [color=red]pCharData1->CastSpell(10,0,(EQ_Item**)item,0,slot,-1,0,0); [/color]
         return 0; 
      } 
   } 
[quote="fearless"]
stop hindering the dev's[/quote]

Warauinu
a snow griffon
a snow griffon
Posts: 377
Joined: Fri Apr 15, 2005 9:21 am

Post by Warauinu » Mon Mar 06, 2006 10:17 pm

Fixed in latest zip nm!
[quote="fearless"]
stop hindering the dev's[/quote]

User avatar
three-p-o
a grimling bloodguard
a grimling bloodguard
Posts: 600
Joined: Sun Nov 03, 2002 5:59 pm

Post by three-p-o » Sat Apr 22, 2006 12:53 pm

Attempting to compile with 2005 and V29 gets the following error.

Code: Select all

ISXEQ.cpp
.\ISXEQ\ISXEQ.cpp(168) : error C2664: 'ISServiceClientInterface::ConnectService' : cannot convert parameter 3 from 'void (__cdecl *)(bool,unsigned long,void *)' to 'fISService'
        None of the functions with this name in scope match the target type
.\ISXEQ\ISXEQ.cpp(169) : error C2664: 'ISServiceClientInterface::ConnectService' : cannot convert parameter 3 from 'void (__cdecl *)(bool,unsigned long,void *)' to 'fISService'
        None of the functions with this name in scope match the target type
.\ISXEQ\ISXEQ.cpp(170) : error C2664: 'ISServiceClientInterface::ConnectService' : cannot convert parameter 3 from 'void (__cdecl *)(bool,unsigned long,void *)' to 'fISService'
        None of the functions with this name in scope match the target type
.\ISXEQ\ISXEQ.cpp(171) : error C2664: 'ISServiceClientInterface::ConnectService' : cannot convert parameter 3 from 'void (__cdecl *)(bool,unsigned long,void *)' to 'fISService'
        None of the functions with this name in scope match the target type
.\ISXEQ\ISXEQ.cpp(172) : error C2664: 'ISServiceClientInterface::ConnectService' : cannot convert parameter 3 from 'void (__cdecl *)(bool,unsigned long,void *)' to 'fISService'
        None of the functions with this name in scope match the target type
.\ISXEQ\ISXEQ.cpp(219) : error C2664: 'ISServiceMasterInterface::RegisterService' : cannot convert parameter 3 from 'void (__cdecl *)(ISXInterface *,unsigned long,void *)' to 'fISServiceRequest'
        None of the functions with this name in scope match the target type
.\ISXEQ\ISXEQ.cpp(224) : error C2664: 'ISServiceMasterInterface::RegisterService' : cannot convert parameter 3 from 'void (__cdecl *)(ISXInterface *,unsigned long,void *)' to 'fISServiceRequest'
        None of the functions with this name in scope match the target type
.\ISXEQ\ISXEQ.cpp(225) : error C2664: 'ISServiceMasterInterface::RegisterService' : cannot convert parameter 3 from 'void (__cdecl *)(ISXInterface *,unsigned long,void *)' to 'fISServiceRequest'
        None of the functions with this name in scope match the target type
Slovotsky's Law # 146. Power corrupts. Absolute power is kind of neat.

"When i open the dll files expecting to just copy their code to the cpp file is all garbage and not code. Is the procedure for adding dll plugins different?" -- fujitsu

Lax
We're not worthy!
We're not worthy!
Posts: 3524
Joined: Thu Oct 17, 2002 1:01 pm
Location: ISBoxer
Contact:

Post by Lax » Sat Apr 22, 2006 1:09 pm

Dont post new issues on old threads!

ISXDK 29 requires all of the old "unsigned long" to be converted to "unsigned int". This is for future portability -- long is 32-bit on 32-bit compiles and 64-bit on 64-bit compiles, whereas int is 32-bit on both.
Lax Lacks
Master of MQ2 Disaster
Purveyor of premium, EULA-safe MMORPG Multiboxing Software
* Multiboxing with ISBoxer: Quick Start Video
* EQPlayNice, WinEQ 2.0

xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 8:56 am


xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 8:57 am


xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 9:34 am


xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 9:35 am


xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 9:37 am


xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 9:38 am


xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 9:39 am


xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 9:40 am


xyilla
naggy
naggy
Posts: 33673
Joined: Sun Feb 23, 2025 5:36 am

Re: Compiling with 2005 Express

Post by xyilla » Mon Jul 07, 2025 10:17 am