RegisterClassA(wc) api using user32.dll import is returning as zero

 
#import "user32.dll"
ushort RegisterClassA(WNDCLASSA& wc);
#import
LRESULT  MyWindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)

  {
   LRESULT result =0;
   switch(uMsg)
     {
      case WM_SIZE:
        {
         //   int width = int(lParam);  // Macro to get the low-order word.
         //   int height = int(lParam); // Macro to get the high-order word.
         //  Print("On Window Proc");
         // Respond to the message:
         // OnSize(hwnd, (unsigned int)wParam, width, height);
         Print("WM_SIZE");
        }
      break;
      case WM_DESTROY:
        {
         Print("WM_DESTROY");
        }
      break;


      case WM_CLOSE:
        {
         Print("WM_CLOSE");
        }
      break;

      case WM_ACTIVATEAPP:
        {
         Print("WM_ACTIVATEAPP");
        }
      break;

      default:
        {
         Print("Default Handle");
         //result =DefWindowProc(hwnd, uMsg, wParam, lParam);
        }
      break;


     }
   return result;
HMODULE ModuleHandle =  GetModuleHandleA(NULL);//GetModuleHandle returns a handle to the file used to create the calling process (.exe file).
HINSTANCE hInstance = ModuleHandle;
   WNDCLASSA wc = {0};
   wc.lpfnWndProc   = MyWindowProc;
   wc.hInstance     = hInstance;
   wc.lpszClassName = "MyWindow";

   int IsRegistered = RegisterClassA(wc);
   if(IsRegistered>0)
     {
      Print("Registered!");
     }
   else
     {
      Print("Not Registered!");
     }

Above is the int OnInit() of the Expert Adviser



Your help will be much appreciated.