Installation (MFX.Mobile)
Inhalt
Servervoraussetzungen
Betriebssystem
Windows Server 2012 R2
.Net-Framework
Folgende Softwarepakte sind am Server zu installieren
.NET Framework 4.7.2
Für den LCWebService ist mindestens .NET Framework 4.7.2 erforderlich.
Prüfen .Net Framework Version (PowerShell)
Get-ItemProperty -Path “HKLM:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full” | Format-List Release]] ></ac:plain-text-body></ac:structured-macro><p>Wert müss größer als 461808 sein</p><h3>Achtung: Ab Version 5.15.0.0 ist das .NET 8.0 Hosting-Bundle erforderlich!</h3><p>Q:\LC.NET\TC.Mobile\Prerequisites\dotnet-hosting-8.0.0-win.exe</p><p>Beinhaltet alles, um eine .NET Core Anwendung zu betreiben.</p><p>Tritt bei der Installation ein Fehler auf, dann muss eventuell das C++ Redistributable Package installiert werden (Server 2012)</p><p>Q:\LC.NET\TC.Mobile\Prerequisites\VC_redist.x64.exe</p><p>Oder online: <a href="https://dotnet.microsoft.com/en-us/download/dotnet/6.0">https://dotnet.microsoft.com/en-us/download/dotnet/8.0</a></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="32b49a8e-85d8-4a06-8574-0b2c145c8576"><ac:parameter ac:name="title">Prüfen .Net Core Version </ac:parameter><ac:plain-text-body><![CDATA[dotnet --list-runtimes]] ></ac:plain-text-body></ac:structured-macro><p>Es sollte ein Eintrag mit Microsoft.AspNetCore.App 8.0.x vorhanden sein</p><h3>.NET 6.0 Hosting-Bundle</h3><p>Q:\LC.NET\TC.Mobile\Prerequisites\dotnet-hosting-6.0.3-win.exe</p><p>Beinhaltet alles, um eine .NET Core Anwendung zu betreiben.</p><p>Tritt bei der Installation ein Fehler auf, dann muss eventuell das C++ Redistributable Package installiert werden (Server 2012)</p><p>Q:\LC.NET\TC.Mobile\Prerequisites\VC_redist.x64.exe</p><p>Oder online: <a href="https://dotnet.microsoft.com/en-us/download/dotnet/6.0">https://dotnet.microsoft.com/en-us/download/dotnet/6.0</a></p><ac:structured-macro ac:name="code" ac:schema-version="1" ac:macro-id="a504149c-9b08-4f88-bf8e-a00b7907905d"><ac:parameter ac:name="title">Prüfen .Net Core Version </ac:parameter><ac:plain-text-body><![CDATA[dotnet --list-runtimes]] ></ac:plain-text-body></ac:structured-macro><p>Es sollte ein Eintrag mit Microsoft.AspNetCore.App 6.0.x vorhanden sein</p><p><br /></p><h2>Lizenzdatei</h2><p>Im LC.LicenseKey (L:\LC.LicenseKey) muss eine neue Lizenz erstellt werden mit der Anzahl der TC.Mobile Benutzer. Die Lizenz muss dann am Server eingespielt werden.</p><p><ac:image ac:height="138"><ri:attachment ri:filename="image2022-4-12_15-26-54.png" /></ac:image></p><p><br /></p><h1>Softwareinstallation</h1><h2>LCWebService</h2><p>Download: <span class="nolink"><span class="nolink">http://download.pollex-lc.com/LCWebService/<Major>.<Minor>/LCWebServiceLatest.zip</span> z.B.</span> <a href="http://download.pollex-lc.com/LCWebservice/4.100/LCWebservice_Latest.zip">http://download.pollex-lc.com/LCWebservice/4.100/LCWebService_Latest.zip</a></p><p>Beinhaltet die Services, die für die Kommunikation zwischen TC.Mobile und den LC.Functions benötigt werden.</p><p>Der LCWebservice Ordner muss in den Ordner LCWebServices kopiert werden (Liegt normalerweise unter C:\inetpub\wwwroot\LCWebservices)</p><p>Sollten bereits andere Web-Anwendungen wie zum Beispiel "WebShop4.0" installiert sein, kann dieser Ordner auch umbenannt werden und damit die einzelnen Programme versionsunabhängig betrieben werden können.</p><p>Zum Beispiel "LCTCMWebService".</p><p>Im IIS-Manager muss für den neuen Ordner "LCTCMWebService" unter Sites - Pollex - LCWebServices die Option "In Anwendung konvertieren" gewählt werden.</p><p>Abhängig von der Konfiguration (http/https) muss die Datei web.http.config oder web.https.config auf web.config umbenannt werden</p><p>Folgende Dateien müssen im LCWebService bereitgestellt werden:</p><ul><li>im Ordner "...\wwwroot\LCWebServices\" muss die "WebServiceUrlSettings.config" eingefügt werden (kann aus "...\wwwroot\LC.NET\Company\" kopiert werden)</li><li>im Ordner "...\wwwroot\LCWebServices\LCWebService\" muss die "ApplicationSettings.config" eingefügt werden (kann aus "...\wwwroot\LC.NET\Company\" kopiert werden)</li></ul><h2>TC.Mobile</h2><p>Download: <span class="nolink">http://download.pollex-lc.com/TC.Mobile/<Major>.<Minor>/TC.Mobile_Latest.zip z.B.</span> <a href="http://download.pollex-lc.com/TC.Mobile/4.100/TC.Mobile_Latest.zip">http://download.pollex-lc.com/TC.Mobile/4.100/TC.Mobile_Latest.zip</a></p><p>Wird in einen Ordner direkt im WWWROOT installiert - Beispiel: C:\inetpub\wwwroot\TC.Mobile</p><ul><li>Im IIS-Manger sollte eine neue Website angelegt werden mit dem TC.Mobile Verzeichnis (z.B. C:\inetpub\wwwroot\TC.Mobile) als Root Verzeichnis. Auf der Seite sollten unter Bindung die entsprechenden Ports/Protokolle/Domain Namen hinterlegt werden (z.b Protokoll http: Port 80 Domain tc-mobile.test.at + Protokoll https: Port 443 Domain: tc-mobile.test.at )</li><li>Im installierten Ordner gibt es die Datei "Settings.json" - darin ist der Link zum LCWebService und zur verwendeten Datenbank einzustellen:<br /><ac:image><ri:attachment ri:filename="image2021-4-2_10-27-36.png" /></ac:image></li></ul><p><br /></p><h1>Konfiguration IIS</h1><h2>HTTPS deaktivieren</h2><p>Wenn TC.Mobile trotz Aufrufs mit "http" von selbst immer auf "https" springt, dann muss im IIS auf Ebene der Website das "Binding" für https entfernt werden:</p><p><ac:image ac:height="400"><ri:attachment ri:filename="image2021-5-11_15-48-18.png" /></ac:image></p><p><br /></p><h1>Videoanleitung</h1><p>R:\PLX_KB_Videos\Installation_TC.Mobile.mp4</p><p><br /></p><h1>Fehler</h1><h2>An error occured while starting the application</h2><p>1) Überprüfen ob der IIS User auf dem TC.Mobile Ordner einen Vollzugriff besitzt. Anschließend den App Pool neu starten.</p><p>2) Falls TC.Mobile nach wie vor nicht funktioniert - in der web.config vom TC.Mobile Ordner stdoutLogEnabled=true setzen und anschließend die tc.mobile.exe ausführen umso den Log Ordner zu erstellen.</p><p>Danach kann das internal.log file überprüft werden.</p><p>Nach der Fehleranalyse wieder stdoutLogEnabled=false setzen, da es sonst zu Performance Probleme kommen kann.</p><p><br /></p>
Wert müss größer als 461808 sein
Achtung: Ab Version 5.15.0.0 ist das .NET 8.0 Hosting-Bundle erforderlich!
Q:\LC.NET\TC.Mobile\Prerequisites\dotnet-hosting-8.0.0-win.exe
Beinhaltet alles, um eine .NET Core Anwendung zu betreiben.
Tritt bei der Installation ein Fehler auf, dann muss eventuell das C++ Redistributable Package installiert werden (Server 2012)
Q:\LC.NET\TC.Mobile\Prerequisites\VC_redist.x64.exe
Oder online: https://dotnet.microsoft.com/en-us/download/dotnet/8.0
Prüfen .Net Core Version
dotnet --list-runtimes
Es sollte ein Eintrag mit Microsoft.AspNetCore.App 8.0.x vorhanden sein
.NET 6.0 Hosting-Bundle
Q:\LC.NET\TC.Mobile\Prerequisites\dotnet-hosting-6.0.3-win.exe
Beinhaltet alles, um eine .NET Core Anwendung zu betreiben.
Tritt bei der Installation ein Fehler auf, dann muss eventuell das C++ Redistributable Package installiert werden (Server 2012)
Q:\LC.NET\TC.Mobile\Prerequisites\VC_redist.x64.exe
Oder online: https://dotnet.microsoft.com/en-us/download/dotnet/6.0
Prüfen .Net Core
dotnet --list-runtimes
Es sollte ein Eintrag mit Microsoft.AspNetCore.App 6.0.x vorhanden sein
Lizenzdatei
Im LC.LicenseKey (L:\LC.LicenseKey) muss eine neue Lizenz erstellt werden mit der Anzahl der TC.Mobile Benutzer. Die Lizenz muss dann am Server eingespielt werden.

Softwareinstallation
LCWebService
Download: http://download.pollex-lc.com/LCWebService/<Major>.<Minor>/LCWebServiceLatest.zip z.B. http://download.pollex-lc.com/LCWebservice/4.100/LCWebService_Latest.zip
Beinhaltet die Services, die für die Kommunikation zwischen TC.Mobile und den LC.Functions benötigt werden.
Der LCWebservice Ordner muss in den Ordner LCWebServices kopiert werden (Liegt normalerweise unter C:\inetpub\wwwroot\LCWebservices)
Sollten bereits andere Web-Anwendungen wie zum Beispiel "WebShop4.0" installiert sein, kann dieser Ordner auch umbenannt werden und damit die einzelnen Programme versionsunabhängig betrieben werden können.
Zum Beispiel "LCTCMWebService".
Im IIS-Manager muss für den neuen Ordner "LCTCMWebService" unter Sites - Pollex - LCWebServices die Option "In Anwendung konvertieren" gewählt werden.
Abhängig von der Konfiguration (http/https) muss die Datei web.http.config oder web.https.config auf web.config umbenannt werden
Folgende Dateien müssen im LCWebService bereitgestellt werden:
- im Ordner "...\wwwroot\LCWebServices\" muss die "WebServiceUrlSettings.config" eingefügt werden (kann aus "...\wwwroot\LC.NET\Company\" kopiert werden)
- im Ordner "...\wwwroot\LCWebServices\LCWebService\" muss die "ApplicationSettings.config" eingefügt werden (kann aus "...\wwwroot\LC.NET\Company\" kopiert werden)
TC.Mobile
Download: http://download.pollex-lc.com/TC.Mobile/<Major>.<Minor>/TC.Mobile_Latest.zip z.B. http://download.pollex-lc.com/TC.Mobile/4.100/TC.Mobile_Latest.zip
Wird in einen Ordner direkt im WWWROOT installiert - Beispiel: C:\inetpub\wwwroot\TC.Mobile
- Im IIS-Manger sollte eine neue Website angelegt werden mit dem TC.Mobile Verzeichnis (z.B. C:\inetpub\wwwroot\TC.Mobile) als Root Verzeichnis. Auf der Seite sollten unter Bindung die entsprechenden Ports/Protokolle/Domain Namen hinterlegt werden (z.b Protokoll http: Port 80 Domain tc-mobile.test.at + Protokoll https: Port 443 Domain: tc-mobile.test.at )
- Im installierten Ordner gibt es die Datei "Settings.json" - darin ist der Link zum LCWebService und zur verwendeten Datenbank einzustellen:

Konfiguration IIS
HTTPS deaktivieren
Wenn TC.Mobile trotz Aufrufs mit "http" von selbst immer auf "https" springt, dann muss im IIS auf Ebene der Website das "Binding" für https entfernt werden:

Videoanleitung
R:\PLX_KB_Videos\Installation_TC.Mobile.mp4
Fehler
An error occured while starting the application
1) Überprüfen ob der IIS User auf dem TC.Mobile Ordner einen Vollzugriff besitzt. Anschließend den App Pool neu starten.
2) Falls TC.Mobile nach wie vor nicht funktioniert - in der web.config vom TC.Mobile Ordner stdoutLogEnabled=true setzen und anschließend die tc.mobile.exe ausführen umso den Log Ordner zu erstellen.
Danach kann das internal.log file überprüft werden.
Nach der Fehleranalyse wieder stdoutLogEnabled=false setzen, da es sonst zu Performance Probleme kommen kann.