Программирование
Веб программирование

Как узнать полный путь к своему исполняемому модулю

 
 

Иногда бывает нужно узнать полный путь к своему исполняемому файлу. В самом бейсике есть кое-какие жалкие свойства, типа App.Path - возвращает полный путь без имени файла, и App.ExeName - возвращает путь без расширения, {facepalm}. Прочитали? Теперь забудьте про существование App.ExeName, ибо никакого толку от него нет.





Option Explicit ' защита от случайных переменных. Можно убрать, по желанию. Private Declare Function GetModuleFileName Lib "kernel32" Alias "GetModuleFileNameA" (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long ' Декларируем API функцию, которая позволяет узнать имя по хендлу модуля(по умолчанию, чтобы узнать для своего, нужно передать 0). Public Function GetExeName() As String Dim buff As String 'Строковый буфер, который функция заполнит именем файла. Dim bufflen As Long ' Длина буфера bufflen = 300 buff = String(bufflen, 0) ' по-хорошему, буфер нужно передавать заполненным; заполняем нулевыми символами chr(0) GetExeName = Left(buff, GetModuleFileName(0, buff, bufflen)) ' вызываем функцию и закидываем результат на стек. End Function Private Sub Command1_Click() MsgBox GetExeName End Sub

Есть вопросы? Спроси на нашем форуме!!
Mishavet [16.06.2015 18:07]

Dim mepath As String
mepath = App.Path + "\" + App.EXEName

И никакой мороки с Dllками)

Mishavet [18.06.2015 16:13]

толк от них есть.

Stertor [02.09.2017 23:50]

Если кому-то интересно, я сейчас обитаю здесь:
FreeSoft.do.am - бесплатные программы, исходники, видеоуроки.



Оставлять комментарии можно только зарегистрированным




Предупреждение: Вся информация представлена исключительно в образовательных целях.
Ни авторы, ни администрация не несут ответственности в случае ее использования в противозаконных целях.