программа-инсталлятор
От: Призрак  
Дата: 17.05.01 13:54
Оценка:
Приветствую всех.
Возникла проблема — нужно написать простую программу-инсталлятор для небольшой системы, работающую на любых Windows платформах. Размер системы пока не превышает 2 Гига, поэтому известные установщики нет смысла использовать, скорее есть смысл вставить небольшой блок в основной текст. Если у кого-нибудь есть пример инсталлятора и не жалко отдать, вышлите его на мыло wkanadin@mail.ru

Жизнь не так проста, как кажется. Она гораздо проще.
Re: программа-инсталлятор
От: Alex  
Дата: 17.05.01 14:19
Оценка:
Здравствуйте Призрак , вы писали:

П>Приветствую всех.

П>Возникла проблема — нужно написать простую программу-инсталлятор

Насчет 2 гигов не понял...

Можно использовать INF файл для инсталяции, могу кинуть пример.
Re[2]: программа-инсталлятор
От: Призрак  
Дата: 18.05.01 07:56
Оценка:
Здравствуйте Alex, вы писали:

A>Здравствуйте Призрак , вы писали:


П>>Приветствую всех.

П>>Возникла проблема — нужно написать простую программу-инсталлятор

A>Насчет 2 гигов не понял...


A>Можно использовать INF файл для инсталяции, могу кинуть пример.


2 гигабайта — размер испоняемого файла и dll-ки. Архив влезает на дискетку.
И мне нужно всего-лишь прописаться в меню "Пуск/Программы", при необходимости — убраться оттуда. Буду рад любому примеру.

Вечный Призрак.
Re: программа-инсталлятор
От: muma Германия  
Дата: 19.05.01 18:53
Оценка:
Создать линк, удалить линк ) ....

#include <shlobj.h>
.....
.....

void LinkCreate(LPTSTR fname_to_create_link, LPTSTR lnk_fname, int nFolder, LPTSTR lsWorkDir)
{
IShellLink *psl = NULL;
IPersistFile *pPf = NULL;
WORD wsz[MAX_PATH];
TCHAR buffer[MAX_PATH];
LPITEMIDLIST pidl;

if(!FAILED(OleInitialize(NULL)))
if(!FAILED(CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,IID_IShellLink, (LPVOID*)&psl)))
if(!FAILED(psl->QueryInterface(IID_IPersistFile, (LPVOID*)&pPf)))
if(!FAILED(psl->SetPath(fname_to_create_link)))
if(!FAILED(psl->SetWorkingDirectory(lsWorkDir)))
{
if(nFolder == CSIDL_STARTUP)
{
// если хочешь свернутое
//psl->SetShowCmd(SW_SHOWMINNOACTIVE);
// если хочешь аргументы
//psl->SetArguments("/a1 /a2");
}

//place the shortcut on the nFolder
SHGetSpecialFolderLocation(NULL, nFolder, &pidl);
SHGetPathFromIDList(pidl, buffer);
lstrcat(buffer,"\\");
lstrcat(buffer,lnk_fname);
MultiByteToWideChar(CP_ACP, 0, buffer, -1, wsz, MAX_PATH);
pPf->Save(wsz, TRUE);// == S_OK
}

if(pPf) pPf->Release();
if(psl) psl->Release();

}

void LinkRemove(LPTSTR lnk_fname, int nFolder)
{
TCHAR buf[MAX_PATH];
LPITEMIDLIST pidl;
SHGetSpecialFolderLocation(NULL, nFolder, &pidl);
SHGetPathFromIDList(pidl, buf);
lstrcat(buf,"\\");
lstrcat(buf,lnk_fname);
DeleteFile(buf);
}
Използование
LinkCreate(lpFileForLink, g_szLinkFileName,CSIDL_STARTUP,szWorkDir);
LinkCreate(lpFileForLink, g_szLinkFileName,CSIDL_DESKTOP,szWorkDir);
LinkCreate(lpFileForLink, g_szLinkFileName,CSIDL_STARTMENU,szWorkDir);
LinkCreate(lpFileForLink, g_szLinkFileName,CSIDL_PROGRAMS,szWorkDir); /// ------ !!!
и т.д.
LinkRemove(g_szLinkFileName,CSIDL_DESKTOP);
LinkRemove(g_szLinkFileName,CSIDL_STARTMENU);
LinkRemove(g_szLinkFileName,CSIDL_STARTUP);
LinkRemove(g_szLinkFileName,CSIDL_PROGRAMS);
и.т.д.
Re[3]: программа-инсталлятор
От: Святой Дух с трансглюкатором Россия ndk.narod.ru
Дата: 31.05.01 15:54
Оценка:
Здравствуйте Призрак , вы писали:

П>2 гигабайта — размер испоняемого файла и dll-ки. Архив влезает на дискетку.


2 ГИГА это круто... ;-))
Re[4]: программа-инсталлятор
От: Alex Ostapenko Россия  
Дата: 01.06.01 08:24
Оценка:
Здравствуйте Святой Дух с трансглюкатором, вы писали:

СДСТ>Здравствуйте Призрак , вы писали:


П>>2 гигабайта — размер испоняемого файла и dll-ки. Архив влезает на дискетку.


8-( )

СДСТ>2 ГИГА это круто... ;-))


:))))) И где он только нашел такие дискеты?
Re: программа-инсталлятор
От: abibok  
Дата: 04.06.01 08:20
Оценка:
На сайте www.winamp.com есть PIMP-инсталлятор (попроще) и SuperPIMP (понавороченней). Для маленьких вещей — незаменимая штука.
Re[5]: программа-инсталлятор
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.06.01 18:33
Оценка:
Здравствуйте Alex Ostapenko, вы писали:

AO>:))))) И где он только нашел такие дискеты?


Да он же русским языком говорит "Архив влезает на дискетку."

Так что провильней вопрос сформулировать так: ГДЕ он взял ТАКОЙ архиватор??? ;)
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: программа-инсталлятор
От: Святой Дух с трансглюкатором Россия ndk.narod.ru
Дата: 05.06.01 03:04
Оценка:
Здравствуйте VladD2, вы писали:

VD>Так что провильней вопрос сформулировать так: ГДЕ он взял ТАКОЙ архиватор??? ;)


Или где он взял такой компилятор? Наверное, в линкере прописал не тот ALIGN... :-)
Хотя, стоп, может хватит ржать над человеком. Он же за помощью обратился. Слушай, Призрак,
а может использовать саморастрах... самораспаковывающийся архив. Сейчас многие
Win(Gluk)Zip(Magic,Master) (архиваторы т.е.) позволяют создавать простые инсталяторы.
Правда они позволяют, обычно, только создавать папку разместить там файлы и по завершению
что-нибудь запустить.
Re[2]: программа-инсталлятор
От: Святой Дух с трансглюкатором Россия ndk.narod.ru
Дата: 05.06.01 03:16
Оценка:
Здравствуйте abibok, вы писали:

A>На сайте www.winamp.com есть PIMP-инсталлятор (попроще) и SuperPIMP (понавороченней). Для маленьких вещей — незаменимая штука.


А со своей стороны я посоветую инсталятор, который сам использую.
До безобразия простой, но очень удобный. Посмотри http://www.jrsoftware.org/isinfo.htm.
К крохотному дистрибутиву прилагается примеры. Очень советую. Если возникнут вопросы
по этому инсталятору, спрашивай.
Re[7]: программа-инсталлятор
От: Призрак  
Дата: 05.06.01 05:41
Оценка:
Сердечно рад за всех, получивших удовольствие от смеха над моей скромной персоны и присущего ей косноязычия. Желаю Вам и далее встречать в окружающих поводы для улыбки, желательно доброй.

VD>>Так что провильней вопрос сформулировать так: ГДЕ он взял ТАКОЙ архиватор??? ;)


СДСТ>Или где он взял такой компилятор? Наверное, в линкере прописал не тот ALIGN... :-)

СДСТ>Хотя, стоп, может хватит ржать над человеком. Он же за помощью обратился. Слушай, Призрак,
СДСТ>а может использовать саморастрах... самораспаковывающийся архив. Сейчас многие
СДСТ>Win(Gluk)Zip(Magic,Master) (архиваторы т.е.) позволяют создавать простые инсталяторы.
СДСТ>Правда они позволяют, обычно, только создавать папку разместить там файлы и по завершению
СДСТ>что-нибудь запустить.

Проблема состоит не в том, чтобы запихнуть систему в самораспаковывающийся архив. Проблема в том, что необходимо в виндовое меню Пуск/Программы запихнуть свою папочку с ярлычком.

Жизнь не так проста, как кажется. Она гораздо проще.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.