ecrire dans un fichier ini grace a un batch ou un vbs ou php....

ecrire dans un fichier ini grace a un batch ou un vbs ou php.... - Windows & Software

Marsh Posté le 10-07-2003 à 19:01:09    

g un serveur nt avec un batch dans le netlogon pour mes stations.
 
je souhaite par le biais de ce fichier batch  
ajouter une information dans un fichier ini de facon a ne pas avoir a passer deriere mes stations pour reconfigurer les fichiers ini.
 
ps. les donnees de mon fichier ini de mes stations sont tous differents et je souhaite juste ajouter une info dans odbc.ini
 
g deja essaye de faire...
 
ren odbc.ini  odbc.old
copy odbc.ini c: ....
 
mais c po cool car ca ajoute un ini qui n est pas bon pour le monde
 
 
 
comment ecrire une infomation dans un fichier ini grace q un batch ....


Message édité par CARL KEATON le 10-07-2003 à 23:18:04
Reply

Marsh Posté le 10-07-2003 à 19:01:09   

Reply

Marsh Posté le 10-07-2003 à 19:15:13    

http://forum.hardware.fr/forum2.ph [...] h=&subcat=
 
comme ca ...
 
c bete le lien est mort

Reply

Marsh Posté le 10-07-2003 à 19:39:28    

si tu fais de la programmation, tu fais un programme par exemple en VB  :D et tu utilises les API windows, va voir le liens dans ma signature, tu as une fonction qui permet de lire et écrire dans les fichiers *.ini.
 
 
je ne vois que ça !

Reply

Marsh Posté le 10-07-2003 à 22:19:04    

comment tu fais pour faire un fichier vb...

Reply

Marsh Posté le 10-07-2003 à 22:32:51    

CARL KEATON a écrit :

comment tu fais pour faire un fichier vb...

soit tu posséde Visual Basic, soit - je crois que les API fonctionnent - tu crée un fichier VBS avec le bloc note, tu remplace l'extensions *.txt par *.VBS. et voilà ! c'est assez chiant à faire, je te préviens tout de suite...

Reply

Marsh Posté le 10-07-2003 à 23:11:40    

' Pour enregistrer dans un fichier INI
Private Declare Function WritePrivateProfileString Lib "kernel32" _
    Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, _
    ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
 
Public Sub EcrireIni(stSection As String, stKey As String, stValeur As String, stFichier As String)
' Lecture d'une valeur dans un fichier INI
' stSection est le la partie designée entre crochets ([option] par exemple)
' stKey est le nom de la clé à récupérer (COULEUR=... par exemple)
' stValeur est la valeur à stocker
' stFichier est le fichier à manipuler
WritePrivateProfileString stSection, stKey, stValeur, stFichier
End Sub
 

j capte rien...

Reply

Marsh Posté le 11-07-2003 à 08:08:49    

qqun peux m'aider a constituer une ficier VBS????????

Reply

Marsh Posté le 11-07-2003 à 08:20:59    

moi je sais le faire en php
rien de plus simple
 
<?php
$string="ce que tu veux ecrire et faire \n pour les saut de ligne";
$file=fopen("c:\\$nom.txt", "a+" );
fwrite($file, $string);
fclose($file);
?>

Reply

Marsh Posté le 11-07-2003 à 08:26:00    

comme ca?????
 
 
<?php
$string="X3ORACLE=Oracle ODBC Driver (32 bits)\n";
$file=fopen("c:\\windows\odbc.ini", "a+" );
fwrite($file, $string);
fclose($file);
?>

Reply

Marsh Posté le 11-07-2003 à 08:27:40    

CARL KEATON a écrit :

comme ca?????
 
 
<?php
$string="X3ORACLE=Oracle ODBC Driver (32 bits)\n";
$file=fopen("c:\\windows\\odbc.ini", "a+" );
fwrite($file, $string);
fclose($file);
?>


 
il manquai un slash, il faut les mettre en double

Reply

Marsh Posté le 11-07-2003 à 08:27:40   

Reply

Marsh Posté le 11-07-2003 à 08:29:24    

marche po

Reply

Marsh Posté le 11-07-2003 à 08:31:43    

je viens de fare un test  
 
 
 
<?php
$string="ce que tu veux ecrire et faire \n";
$file=fopen("c:\\123.txt", "a+" );
fwrite($file, $string);
fclose($file);
?>
 
 
marche po....

Reply

Marsh Posté le 11-07-2003 à 08:32:24    

t'as un serveur web hein ?  :heink:


---------------
Funkelly
Reply

Marsh Posté le 11-07-2003 à 08:32:29    

je laisse juste ce bout de script dans mon fichier PHP????

Reply

Marsh Posté le 11-07-2003 à 08:32:52    

yep pour le server ca tourne avec easyphp pour mon intranet.

Reply

Marsh Posté le 11-07-2003 à 08:46:13    

please me laisse pa en plan comme ca stp...

Reply

Marsh Posté le 11-07-2003 à 08:46:56    

CARL KEATON a écrit :

' Pour enregistrer dans un fichier INI
Private Declare Function WritePrivateProfileString Lib "kernel32" _
    Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, _
    ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
 
Public Sub EcrireIni(stSection As String, stKey As String, stValeur As String, stFichier As String)
' Lecture d'une valeur dans un fichier INI
' stSection est le la partie designée entre crochets ([option] par exemple)
' stKey est le nom de la clé à récupérer (COULEUR=... par exemple)
' stValeur est la valeur à stocker
' stFichier est le fichier à manipuler
WritePrivateProfileString stSection, stKey, stValeur, stFichier
End Sub
 

j capte rien...



 
 
c'est pas compliqué ! t'as les noms des varaibles et à quoi elles correspondent tu rentre les données et voilà...va sur www.vbfrance.com ty auars surement des exemples.

Reply

Marsh Posté le 11-07-2003 à 08:54:22    

CARL KEATON a écrit :

please me laisse pa en plan comme ca stp...


oui tu mets ca ds ton fichier php
easyphp c tres bien, ca suffit largement pour ca

Reply

Marsh Posté le 11-07-2003 à 08:56:58    

le mieux est que tu prépares un fichier texte qui contient ta ligne a rajouter dans odbc.ini
exemple modif.txt
et dans ton batch tu mets cette ligne
 
type modif.txt>>odbc.ini
 
ce qui aura pour effet de concaténer modif.txt a la suite de odbc.ini


---------------
Funkelly
Reply

Marsh Posté le 11-07-2003 à 11:11:56    

ca fonctionne à moitie car vu que cette manip ajoute simplement une info a la fin du fichier, je me demande maintenant comment faire pour ajouter une ligne à un endroit precis : je m'explique...
 
mon fichier de base:
 
[ODBC 32 bit Data Sources]
MS Access 97 Database=Microsoft Access Driver (*.mdb) (32 bits)
 
 
[MS Access 97 Database]
Driver32=C:\WINDOWS\SYSTEM\odbcjt32.dll
 
[X38]
Driver32=C:\WINDOWS\SYSTEM\cror813.dll
 
[X3ORACLE]
Driver32=c:\oracle\ora81\BIN\SQORA32.DLL
 
 
ce que je souhaite faire:
 
[ODBC 32 bit Data Sources]
MS Access 97 Database=Microsoft Access Driver (*.mdb) (32 bits)
X38=CR Oracle8 (32 bits)
X3ORACLE=Oracle ODBC Driver (32 bits)

 
[MS Access 97 Database]
Driver32=C:\WINDOWS\SYSTEM\odbcjt32.dll
 
[X38]
Driver32=C:\WINDOWS\SYSTEM\cror813.dll
 
[X3ORACLE]
Driver32=c:\oracle\ora81\BIN\SQORA32.DLL


Message édité par CARL KEATON le 11-07-2003 à 11:26:34
Reply

Marsh Posté le 11-07-2003 à 11:15:15    

en batch tu pourras pas le faire facilement
en php ou autre, okin pb mais bon executer un fichier php au logon de qqun, fo vraiment avoir envie ;)


---------------
Funkelly
Reply

Marsh Posté le 11-07-2003 à 11:16:21    

oki, alors comment le faire svp...

Reply

Marsh Posté le 11-07-2003 à 11:17:59    

resultat de... type XXX.txt>>XXX.ini
 
[ODBC 32 bit Data Sources]
MS Access 97 Database=Microsoft Access Driver (*.mdb) (32 bits)
 
 
[MS Access 97 Database]
Driver32=C:\WINDOWS\SYSTEM\odbcjt32.dll
 
[X38]
Driver32=C:\WINDOWS\SYSTEM\cror813.dll
 
[X3ORACLE]
Driver32=c:\oracle\ora81\BIN\SQORA32.DLL
[ODBC 32 bit Data Sources]
X38=CR Oracle8 (32 bits)
X3ORACLE=Oracle ODBC Driver (32 bits)
 
 
 
c po beau du tout !!!! mais c un debut !

Reply

Marsh Posté le 11-07-2003 à 11:27:22    

ca marche comment le vbs ??????

Reply

Marsh Posté le 11-07-2003 à 11:36:03    

regarde sur : http://www.bellamyjc.net/fr/vbsdownload.html le script replace qui permet de remplacer n'importe quelle chaine dans un ensemble de fichiers texte et inspire t'en.
A+

Reply

Marsh Posté le 11-07-2003 à 13:29:27    

J connais rien en VB...  
 
ya po moyen de faire ca dans mon batch...

Reply

Marsh Posté le 11-07-2003 à 13:41:24    

va sur la section programmation et demande leur...

Reply

Marsh Posté le 11-07-2003 à 14:06:50    

modifier un fichier texte évidemment que c'est faisable avec n'importe quel langage de script, même un élémentaire comme batch
 
 
l'algo en bref :
 
- recopier ligne par ligne le fichier dans un fichier temporaire jusqu'à atteindre l'endroit voulu
 
- écriture dans le fichier temporaire de la config qui va bien :
 
X38=CR Oracle8 (32 bits)  
X3ORACLE=Oracle ODBC Driver (32 bits)  
 
- continuer la recopie ligne par ligne du fichier initial fichier dans le fichier temporaire jusqu'à la fin
 
- faire une sauvegarde du fichier initial dans (odbc.ini.bak par exemple)
 
- écraser le fichier initial avec le fichier temporaire


Message édité par C_Po_Ma_Faute le 11-07-2003 à 14:08:51
Reply

Marsh Posté le 11-07-2003 à 14:33:20    

et.... fonctionnellement tu ferais comment en ligne de cde???

Reply

Marsh Posté le 11-07-2003 à 14:35:17    

:pfff:  t'es un boulet quand meme, je te pond le code tout nikel et qui marche, et tu cherches encore a trafiquer chai pas koi...
ou alors tu n'a ka me dire que tu veux plus faire en php, ca eviterai que mes reponse soit ds le vent ..merki  :jap:


Message édité par Negro le 11-07-2003 à 14:35:44

---------------
http://www.zeec.de/media-details.jsp?mediaId=49063
Reply

Marsh Posté le 11-07-2003 à 14:40:34    

ca marche po en PHP...

Reply

Marsh Posté le 11-07-2003 à 14:54:06    

CARL KEATON a écrit :

ca marche po en PHP...


 
avec EasyPHP sa serait mieux ! :D

Reply

Marsh Posté le 11-07-2003 à 15:12:47    

hummmm merci mais c'est ce que j'utilise regarde mon post plus haut ...

Reply

Marsh Posté le 11-07-2003 à 15:22:11    

CARL KEATON a écrit :

hummmm merci mais c'est ce que j'utilise regarde mon post plus haut ...


eh, on essaye de t'aider, alors tu m'escuseras si je fais une erreur ! je te donne les solutions et l'autre te donne le code, tu les étudies, et tu auras ce que tu veux ! la programmation;, sa tombe pas tout cuit !

Reply

Marsh Posté le 12-07-2003 à 15:51:18    

A priori, un script vbs est le moyen le plus simple.
Consulte le site de bellamy ET
le technet de microsoft
http://www.microsoft.com/technet/t [...] efault.asp
 
Avec ces 2 sites, + un éditeur comme Context ( gratos )
tu peux automatiser n'importe quoi sans trop de problèmes.


Message édité par c_moa le 13-07-2003 à 11:14:05
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed