Pincab Passion
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.



 
AccueilAccueil  PortailPortail  ÉvènementsÉvènements  WIPs Team PP  S'enregistrerS'enregistrer  ConnexionConnexion  Dons  








 

 [ASTUCE] Lister les anciennes tables

Aller en bas 
2 participants
AuteurMessage
alaingui789




Messages : 5
Département : 78

[ASTUCE] Lister les anciennes tables Empty
MessageSujet: [ASTUCE] Lister les anciennes tables   [ASTUCE] Lister les anciennes tables EmptySam 6 Jan 2024 - 19:41

Bonjour

j ai pas trouvé l'option dans pinUp donc 'ai fais mon petit script 
Cela liste les noms de tables/fichier de la base PinUp et cela regarde si ils existent dans le dossier Tables
Puis cela vous les affiche et cela créé un fichier listFile.txt dans Tables
Ce script ne fait aucune modification

Code:
# Chemin vers le dossier des tables

$cheminTables = "C:\vPinball\VisualPinball\Tables"
$sDatabasePath="C:\vPinball\PinUPSystem\PUPDatabase.db"

$tables = Get-ChildItem -Path $cheminTables -Filter *.vpx | ForEach-Object { $_.BaseName + ".vpx" }

$sDatabaseConnectionString=[string]::Format("data source={0}",$sDatabasePath)
$oSQLiteDBConnection = New-Object System.Data.SQLite.SQLiteConnection
$oSQLiteDBConnection.ConnectionString = $sDatabaseConnectionString
$oSQLiteDBConnection.open()

$command = $oSQLiteDBConnection.CreateCommand()
$command.CommandText = "SELECT GameName,GameFileName FROM games"
$reader = $command.ExecuteReader()

$tableDB = @()
while ($reader.HasRows){
if ($reader.Read()){
   $PosX=$reader["GameFileName"].length - 3
   $finC=$reader["GameFileName"].substring($PosX,3).tolower()
   if ($finC -eq 'vpx') {$tableDB += ,@($reader["GameFileName"])}

}
}
#Initialise le compteur
$Compteur=0
Clear-Content $cheminTables"\listeFile.txt"

Set-Content -Path $cheminTables"\listeFile.txt" -Value (Get-Date)
#on va parcourir la table du répertorie  $chemintables
$tableDB | ForEach-Object {
    if ($_ -notin $tables) {
$Compteur ++
        Write-Host "`La base contient ce fichier en trop [$_]"
Add-Content -Path $cheminTables"\listeFile.txt" -Value $_
    }
}
Write-Host $Compteur  fichiers en trop.
$reader.Close()
$oSQLiteDBConnection.Close()





le script est orienté tables .vpx

peskopat aime ce message

Revenir en haut Aller en bas
actarus
Modérateur
actarus


Messages : 1553
Département : 06

[ASTUCE] Lister les anciennes tables Empty
MessageSujet: Re: [ASTUCE] Lister les anciennes tables   [ASTUCE] Lister les anciennes tables EmptyLun 8 Jan 2024 - 21:12

Bonjour,
Merci pour le script !
En revanche,je ne suis pas tres clair sur son objectif : il sert a identifier les tables qui sont dans PinUp DB et pas dans Tables ? Ou l'inverse ?


[Vous devez être inscrit et connecté pour voir ce lien]                       [Vous devez être inscrit et connecté pour voir ce lien]                [Vous devez être inscrit et connecté pour voir ce lien]                      [Vous devez être inscrit et connecté pour voir ce lien]
Revenir en haut Aller en bas
 
[ASTUCE] Lister les anciennes tables
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [VP] Anciennes tables + scripts obligatoires dans dossier Tables
» [ARCHIVÉ] Nouvelles (versions de) tables VPX 2017
» [ABANDONNÉ] Quitter une table après lancement PinballX
» [TUTO] Utiliser PinSound avec Visual PinMame
» [ASTUCE] Allumage de la tv.

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Pincab Passion :: Univers du PC , du Bricolage & de l'Impression 3D :: Trucs & Astuces :: [LOGICIELS] Divers-
Sauter vers: