Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.116.8.110] |
|
Сообщ.
#1
,
|
|
|
Подскажите программу чтобы узнать какие компоненты использует прога ( dll , ocx , и любые другие файлы )
ЗЫ : ShowDep подойдёт или надо чё то посерьёзнее ? |
Сообщ.
#2
,
|
|
|
Просьба теперь на этот вопрос направлять людей в FAQ: Какие компоненты(DLL,OCX и т.п.) использует прога
Подойдет че-то и попроще, например вот это: WinNT Only: Option Explicit Const MAX_PATH = 260 Private Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccessas As Long, ByVal bInheritHandle As Long, ByVal dwProcId As Long) As Long Private Declare Function GetModuleFileNameExA Lib "psapi.dll" (ByVal hProcess As Long, ByVal hModule As Long, ByVal ModuleName As String, ByVal nSize As Long) As Long Private Declare Function GetCurrentProcessId Lib "kernel32" () As Long Private Declare Function EnumProcessModules Lib "psapi.dll" (ByVal hProcess As Long, ByRef lphModule As Long, ByVal cb As Long, ByRef cbNeeded As Long) As Long Private Const PROCESS_QUERY_INFORMATION = &H400 Private Const PROCESS_VM_READ = 16 'Добавить на форму Листбокс Private Sub Form_Load() Dim i As Long Dim lRet As Long Dim hProcess As Long Dim Modules(1 To 200) As Long Dim ModuleName As String hProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, GetCurrentProcessId) If (hProcess <> 0) Then lRet = EnumProcessModules(hProcess, Modules(1), 200, 0) If lRet <> 0 Then For i = 1 To 200 If Modules(i) <> 0 Then ModuleName = Space(MAX_PATH) lRet = GetModuleFileNameExA(hProcess, Modules(i), ModuleName, MAX_PATH) ModuleName = Left$(ModuleName, lRet) Call List1.AddItem(ModuleName) End If Next End If End If End Sub |
Сообщ.
#3
,
|
|
|
Браво SCINER, а под win98 пойдет?
Добавлено Кстати, в Вашем API-Guide такую функцию не нашел GetModuleFileNameExA. |
Сообщ.
#4
,
|
|
|
Цитата Читай внимательней. Я же уже написал сразу. Чтобы не было подобных вопросов!Браво SCINER, а под win98 пойдет? Цитата Кстати, в Вашем API-Guide такую функцию не нашел GetModuleFileNameExA. Получше посмотри. Есть там такая. Специально седня его качнул и посмотрел. |
Сообщ.
#5
,
|
|
|
Скажите, а целесообразно ли собрать все эти компоненты в одну папку - вдруг у клиента(заказчика программы) какой то из них не окажется...
Кстати видимо эту программу-код можно видимо малость изменить и она эту операцию сможет выполнить автоматом........ |
Сообщ.
#6
,
|
|
|
Цитата час @ а целесообразно ли собрать все эти компоненты в одну папку - вдруг у клиента(заказчика программы) какой то из них не окажется... Целесообразно делать инсталлятор со всеми необходимыми компонентами. |