Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: GetWindowModuleFileName поможите!!! Добавлено: 17.11.03 19:37  

Автор вопроса:  Atma | ICQ: 161504457 

функция WinApi GetWindowModuleFileName как ее пользоваться?

Можно пример на английском?

Можно и на русском, как ее объявить и как ею воспользоваться?

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #1
Добавлено: 18.11.03 09:45
Такой функции нет ни в API Viewer, ни в APIGuide...
Есть функция GetModuleFileName. Вот пример из API Guide:

Private Declare Function GetModuleFileName Lib "kernel32" Alias "GetModuleFileNameA" (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long
Private Declare Function GetWindowWord Lib "user32" (ByVal hwnd As Long, ByVal nIndex As Long) As Integer
Const GWW_HINSTANCE = (-6)
Private Sub Form_Load()
'KPD-Team 2000
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net
Dim ModuleName As String, FileName As String, hInst As Long
'create a buffer
ModuleName = String$(128, Chr$(0))
'get the hInstance application:
hInst = GetWindowWord(Me.hwnd, GWW_HINSTANCE)
'get the ModuleFileName:
'enter the following two lines as one, single line:
ModuleName = Left$(ModuleName, GetModuleFileName(hInst, ModuleName, Len(ModuleName)))
'set graphics mode to persistent
Me.AutoRedraw = True
'show the module filename
Me.Print "Module Filename: " + ModuleName
End Sub

Ответить

Номер ответа: 2
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #2
Добавлено: 29.11.03 18:23

В 2003-м, который немецкого производства вроде есть.

Private Declare Function GetWindowModuleFileName Lib "user32.dll" (ByVal hwnd As Long, ByVal pszFileName As String, ByVal cchFileNameMax As Long) As Long

Могу сделать предположение по использованию.

hWnd - номер окна цели

pszFileName - буфер, в который функция вернёт имя модуля. Попробуй в 2-х вариантах ANSI и UNICODE. Скорее всего это ХР-ная ф-я, т.к. алиаса на А нет. Скорее всего пойдёт ByRef.

cchFileNameMax - скорее всего длина строчного буфера. Попробуй 0. Если не покатит - что то типа 255 или больше.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам