Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. COM
  4. what does ESP means?

what does ESP means?

Scheduled Pinned Locked Moved COM
helpsysadmintutorialquestion
2 Posts 2 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Offline
    L Offline
    Lost User
    wrote on last edited by
    #1

    Dear all, When the client calls the member function of the interface in the exe server,the following assert is displayed in the dialog . "The value of ESP was not properly saved across a function call . This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention chkesp.c line:42" I don't know how to solve the problem .Could anyone help me? Thanks a lot

    K 1 Reply Last reply
    0
    • L Lost User

      Dear all, When the client calls the member function of the interface in the exe server,the following assert is displayed in the dialog . "The value of ESP was not properly saved across a function call . This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention chkesp.c line:42" I don't know how to solve the problem .Could anyone help me? Thanks a lot

      K Offline
      K Offline
      Kevin Perry msft
      wrote on last edited by
      #2

      ESP is the stack pointer register E stands for 32 bit (as opposed to the 16 bit pointer on the 80286 many years ago. The error message is usually correct, but sometimes something really bad happened like you whacked something on your stack (buffer overrun), and sometimes you can get this message by stepping over code in the debugger using "set net statement". If you know that you haven't been writing to memory off the end of an array thats a stack variable, take a look at the Docs on "calling convetions". what typically happens in these cases is that you have 2 funtion prototypes that declare the function to have differing calling convetions. You need to make sure that the person who implements the function agrees with the person who calls the function as to things like where function arguments are passed on the stack or in registers, etc. int f,r,a,c,t,A,l=42;main(){while(--l>-42)for(t=-60;t++<20;putch('J'-f))for(A=a=r=f=0;++f<42&&r*r+A*A<7056;c=r+t,a=l+A,r=(c*c-a*a)/42,A=c*a/21);}

      1 Reply Last reply
      0
      Reply
      • Reply as topic
      Log in to reply
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes


      • Login

      • Don't have an account? Register

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • World
      • Users
      • Groups