Browse by Tags

Tagged Content List
  • Blog Post: Avoiding C++ types in your P/invokes

    It's easier to explain this in an example. Let’s say you have a export function in your native DLL: void WINAPI MyFunction(_com_ptr_t<IMyInterface> ptr) { // ... do something with ptr ptr->Func(); } And the DllImport would be something like this: [DllImport( "mydll.dll"...
  • Blog Post: WARNING: VS 2012 might break your broken P/Invoke

    I'm seeing many people reporting that they are seeing strange P/invoke issues when they moved their code to VS 2012. Typically, they have P/invokes like this: [DllImport( "Win32Project2.dll" , PreserveSig = true , CharSet = CharSet.Unicode)] static extern int MyPInvoke( out string ret); ...
  • Blog Post: Marshal.GetHRForException does more than just Get-HR-For-Exception

    Let's first start by looking at a small code snippet: if (Marshal.GetHRForException(myException) == E_SOME_COM_ERROR) DoSomething(); This looks perfectly fine, right? Not really. It turns out this API is actually poorly named, and it actually does more than just retrieving the HR from the exception...
Page 1 of 1 (3 items)