[DllImport("user32.dll")]
private static extern int SetSystemCursor (int hcur, int id);
[DllImport("user32.dll", EntryPoint="LoadCursorFromFileA")]
private static extern int LoadCursorFromFile (string lpFileName);private const int OCR_NORMAL = 32512;/// <summary>
/// 设置光标
/// </summary>
/// <param name="sFileNmae">光标的路径</param>
/// <returns>非0表示成功</returns>
public int Set(string sFileNmae)

int hFile=LoadCursorFromFile(sFileNmae);
         int hNewCur=SetSystemCursor(hFile, OCR_NORMAL); return(hNewCur);
}

解决方案 »

  1.   

    同意BearRui(月夜孤熊)。
    另外LoadCursorFromFile只支持.cur和.ani两种格式。否则会失败。
    所以如果需要转换,楼主可以下载一个图标工具,用google找找看。
      

  2.   

    谢谢高手们的指教,但目前只实现了改变光标。但改回来怎么实现呢,我用
    hFile = LoadCursor(0&, IDC_ARROW) 
    hNewCur = SetSystemCursor(hFile, OCR_NORMAL)
    不能还原,不知道是我代码不对还是什么原因。