我想用SHELLExecute调用WINDOWS的信使服务,可是出错    ShellExecute(m_hWnd,"open",_T("D:\\WINDOWS\\system32\\dllcache\\net.exe"),_T("send 172.16.10.233 消息内容"),_T("D:\\WINDOWS\\system32\\dllcache\\"),SW_SHOW)
程序报错 NET.EXE无法找到入口   
               无法定位程序输入点RtlInitUnicodeStringEx于动态连接库ntdll.dll上
这是什么错误? 用WINEXEC倒没问题

解决方案 »

  1.   

    为什么不直接使用NetMessageBufferSend函数?CString m_csMessage = "发送的信息";
    CString m_csSendTo = "192.168.0.1";
    if(m_csMessage.IsEmpty())
        return;WCHAR sendto[20];
    memset(sendto,0,40);
    mbstowcs(sendto,m_csSendTo,m_csSendTo.GetLength());
    WCHAR sendfrom[] = L"管理程序";
    WCHAR message[1024];
    memset(message,0,2048);
    MultiByteToWideChar(CP_ACP,0,(LPCTSTR)m_csMessage,m_csMessage.GetLength(),message,1024);
    NET_API_STATUS ret = NetMessageBufferSend(NULL,sendto,sendfrom,(LPBYTE)&message  [0],m_csMessage.GetLength()*2);
    if(ret == NERR_Success)
    MessageBox("发送成功","信息发送");
    else
    MessageBox("发送失败","信息发送");
      

  2.   

    netsendDlg.obj : error LNK2001: unresolved external symbol_NetMessageBufferSend@20
    Debug/netsend.exe : fatal error LNK1120: 1 unresolved externals
    我用NETMESSAGEBUFFERSEND VC编译的时候报错,这是什么问题? 我已经包含了需要的头文件,系统是2000 server
      

  3.   

    link Netapi32.lib
    菜单 project -> setting -> link -> object/library中加入Netapi32.lib
      

  4.   

    我做的那个发给自己可以了,可发给局域网内的别人就不行,返回NERR_NameNotFound 
    The user name could not be found.   我是直接用的IP 地址 172.16.X.X 为什么不能发送? 用NET SEND 可以直接发的
      

  5.   

    使用格式
    \\172.16.X.X
    "\\\\172.16.X.X"
      

  6.   

    我改了以后函数返回NERR_NetworkError 连给自己发也不行了。 去掉\\能给自己发