title: How do I change the exported name decoration for __stdcall in VC++?
body: <p>This is how I have my export function declared at the moment:</p>
  
  <pre><code>extern "C" __declspec(dllexport)
  Iexport_class* __stdcall GetExported_Class();
  </code></pre>
  
  <p>When VS2008 compiled the source for this, the dll produced contains this under its export table:</p>
  
  <pre><code>_GetExported_Class@0
  </code></pre>
  
  <p>For compatibility with other compilers I need the above decoration to look like this instead:</p>
  
  <pre><code>GetExported_Class
  </code></pre>
  
  <p>Changing the calling convention to __cdecl will decorate it to the way I want but the convention would be wrong so I can't use that. I need it to be decorated the way __cdecl looks but uses __stdcall instead.</p>
  
  <p>Is there anyway to do this <em>without</em> using a .def file? Is there a switch or an option I can pass to the link.exe linker that can make it decorate the export name to the way I want?</p>
  
  <p>Thanks</p>