打包過程:
為涪陵等地區(qū)用戶提供了全套網頁設計制作服務,及涪陵網站建設行業(yè)解決方案。主營業(yè)務為成都網站制作、成都做網站、外貿營銷網站建設、涪陵網站設計,以傳統(tǒng)方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
1、打開自己已經創(chuàng)建好的VB.NET項目(一般一開始創(chuàng)建項目的時候創(chuàng)建的是Windows窗體應用程序)。
2、點“文件”--“新建項目”--“其他項目類型”--“安裝部署”--“Visual Studio Installer”--“安裝項目”,輸入項目名稱(此處命名為setup1)并點擊“確定”。
3、執(zhí)行完上一步,在解決方案下面會出現(xiàn)setup1項目。右擊setup1項目--“添加”--“項目輸出”。
4、在“添加項目輸出組”中,選擇“主輸出”,然后單擊“確定”。將自動添加所有依賴項。
5、在解決方案資源管理器中,右擊安裝項目---“添加”---“合并模塊”。? 把相關模塊添加進來。
6、在文件系統(tǒng)選項卡中添加所需的應用程序圖標等文件,并生成應用程序的桌面快捷方式,在快捷方式上右鍵選擇屬性,并在屬性欄中的圖標處選擇應用程序快捷方式圖標。(要在用戶桌面和用戶的“程序”菜單屬性里將AlwaysCreate屬性的值修改為True)。這樣安裝完程序后就可以看到桌面的圖標了
7、關于應用程序圖標的詳細說明:
(1)點擊“應用程序文件夾”并在右側的列表中的“主輸出來自。。”上右鍵然后點擊“創(chuàng)建主輸出來自。。的快捷方式”
(2)把生成的快捷方式復制到“用戶桌面”,然后右鍵重命名為你想要在程序安裝后顯示的名字。
(3)重命名完成后在右側的屬性欄中點擊圖標設置為自己想要的圖標,注意,需要先把圖標文件ico加入到“應用程序文件夾”中。(ico的制作:先做好256*256的png文件,然后百度ico制作找到在線制作ico的網站,直接生成ico圖標文件)
關于安裝后的一些屬性的設置:
VB.Net中模塊定義的過程的默認訪問級別是Public
你可以使用ILDasm反匯編一個VB.Net程序來查看
我進行試驗的源代碼為(Console Application):
Module Module1
Sub Main()
k()
End Sub
Sub k()
Console.WriteLine("ABC")
Console.ReadLine()
End Sub
End Module
使用ILDasm進行反編譯后
k()過程被解釋為:
.method public static void k() cil managed
{
// 代碼大小 20 (0x14)
.maxstack 8
IL_0000: nop
IL_0001: ldstr bytearray (C8 54 C8 54 ) // .T.T
IL_0006: call void [mscorlib]System.Console::WriteLine(string)
IL_000b: nop
IL_000c: call string [mscorlib]System.Console::ReadLine()
IL_0011: pop
IL_0012: nop
IL_0013: ret
} // end of method Module1::k
由此得知,在VB.NET的模塊中定義的過程的默認訪問級別是Public,而不是Friend
在C#中有 靜態(tài)類 的概念 自然里邊全部的方法都是靜態(tài)的 這意味著你可以直接通過 類名 方法名 去調用(例如System的Math類就是典型) 在VB NET中 沒有 靜態(tài)類 的概念(當然你可以用 單例模式 把構造函數(shù)弄成Private的方式 其它方法都是靜態(tài)的)如果某些方法需要被其它地方頻繁使用 可以創(chuàng)建 模塊 在VB NET中一旦創(chuàng)建了模塊 其中任何方法 屬性或者變量都可以被其它地方引用 因此適合全局情況下頻繁交互的情況(比如初始化加載的參數(shù) 可能后續(xù)程序要使用)等
現(xiàn)在問題在于 如果你把一個類似以下的模塊代碼封裝成DLL類庫 無論在C#或者是VB NET中都無法引用到其方法
Module A
Public Sub Test()
End Sub
End Module
或許你感到很奇怪——不是在VB NET中這樣定義一個Module就直接可以使用其內部方法了么?為什么封裝成類庫就不可以了呢?上網問了一些人 眾說紛紜 后來我在他人協(xié)助下終于成功解決了這個問題——解決方法很簡單——只要在Module前加Public
理由是 為了兼容C# VB NET由Module封裝成類庫中這個模塊不再是 模塊 而是一個標準的類了 如果這樣寫 那么在 NET中被理解成(C#)
internal A
{
public void Test()
{
}
}
整個模塊變成Internal的了!當然你到其它程序集中去引用就引用不到!而把類庫中的Module的修飾符改為Public就可以了 這就是MSDN那位友人給我最好的提示
雖然這個提示不是令我太滿意(因為要知道VB NET中可以直接不通過 類名 方式直接使用方法名) 但是這給了我很大的暗示 得出重要的結論
)VB NET中Module在制作成類庫時候等同于VB NET中的類的規(guī)則(里邊的方法都是靜態(tài)的) 默認情況下是Friend(C#是internal)
)根據(jù)結論 那么我們知道引用該DLL類庫的方法一定是 i)引用命名空間? ii)C#中直接 類名 方法名 對于VB NET 直接可以引用到方法名
lishixinzhi/Article/program/net/201311/12502
調用過程,調用過程有諸多技巧,它們與過程的類型、位置以及在應用程序中的使用方式有關。下面說明如何調用 Sub 過程和 Function 過程。
調用 Sub 過程
與 Sub 過程不同,在表達式中,Sub 過程不能用其名字調用。調用 Sub 過程的是一個獨立的語句。Sub 過程還有一點與函數(shù)不一樣,它不會用名字返回一個值。但是,與 Function過程一樣,Sub 過程也可以修改傳遞給它們的任何變量的值。
調用 Sub 過程有兩種方法:
'以下兩個語句都調用了名為 MyProc 的 Sub 過程。
Call MyProc (FirstArgument, SecondArgument)
MyProc FirstArgument, SecondArgument
注意,當使用 Call 語法時,參數(shù)必須在括號內。若省略 Call 關鍵字,則也必須省略參數(shù)兩邊的括號
調用函數(shù)過程
通常,調用自行編寫的函數(shù)過程的方法和調用 Visual Basic 內部函數(shù)過程(例如 Abs)的方法一樣;即在表達式中寫上它的名字。
'下面的語句都調用函數(shù) ToDec。
Print 10 * ToDec
X = ToDec
If ToDec = 10 Then Debug.Print "Out of Range"
X = AnotherFunction ( 10 * ToDec)
就像調用 Sub 過程那樣,也能調用函數(shù)。下面的語句都調用同一個函數(shù):
Call Year (Now)
Year Now
當用這種方法調用函數(shù)時,Visual Basic 放棄返回值。
調用其它模塊中的過程
在工程中的任何地方都能調用其它模塊中的公用過程。可能需要指定這樣的模塊,它包含正在調用的過程。調用其它模塊中的過程的各種技巧,取決于該過程是在窗體模塊中、類模塊中還是標準模塊中。
窗體中的過程
所有窗體模塊的外部調用必須指向包含此過程的窗體模塊。如果在窗體模塊 Form1 包含 SomeSub 過程,則可使用下面的語句調用 Form1 中的過程:
Call Form1.SomeSub(arguments)
類模塊中的過程
與窗體中調用過程類似,在類模塊中調用過程要調用與過程一致并且指向類實例的變量。例如,DemoClass 是類 Class1 的實例:
Dim DemoClass as New Class1
DemoClass.SomeSub
但是不同于窗體的是,在引用一個類的實例時,不能用類名作限定符。必須首先聲明類的實例為對象變量(在這個例子中是 DemoClass )并用變量名引用它。
標準模塊中的過程
如果過程名是唯一的,則不必在調用時加模塊名。無論是在模塊內,還是在模塊外調用,結果總會引用這個唯一過程。如果過程僅出現(xiàn)在一個地方,這個過程就是唯一的。
如果兩個以上的模塊都包含同名的過程,那就有必要用模塊名來限定了。在同一模塊內調用一個公共過程就會運行該模塊內的過程。例如,對于 Module1 和 Module2 中名為 CommonName 的過程,從 Module2 中調用 CommonName 則運行 Module2 中的 CommonName 過程,而不是 Module1 中的 CommonName 過程。
從其它模塊調用公共過程名時必須指定那個模塊。例如,若在 Module1 中調用 Module2 中的 CommonName 過程,要用下面的語句:
Module2.CommonName (arguments)
Public ? 用于聲明對所有模塊中的所有其它過程都可以使用的過程。
Private ?用于聲明只能在包含該聲明的模塊中使用的過程。
文章標題:vb.net模塊過程 vbnet doevent
當前網址:http://chinadenli.net/article44/dogcdhe.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網站、電子商務、面包屑導航、響應式網站、企業(yè)網站制作、App開發(fā)
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)