Avatar billede 60bitarne Nybegynder
01. juli 2010 - 22:03 Der er 3 kommentarer og
1 løsning

Installation af *.msi på servere. Generelt program design.

Jeg har fået til opgave at lave et add-in til VS der skal bygge, flytte og installere projekter på servere.

Jeg er dog lidt i tvivl om hvordan jeg vil implementere installationen, og kunne godt bruge lidt consept-scope inspiration/hjælp til dette.

1 mulighed: Lave en service på serverne, der kigger efter ændringer i en mappe, og installere alle *.msi filer der bliver lagt deri. Logger til en text fil så jeg kan kontrollere at installationen er fuldført korrekt.

2 mulighed: Lave en service jeg kan kommunikere med over en form for socket forbindelse, og på den måde styre installationen og få direkte svar tilbage.

Findes der andre måder at installere en msi fil remote? Eller kan i komme på en anden mulighed?

*Der er netværksadgang til filerne fra Clientcomputerne.
Avatar billede lasserasch Juniormester
02. juli 2010 - 23:35 #1
Hejsa.

Skal lige være sikker på at jeg forstår dig korrekt.

Du har skrevet noget software og lavet en .msi pakke eller hvordan?

I så fald tror jeg dit spørgsmål er oprettet i den forkerte kategori.

Jeg har arbejdet i store virksomheder, bl.a. på Syddansk Universitet hvor vi brugte SCOM fra Microsoft til at rulle alle mulige pakker ud på klienterne.

Hvis det er et VS projekt så ville jeg installere dit program via den publish feat. som du har tilgængelig og ikke bruge MSI pakker.

Det vil nemlig gøre at du kan lave releases og publicere dem til din server og når klienterne så starter applikationen, opdaterer de automatisk til nyeste version.

Håber du kan bruge det input til lidt :-)


Mvh.
Lasse
Avatar billede 60bitarne Nybegynder
02. juli 2010 - 23:56 #2
Hej

Nej du har misforstået hvad jeg skal bruge det til.

Det er serverne der skal bruge programmet. Der er ingen klienter involverede.

Programmet skal installeres fra den msi pakke jeg bygger fra Visual Studio.
Avatar billede lasserasch Juniormester
04. juli 2010 - 11:57 #3
Okay.

Men så forstår stadig ikke hvorfor du skal lave det som et Add In til visual studio. Er der en grund til at det skal være sådan?

Den funktionalitet som du efterspørger (hvis jeg da har forstået dig korrekt nu :-) ) ligger jo i Visual Studio.

Du kan jo bruge Post-build eventet i dit setup projekt til at køre et script som installerer din msi pakke på dine servere med det samme.

Alternativt skal du over og have fat i noget SCOM agtigt værktøj som koster knaster :-).


Mvh.
Lasse

set MSIPATH=Temp\PROJEKTNAVN
set MSINAME=Navnpådinsmssetupfil.msi
set SERVERNAME=DINSERVER
set SERVERPATH=\\%SERVERNAME%
set DRIVE=C
set FILEPATH=%DRIVE%:\%MSIPATH%
set FILENAME=%FILEPATH%\%MSINAME%
set UNC=%SERVERPATH%\%DRIVE%$\%MSIPATH%

if not exist "%UNC%" mkdir "%UNC%"
if errorlevel 1 goto ERROR

echo afinstallerer "%FILENAME%" fra server %SERVERNAME%
psexec %SERVERPATH% -w "%FILEPATH%" msiexec /uninstall "%FILENAME%" -quiet
if errorlevel 1605 goto CONTINUE
if errorlevel 1619 goto CONTINUE
if errorlevel 1606 goto ERROR
if errorlevel 1 goto ERROR

:CONTINUE
echo kopierer "$(BuiltOuputPath)" til "%UNC%"
xcopy /R /Y "$(BuiltOuputPath)" "%UNC%"
if errorlevel 1 goto ERROR

echo Installerer "%FILENAME%" på server %SERVERNAME%
psexec "%SERVERPATH%" -w "%FILEPATH%" msiexec /i "%FILENAME%" -quiet
if errorlevel 1 goto ERROR
goto OK

:OK
echo PostBuild afsluttet korrekt for projektet

:ERROR
echo PostBuild fejlede for projektet
exit 1
Avatar billede 60bitarne Nybegynder
01. november 2010 - 19:49 #4
Lavede en service til servererne, der installerer de msi pakker der bliver flyttet dertil af VS-pluginnet
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester