[C++] Install mode op Win2k

Pagina: 1
Acties:

  • schoene
  • Registratie: Maart 2003
  • Laatst online: 09:27
Goeiedag,

weet iemand hoe je tijdens het uitvoeren van een programma (een installatie-programma),
de toestand van Win2000 kan omzetten naar install-mode? Je kan dit verkrijgen door via
'Add and Remove' een programma op te starten, maar ik zou willen dat het niet noodzakelijk
is dat een programma langs deze wijze wordt geinstalleerd.
Op een Terminal Server kan je dit doen door op de commandline 'change user /install' uit te
voeren, maar op een gewone Win2000 machine heb je dit niet.

Tnx

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

Ik zal nu vast heel dom zijn, maar wat de n**k is "Install Mode"? :?

Professionele website nodig?


  • schoene
  • Registratie: Maart 2003
  • Laatst online: 09:27
Wel,

Als je als Administrator een setup.exe (althans de onze) uitvoert, en je installeert het via 'Add and Remove Programs', komen bvb de shortcuts in de 'All Users' folder. Als je het niet doet via 'Add and
Remove Programs', komen ze in de Folder voor Administrator alleen.
Nu ben ik mij er bewust van dat er installatiepakketten bestaan, waarin je de keuze krijgt waar de
shortcuts moeten geinstalleerd worden, maar we hebben al verscheidene keren onze chef te proberen
overtuigen een nieuwer installatiepakket te gebruiken (Ons installatiepakket heeft nogal wat
beperkingen), maar tevergeefs. Nu moeten wij een schil rond onze setup schrijven, die deze problemen
oplost :X
Ik heb thuis trouwens al heel veel programma's geinstalleerd die ditzelfde probleem hebben.

Mogelijks zijn er nog enkele registry-settings die verschillen, maar daar ben ik niet echt van op de hoogte.

Verwijderd

Ik ben geen C++ programmeur maar de commandline commando's zijn de volgende, dus ik neem aan dat je daar wel wat mee kunt:

change user /install om de handel in install mode te zetten.
change user /execute als je klaar bent en de machine weer in execute mode moet komen.
change user /query geeft de huidige status weer.

succes

  • BoAC
  • Registratie: Februari 2003
  • Laatst online: 08:34

BoAC

Memento mori

Verwijderd schreef op maandag 28 februari 2005 @ 10:48:
Ik ben geen C++ programmeur maar de commandline commando's zijn de volgende, dus ik neem aan dat je daar wel wat mee kunt:

change user /install om de handel in install mode te zetten.
change user /execute als je klaar bent en de machine weer in execute mode moet komen.
change user /query geeft de huidige status weer.

succes
Heb je dat zelf al uitgeprobeerd op een win2k machine?
schoene schreef op maandag 28 februari 2005 @ 10:10:
..
Op een Terminal Server kan je dit doen door op de commandline 'change user /install' uit te
voeren, maar op een gewone Win2000 machine heb je dit niet.
;)
Het lijkt erop dat alleen terminal-server machines die commands ondersteund. (Zie ook microsoft.com)

Verwijderd

Dat is ook de bedoeling van de TS, en ja deze werken alleen op een Terminal Server en hebben eigenlijk alleen maar zin als die in Application Mode staat.

<toevoeging>
ehhh.. ik heb er dus overheen gelezen. In non-TerminalServer mode werkt het dus niet...
sorry, ik zal volgende keer mijn bril opzetten.
</toevoeging>

[ Voor 37% gewijzigd door Verwijderd op 28-02-2005 10:56 ]


  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 09-04 22:08
Ik kan me vergissen, maar dit is toch een kwestie van je shortcuts verplaatsen? Dat is toch een simpele shell file move? Tussen CSIDL_PROGRAMS en CSIDL_COMMON_PROGRAMS?

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

MSalters schreef op maandag 28 februari 2005 @ 10:53:
Ik kan me vergissen, maar dit is toch een kwestie van je shortcuts verplaatsen? Dat is toch een simpele shell file move? Tussen CSIDL_PROGRAMS en CSIDL_COMMON_PROGRAMS?
Nee je vergist je niet :)

Professionele website nodig?


  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 09-04 22:08
Verwijderd schreef op maandag 28 februari 2005 @ 10:53:
Dat is ook de bedoeling van de TS, en ja deze werken alleen op een Terminal Server en hebben eigenlijk alleen maar zin als die in Application Mode staat.
TS verwart Install Mode/Application Mode (wat idd een Terminal Server onderscheid is) en start menu's. Alle NT varianten hebben per-user start menu's gebaseerd op een common user.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • schoene
  • Registratie: Maart 2003
  • Laatst online: 09:27
ik verwar ze niet, maar als je op een terminal server naar Install mode overgaat,
heb je de problemen niet die ik vernoemde. Dan moet je niet via Add and Remove
programs het programma installeren.
Maar op een gewone Win2000 machine heb je het 'Change User'-commando niet,
en dat is dus een probleem :)

Ivm die shortcuts verplaatsen: Dat heb ik ook al overwogen, maar volgens een collega
zijn er nog enkele verschillen tussen het al dan niet via 'Add and remove programs' installeren.
En dan is het verplaatsen van de shortcuts alleen dus geen oplossing.

  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 09-04 22:08
Uiteraard zijn er meer verschillen. HKLU verschilt ook. Zelfde verhaal, of zelf meteen goed zetten of na afloop verhuizen. ACLs kunnen ook verschillen, die wil je misschien ook aanpassen. Maar onder Win2K is er geen Install mode, dat zul je dus zelf moeten doen - als je ACLs of HKLU nodig hebt. Zeker HKLU lijkt me niet verstandig tijdens installatie.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein


  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

Volgens wat ik uit MSDN haal is blijkbaar de manier waarop msiexec.exe wordt aangeroepen bij Add and Remove Programs anders. Daar wordt het als volgt aangeroepen:

code:
1
msiexec /package packagenaam ALLUSERS=2


Wat betekent:
If the ALLUSERS property is set to 2, the Installer first attempts a per-machine installation. In this case, the per-machine installation succeeds only if the user has administrative access privileges on the computer. Otherwise, the Installer does a per-user installation.

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


  • schoene
  • Registratie: Maart 2003
  • Laatst online: 09:27
Korben schreef op dinsdag 01 maart 2005 @ 00:32:
Volgens wat ik uit MSDN haal is blijkbaar de manier waarop msiexec.exe wordt aangeroepen bij Add and Remove Programs anders. Daar wordt het als volgt aangeroepen:

code:
1
msiexec /package packagenaam ALLUSERS=2
Dat was heel interessant geweest, maar helaas maakt ons pakket geen msi-files ;)
Tjah, ik denk dat het manueel kopieren min of meer de enige optie wordt.
Indien nog iemand een idee heeft: wij gebruiken installshield express 2.12 (werd
geleverd met C++Builder 5)
Pagina: 1