C# 調用API函數(shù)彈出映射網(wǎng)絡驅動器對話框問題
1.基本知識介紹
首先,C#中的.net的常用對話框中沒有映射網(wǎng)絡驅動映射對話框,所以需要用windows的API函數(shù)去實現(xiàn)彈出映射網(wǎng)絡驅動器對話框。
c#調用API函數(shù)的要點可以參考:C#中調用Windows API的技術要點說明
值得注意到是,.net環(huán)境下參數(shù)類型的聲明的不同:
a、數(shù)值型直接用對應的就可。(DWORD -> int , WORD -> Int16)
b、API中字符串指針類型 -> .net中string
c、API中句柄 (dWord) -> .net中IntPtr
d、API中結構 -> .net中結構或者類。注意這種情況下,要先用StructLayout特性限定聲明結構或類
然后,在Windows中,調出映射網(wǎng)絡驅動器對話框的API函數(shù)是WNetConnectionDialog(HWND hwnd, DWORD dwType),函數(shù)的返回值是如果對話框取消,返回為-1,如果成功則返回NO_ERROR。
可以參考MSDNhttp://msdn.microsoft.com/en-us/library/aa385433(v=VS.85).aspx
2.代碼實現(xiàn)
[DllImport("mpr.dll", CharSet = CharSet.Ansi)]private static extern int WNetConnectionDialog(IntPtr HWND, int dwType);
private void button1_Click(object sender, EventArgs e)
{
WNetConnectionDialog(this.Handle, 1);//RESOURCETYPE_DISK的值為1
}
3.測試
點擊按鈕后彈出,進行配置即可
相關文章
詳解C#批量插入數(shù)據(jù)到Sqlserver中的四種方式
本文主要講解一下在Sqlserver中批量插入數(shù)據(jù)。文中大數(shù)據(jù)批量插入方式一和方式四盡量避免使用,而方式二和方式三都是非常高效的批量插入數(shù)據(jù)方式,需要的朋友可以看下2016-12-12c#基數(shù)排序Radix sort的實現(xiàn)方法
這篇文章主要介紹了c#基數(shù)排序Radix sort的實現(xiàn)方法,有需要的朋友可以參考一下2014-01-01