VB.NET中的App

在Visual Basic 6中,App是一个全局对象可以直接通过App关键字来访问。App对象可以得到当前应用的标题、版本、路径、执行文件名等信息,同时可以用于判断应用的前一个实例是否运行。App对象在VB.NET中已经不存在了,但是我们仍然能从VB.NET中使用其它的对象获得App的相同功能

在VB.NET寻找类似功能

原Visual Basic 6 中App的Comments属性类似Visual Basic .NET 中的System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly.Location).Comments属性
原Visual Basic 6 中App的CompanyName属性类似Visual Basic .NET 中的System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly.Location).CompanyName属性
原Visual Basic 6 中App的EXEName属性类似Visual Basic .NET 中的VB6.GetEXEName属性
原Visual Basic 6 中App的FileDescription属性类似Visual Basic .NET 中的System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly.Location).FileDescription属性
原Visual Basic 6 中App的HelpFile属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的HInstance属性类似Visual Basic .NET 中的VB6.GetHInstance属性
原Visual Basic 6 中App的LegalCopyright属性类似Visual Basic .NET 中的System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly.Location).LegalCopyright属性
原Visual Basic 6 中App的LegalTrademarks属性类似Visual Basic .NET 中的System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly.Location).LegalTrademarks属性
原Visual Basic 6 中App的LogEvent方法在Visual Basic .NET 中无类似方法
原Visual Basic 6 中App的LogMode属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的LogPath属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的Major属性类似Visual Basic .NET 中的System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly.Location).FileMajorPart属性
原Visual Basic 6 中App的Minor属性类似Visual Basic .NET 中的System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly.- Location).FileMinorPart属性
原Visual Basic 6 中App的NonModalAllowed属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的OleRequestPendingMsgText属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的OleRequestPendingMsgTitle属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的OleRequestPendingTimeout属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的OleServerBusyMsgText属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的OleServerBusyMsgTitle属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的OleServerBusyRaiseError属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的OleServerBusyTimeout属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的Path属性类似Visual Basic .NET 中的VB6.GetPath属性
原Visual Basic 6 中App的PrevInstance属性类似Visual Basic .NET 中的UBound(Diagnostics.Process.GetProcessesByName(Diagnostics.Process.GetCurrentProcess.ProcessName)) > 0表达式
原Visual Basic 6 中App的ProductName属性类似Visual Basic .NET 中的System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly.Location).ProductName属性
原Visual Basic 6 中App的RetainedProject属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的Revision属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的StartLogging方法在Visual Basic .NET 中无类似方法
原Visual Basic 6 中App的StartMode属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的TaskVisible属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的ThreadID属性在Visual Basic .NET 中无类似属性
原Visual Basic 6 中App的Title属性类似Visual Basic .NET 中的System.Reflection.Assembly.GetExecutingAssembly.GetName.Name属性
原Visual Basic 6 中App的UnattendedApp属性在Visual Basic .NET 中无类似属性
这里以得到当前应用的路径为示例,首先要引用VisualBasic.Compatibility名称空间,单击主菜单"工程"中的"引用"项,并选择"Microsoft Visual Basic .NET Compatibility Runtime",
此时在工程列表的引用中就会出现Microsoft.VisualBasic.Compatibility名称空间了
在新的控制台工程中输入代码
Imports Microsoft.VisualBasic.Compatibility

Module Module1
    Sub Main()
        Console.WriteLine(VB6.GetPath)
    End Sub
End Module

得到的结果仍然和使用VB6的App.path的结果是一样的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章