username & windows 98 - Programmation
Marsh Posté le 21-06-2001 à 15:14:09
avec un petit programme en C utilisant la fonction GetUserName de l'API Windows :
Voir http://www.allapi.net/api/GetUserName.php
Il l'écrit dans un fichier toto.txt (par exemple)
ton batch donnera celà :
\\Serveur\partage\ton_programme_en_C
commande <toto.txt
del toto.txt
(je crois me souvenior que c'est pour un script de démarrage -> j'ai mis le programme sur le serveur)
Marsh Posté le 25-06-2001 à 09:47:18
merci !
c'est pas si simple que sous NT mais on s'en contentera ...
Marsh Posté le 25-06-2001 à 09:53:47
Au fait, si c'est dans un script de connexion, il faut tester le type d'OS. Tu peux le faire de la manière suivante :
@echo off
echo Teste le type d'OS utilise
if exist %systemroot% goto NT
if exist %winbootdir%\win.com goto W9x
goto FIN
:NT
....
goto fin
:W9x
....
goto fin
:fin
...
A+
Marsh Posté le 25-06-2001 à 19:18:56
ok j'ai bien avancé ...
Mais maintenant j'ai name.txt qui contient juste le login de l'utilisateur.
comment je fais pour créer un repertoire avec ce nom ???
j'ai essayé
mkdir % echo < name.txt %
et plein de variantes mais ca marche pas !
Marsh Posté le 25-06-2001 à 21:24:04
Pour le nom de la machine, tu peux faire gethostname dans une console
Marsh Posté le 26-06-2001 à 08:26:50
*Syl* a écrit a écrit : Pour le nom de la machine, tu peux faire gethostname dans une console |
t'es sur???
ca marche pas !
Marsh Posté le 26-06-2001 à 08:27:28
mr_mat a écrit a écrit : ok j'ai bien avancé ... Mais maintenant j'ai name.txt qui contient juste le login de l'utilisateur. comment je fais pour créer un repertoire avec ce nom ??? j'ai essayé mkdir % echo < name.txt % et plein de variantes mais ca marche pas ! |
au fait je sais toujours pas comment faire ca ...
Marsh Posté le 26-06-2001 à 10:07:29
cool JPA !
je te devrai une fière chandelle avec toutes tes reponses (en plus c'est pour le boulot) !
Marsh Posté le 26-06-2001 à 10:20:46
tu pourras aussi remercier :
http://www.asi.fr/~dreynier/BM/BM_Liens.html
http://www.chez.com/scudo/Faq/dos/batches.htm#general
1) cree un fichier un.txt contenant md_ (_ représente la barre d'espace) de la manière suivante :
copy con un.txt
md [Control Z]
( tu tapes m, d, espace et CTRL Z) : Celà permet de créer un fichier texte sans retour de "charriot" à la fin
Supposons que l' UserName soit dans le fichier USER.TXT
Copy /B un.txt+user.txt rep.bat
crée un fichier bat contenant md nom_de_l'utilisateur
ensuite call rep.bat
dans un.txt, tu peux bien sur mettre un chemin du style :
md \\serveur\dossiers\_ (ne pas oublier l'espace avant de taper CTRL Z) et tu peux stocker ce fichier dans netlogon par exemple (avec les scripts)
Ne pas oublier à la fin du script d'effacer rep.bat créé en local
Ai-je été clair ?
JP
Marsh Posté le 26-06-2001 à 10:29:13
ah ok je comprend le principe, c'est vraiment pas con mais je pemsait qu'il y avait pluq qimple (du style mkdir %<name.txt%).
bon j'essaie tout de suite
Marsh Posté le 26-06-2001 à 17:25:59
mr_mat a écrit a écrit : t'es sur??? ca marche pas ! |
Excuse moi, GetHostName c'est l'API...
La commande sous une console c'est hostname
voili voilà !
Marsh Posté le 26-06-2001 à 17:33:31
Oups !
Je retire ce que j'ai dit...
Ca marche que sous NT et toi tu veux 98 ..
Marsh Posté le 26-06-2001 à 18:50:14
y m'semblait bien oui !
de toutes manières j'ai enfin fini ce script, finalement j'ai fait un prog en C qui recupère des paramètres par les APi (username et hostname) et edite le .bat en consequence. ca marche bien !
Marsh Posté le 21-06-2001 à 13:42:14
comment je fais pour recuperer la variable d'environement correspondant au login avec win 98 ? (l'équivalent du username de NT4).
si c'est pas possible, comment peut t'on recupere le nom de la machine ?
(pour utiliser dans un .bat)