Seite 2 von 2

Betreff: [WAPT 1.6.2][Fehler] Erstellen eines Oracle 11-Pakets

Veröffentlicht: 2. April 2020 - 11:33 Uhr
von jlatieule
Guten Morgen,

Der Pfad zur .rsp-Datei muss als absoluter Pfad und nicht als relativer Pfad angegeben werden.

Bezüglich der Verwendung der Eingabetaste am Ende der unbeaufsichtigten Installation muss der Parameter -nowait hinzugefügt werden

Code: Alle auswählen

oui.exe -silent -force -nowait
Ado schrieb: 24. Okt. 2019 - 9:59 Uhr Ich war schon fast am Verzweifeln, danke fürs Teilen, upperm. :D

Ich habe es genauso gemacht wie du und oui.exe direkt ausgeführt, und es funktioniert einwandfrei. Ich verstehe allerdings nicht, warum die .rsp-Datei nicht direkt aus dem WAPT-Ordner ausgeführt wird, obwohl ich die tnsnames-Datei kopieren kann...


Kurze Frage: Am Ende der Installation (oder Deinstallation) wird man aufgefordert, die Eingabeaufforderung mit Enter zu schließen. Wie kann man das umgehen? Ich habe nämlich den Eindruck, dass die Installation aktiv bleibt, solange man das nicht tut.

Betreff: [WAPT 1.6.2][Fehler] Erstellen eines Oracle 11-Pakets

Veröffentlicht: 3. April 2020 – 15:07 Uhr
von jlatieule
Upperm, aufbauend auf deiner Arbeit (herzlichen Glückwunsch übrigens!), hier ein weiterer Vorschlag, der keine RSP-Dateien für die Installation und Deinstallation verwendet. Ein weiterer Vorteil: Es müssen keine Registry-Schlüssel bearbeitet werden.

Gründe für das Fehlen von RSP-Dateien: http://www.dadbm.com/oracle-database-cl...onse-file/

Der Code wird dadurch erheblich vereinfacht.

Der Deinstallationsprozess muss noch getestet werden, wenn zwei Clients installiert sind. Werden beide gleichzeitig deinstalliert oder nicht? Das ist die Frage :Schock: :D

P.S.: In der Oracle-Ordnerstruktur habe ich den Unterordner „Client“ auf seinen ursprünglichen Zustand aus den offiziellen Oracle-Archiven zurückgesetzt. Der Code muss entsprechend angepasst werden.

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []
ORACLE_BASE = r'C:\Oracle'
ORACLE_HOME = r'C:\Oracle\product\11.2.0\client_1'

def install():

    if not isfile(makepath(ORACLE_HOME,'bin\oraclient11.dll')):

        # récupérer le chemin du script
        currentpath = os.path.dirname(os.path.realpath(__file__))
        print("Le chemin du script est : " + currentpath)

        print(r'Installation Oracle 11')
        run(r'Oracle\Client\setup.exe -silent -force -nowait -waitforcompletion FROM_LOCATION=%s\Oracle\client\stage\products.xml oracle.install.client.installType="Runtime" ORACLE_HOME="%s" ORACLE_BASE="%s" DECLINE_SECURITY_UPDATES=true' % (currentpath, ORACLE_HOME, ORACLE_BASE),shell=False,accept_returncodes=[0,-4])
    else:
        print(r'Oracle 11 est deja installe')

    if isfile(makepath(ORACLE_HOME,'bin\oraclient11.dll')):
        print(r'Installation du fichier TnsName')
        filecopyto('Oracle\\tnsnames.ora',makepath(ORACLE_HOME,'network\\admin'))

    # print (r'Installation des drivers ODBC')
    # run_powershell('Add-OdbcDsn -DriverName "Microsoft ODBC for Oracle" -DsnType System -Name MELODIE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
    # run_powershell('Add-OdbcDsn -DriverName "Microsoft ODBC for Oracle" -DsnType System -Name ARPEGE -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
    # run_powershell('Add-OdbcDsn -DriverName "Microsoft ODBC for Oracle" -DsnType System -Name REQUIEM -Platform 32-bit -SetPropertyValue "Server=arpetcp"')
    # run_powershell('Add-OdbcDsn -DriverName "Microsoft ODBC for Oracle" -DsnType System -Name MAESTRO -Platform 32-bit -SetPropertyValue "Server=arpetcp"')

def uninstall():

    if isfile(makepath(ORACLE_HOME,'deinstall','deinstall.bat')):
        print(r'Desinstallation Oracle 11')
        run(r'%s\deinstall\deinstall.bat -silent' % ORACLE_HOME)