19.03.2005, 13:59
общий
это ответ
Здравствуйте, Александр А.А.!
1.Для начала нужно определить список подгружаемых модулей вашей прогой. Таких прог не мало в инете, не вспомню конкретно, но предложить могу PROCDUMP прога правда для другого, но модули показывает;-) Так вот из полученного листа определяете нужные файлы. Ну и положив их рядом(или в папку system(system32))с вашем EXE на другом компе все должно работать. Есть одно ‘НО‘, некоторые dll модули не хотят работать без регистрации в системе. Если будет такая ситуация, зарегистрируйте модули приложением regsvr32.exe.
2. По поводу вложения недостающих компонентов в EXE.
Если конечно на машине нету msvbvm60.dll(говорим о VB6), то данный метод не прокатит, а если какого-нибудб OCX то нормально.
Создаем файл ресурсов и пихаем туда в раздел CUSTOM недостающий компонент. И следующий код на Form_Initialize()
----------------------------------
Private Sub Form_Initialize()
‘путь например такой, и 101 интедификатор ресурса
Extract "c:\windows\system\myocx.ocx", 101
End Sub
Private Sub Extract(toFile As String, ID As Integer)
On Error Resume Next
Dim a() As Byte
a() = LoadResData(ID, "CUSTOM")
Open toFile For Binary Access Write As #1
Put #1, , a()
Close #1
End Sub
---------------------------------
Данная подпрограмма извлечет файл из файла ресурсов и сохранит его на диске в нужном месте, с нужным именем.
Удачи.