Obter a localização do programa em VB.NET?
8 answers
Para isso pode usar o Application
protesto.
Localização inicial, apenas a pasta, use a aplicação .StartupPath()
Dim appPath As String = Application.StartupPath()
Cheio .caminho exe, incluindo o programa.nome exe no fim:, usar aplicação.Aplicação executável()
Dim exePath As String = Application.ExecutablePath()
My.Application.Info.DirectoryPath
[ MSDN]
Isto está a usar a funcionalidade de My
VB.NET. esta propriedade em particular está disponível para todos os tipos de projetos não-web, desde o Framework. NET 2.0, incluindo aplicativos de consola como você precisa.
Desde que confie na Microsoft para continuar a manter isto a funcionar correctamente para todos os tipos de projecto acima, isto é mais simples de usar do que aceder às outras soluções "mais directas".
Dim appPath As String = My.Application.Info.DirectoryPath
Para uma aplicação de consola, você pode usar System.Reflection.Assembly.GetExecutingAssembly().Location
desde que a chamada seja feita dentro do Código da aplicação de consola em si, se você ligar isto de dentro de outro dll ou plugin, isto irá devolver a localização desse DLL e não o executável.
Você pode obter o caminho por este código
Dim CurDir as string = My.Application.Info.DirectoryPath
Também pode utilizar:
Dim strPath As String = AppDomain.CurrentDomain.BaseDirectory
Defina o seu próprio local de aplicação
Dim myPathsValues As String
TextBox1.Text = Application.StartupPath
TextBox2.Text = Len(Application.StartupPath)
TextBox3.Text = Microsoft.VisualBasic.Right(Application.StartupPath, 10)
myPathsValues = Val(TextBox2.Text) - 9
TextBox4.Text = Microsoft.VisualBasic.Left(Application.StartupPath, myPathsValues) & "Reports"
Se o caminho é uma unidade, uma barra também irá aparecer no caminho, e desta vez o uso irá causar problemas. Para unificar, a melhor solução é o seguinte comando.
Dim FileName As String = "MyFileName"
Dim MyPath1 As String = Application.StartupPath().TrimEnd("\") & "\" & FileName
Dim MyPath2 As String = My.Application.Info.DirectoryPath.TrimEnd("\") & "\" & FileName
Eu uso:
Imports System.IO
Dim strPath as String=Directory.GetCurrentDirectory