» »

Izvedba nadgrajevanja programske opreme (update)

Izvedba nadgrajevanja programske opreme (update)

alexa-lol ::

hej :D mene zanima kako je fizično izvedena nadgradnja programske opreme.

Mamo npr. program.exe, in uporabnik klikne Update. Kaj se potem prenese iz interneta? Novi različice .dll? Je morda tako... Update -> Prenos novih .dll in .exe -> program kliče nek .exe in se konča -> ta .exe potem zamenja .dll in .exe

Je tako nekako? Ma kdo kake linke oz. knjige v zvezi s tem?

hvala
lp

Mipe ::

Najpogostejši način: DIY. Prenos novega programa in povozitev starega.

alexa-lol ::

no to itak... ampak če pišeš program.. kako bi tako "metodo" naredil, da bi ti to izvedla

zhigatsey ::

Tukaj je debata o tem za delphi verzijo.
Jaz sem enkrat to prenesel v c++ vendar nikoli nisem uporabil ali stestiral.

#include <windows.h>

bool fileExists(const char* fileName)
{
	WIN32_FIND_DATA findData;
	HANDLE handle = FindFirstFileA(fileName, &findData);
	bool result = (handle != INVALID_HANDLE_VALUE);
	if (result)
		FindClose(handle);
	return result;
}

int main(int argc, char* argv[])
{
	if (argc != 2)
		return 1;

	// If source file exists
	if (!fileExists(argv[1]))
		return 1;

	bool fileCopied;
	do
	{
		// Copy target file over source file
		fileCopied = CopyFileA(argv[1], argv[2], false);
		if (!fileCopied)
			Sleep(10);
	}
	while (fileCopied);

	STARTUPINFO si;
	PROCESS_INFORMATION pi;

	// Run new exe file
	CreateProcessA(argv[2], 0, 0, 0, false, 0, 0, 0, &si, &pi);

	return 0;
}

alexa-lol ::

hvala.. bom pogledal in poskušal implementirati v C, Java oz VB.net pa bom prilimal


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Keylogger

Oddelek: Programska oprema
352643 (1370) Blisk
»

c# tiho tiskanje slik.

Oddelek: Programiranje
101947 (1618) OmegaM
»

[c] Enaki datoteki

Oddelek: Programiranje
71038 (898) Spura
»

[C++] Portabilna funkcija za kopiranje datotek

Oddelek: Programiranje
172263 (1919) Gundolf
»

Potrebuje HEX v BIN pretvornik

Oddelek: Programiranje
101875 (1728) roscha

Več podobnih tem