Страница: 1 |
Вопрос: SaveSetting... а почему он не... | Добавлено: 10.03.06 19:39 |
Автор вопроса: ![]() |
Написал такую прогу, и неожиданно для себя нашел такой косяк... :( Оказывается SaveSetting теряет свои свойства даже если программа переименованна, не говоря уже о копировании. А есть ли в VB возможность записывать параметры в сам экзешник? Чтобы сам из себя данные читал. У меня такая вещь -
я написал что-то вроде редактора программы - т.е. одна программа редактирует другую через Savesetting, но если эту другую прогу переименовать или скопировать, то все сбрасывается на нули :( Помогите плиз. Мне нужно обойтись одним exe файлом, никаких других дополнительных файлов использовать нельзя. Помогите.... |
Ответы | Всего ответов: 8 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 218945948 Вопросов: 34 Ответов: 28 |
Профиль | Цитата | #1 | Добавлено: 10.03.06 19:46 |
Ёлки, оказывается Savesetting это вообще запись в реестр! Вот я обложался. А можно в сам экзешник что-нибудь записать? Хотябы в неработающий... |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() Вопросов: 215 Ответов: 1596 |
Web-сайт: Профиль | Цитата | #2 | Добавлено: 10.03.06 19:55 |
да, можно. скачай мою прогу Autorun Creator с www.vbkoders.info
там как-раз практикуется запись в екзешник. |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 304238252 Вопросов: 52 Ответов: 927 |
Профиль | Цитата | #3 | Добавлено: 10.03.06 20:18 |
2 psinetron: а можешь не лезть на vbkoders.info (кстати, в домене ошибка ![]() |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() Вопросов: 215 Ответов: 1596 |
Web-сайт: Профиль | Цитата | #4 | Добавлено: 10.03.06 20:43 |
psinetron,
не слушай этого провокатора, качай отсюдова: http://vbkoders.info/downfile281.html это прямая ссылка, никаких левых страниц это во-первых. во-вторых обращаюсь к особо одаренным: ОШИБКИ В ДОМЕНЕ НЕТУ!!! |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 233286456 Вопросов: 34 Ответов: 5445 |
Web-сайт: Профиль | Цитата | #5 | Добавлено: 10.03.06 22:55 |
Мое все равно лучше ![]() ![]() ![]() |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 233286456 Вопросов: 34 Ответов: 5445 |
Web-сайт: Профиль | Цитата | #6 | Добавлено: 10.03.06 22:55 |
ЗЫ
Зачем делать рекламу конкурентам, если все есть здесь ![]() |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client Вопросов: 236 Ответов: 8362 |
Профиль | Цитата | #7 | Добавлено: 10.03.06 23:44 |
эх... да не всё здесь есть, у меня всё есть ![]() Attribute VB_Name = "
![]() ' <МОДУЛЬ ДЛЯ ПРОГРАММНОГО ЧТЕНИЯ/ЗАПИСИ РЕСУРСОВ >| ' | ' = = = = = = = M A D E B Y H A C K E R = = = = = = | ' icq: 334479038, mail: no_detect@mail.ru | '==========================================================| Private Declare Function BeginUpdateResource Lib "kernel32" Alias "BeginUpdateResourceA" (ByVal pFileName As String, ByVal bDeleteExistingResources As Long) As Long Private Declare Function UpdateResource Lib "kernel32" Alias "UpdateResourceA" (ByVal hUpdate As Long, ByVal lpType As String, ByVal lpName As String, ByVal wLanguage As Long, lpData As Any, ByVal cbData As Long) As Long Private Declare Function EndUpdateResource Lib "kernel32" Alias "EndUpdateResourceA" (ByVal hUpdate As Long, ByVal fDiscard As Long) As Long Private Declare Function FindResourceEx Lib "kernel32" Alias "FindResourceExA" (ByVal hModule As Long, ByVal lpType As String, ByVal lpName As String, ByVal wLanguage As Long) As Long Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long Private Declare Function LockResource Lib "kernel32" (ByVal hResData As Long) As Long Private Declare Function SizeofResource Lib "kernel32" (ByVal hInstance As Long, ByVal hResInfo As Long) As Long Private Declare Function LoadResource Lib "kernel32" (ByVal hInstance As Long, ByVal hResInfo As Long) As Long Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long) Public Sub WriteRES(sFile As String, sData As String, sType As String, sName As String) Dim h As Long h = BeginUpdateResource(sFile, 0) Call UpdateResource(h, sType, sName, 1049, ByVal sData, Len(sData)) '1049 - язык Call EndUpdateResource(h, 0) End Sub Public Function ReadRES(sFile As String, sType As String, sName As String) As String Dim txt As String Dim hgRes As Long hLib = LoadLibrary(sFile) hRes = FindResourceEx(hLib, ByVal sType, ByVal sName, 1049) hLRes = LoadResource(hLib, hRes) hgRes = LockResource(hLRes) lenRes = SizeofResource(hLib, hRes) txt = Space(lenRes) CopyMemory ByVal txt, ByVal hgRes, lenRes FreeLibrary hLib ReadRES = txt End Function при записи канэшна экзешник не должен быть запущен ![]() |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() Вопросов: 215 Ответов: 1596 |
Web-сайт: Профиль | Цитата | #8 | Добавлено: 11.03.06 09:42 |
хм, а я вот проперти баг пользовал..
имхо, Property Bag лучше и надежнее |
Страница: 1 |
|