N'afficher une fenêtre K'une seule fois ??? Comment on fait......

HaCkIrUs Messages postés 20 Date d'inscription samedi 11 mai 2002 Statut Membre Dernière intervention 1 novembre 2003 - 11 mai 2002 à 12:20
myavast Messages postés 3 Date d'inscription samedi 16 juin 2007 Statut Membre Dernière intervention 19 septembre 2007 - 19 sept. 2007 à 10:41
Comment fait-on pour que par exemple une fenêtre d'inscription s'affiche lors de la première utilisation de mon programme et qu'elle ne se r'affiche plus ensuite à chaque execution de ce programme...
AIDEZ-MOI ....
MERCI :big)

HaCkIrUs
Godzila@free.fr

5 réponses

reivon Messages postés 81 Date d'inscription lundi 18 février 2002 Statut Membre Dernière intervention 4 février 2005
11 mai 2002 à 12:41
utilise une variable que tu mettras en sauvegarde dans la base de registre. tu trouveras ton bonheur sur ce site a propos des cle de registre, sinon si t'es perdu (ca m'etonnerai c assez simple) reposte un message en reponse au mien et je te mailerai une aide.
0
cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 8
11 mai 2002 à 18:42
Une autre methode qui n'encombre pas ta base de registre

Private Declare Function GetPrivateProfileString _
Lib "kernel32" Alias "GetPrivateProfileStringA" _
(ByVal lpApplicationName As String, ByVal _
lpKeyName As Any, ByVal lpDefault As String, _
ByVal lpReturnedString As String, ByVal nSize _
As Long, ByVal lpFileName As String) As Long

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

Private Sub Command1_Click()
Call teste
End Sub

Private Sub Form_Load()
' cela va te créer un fichier c:\testini qui contiendra
' [Projet1]
' KeyName = faux keyname pourrait être toto et faux pourrait être 0 ou 1
'Ecrit dans le fichier(c:\test.ini)

WritePrivateProfileString _
App.Title, "KeyName", "faux", "c:\test.ini"


End Sub

Function teste()
Dim Ret As String, NC As Long
'Cree un buffer
Ret = String(255, 0)
'Retrouve la chaine the string
NC = GetPrivateProfileString _
(App.Title, "KeyName", "Default", Ret, _
255, "C:\test.ini")
'NC est le nombre de caractère dans le buffer
If NC <> 0 Then Ret = Left$(Ret, NC)
'Montre a valeur de keyname
MsgBox Ret

End Function
0
HaCkIrUs Messages postés 20 Date d'inscription samedi 11 mai 2002 Statut Membre Dernière intervention 1 novembre 2003
14 mai 2002 à 22:03
J'ai rien compris ...... :sad) :sad) :sad)
Vous pouvez pas me dire au moins qu'est-ce que je dois mettre dans les form, le mieux ce serait de me passer une source déjà faite...
Et G une autre question....??? Y'a t-il une façon de créer une variable par exemple X qui porterai une chaine de texte mais sous forme numérique genre ASCCI. Genre si text bonjour alors X 123456789....
Merci de m'aider.... :approve)

HaCkIrUs
Godzila@free.fr
0
cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 8
15 mai 2002 à 08:34
Tu as cree ton fichier la première fois test.ini avec

WritePrivateProfileString _
App.Title, "KeyName", "faux", "c:\test.ini"
donc ton fichier ini contient
[nom de l'appli]
keyname=faux

a l'entrée dans le logiciel tu teste la valeur de keyname:
Ret = String(255, 0) 'Retrouve la chaine the string
NC = GetPrivateProfileString _
(App.Title, "KeyName", "Default", Ret, _
255, "C:\test.ini")
'NC est le nombre de caractère dans le buffer
If NC <> 0 Then
Ret = Left$(Ret, NC)
if lcase(ret)="faux" then
load fenetre de 1 ère fois
else
load fenetre normale
endif
else
' pas de donnée dans le fichier ini
load fenetre de 1 ère fois
endif

Je ne peux faire plus clair.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
myavast Messages postés 3 Date d'inscription samedi 16 juin 2007 Statut Membre Dernière intervention 19 septembre 2007
19 sept. 2007 à 10:41
Ou alors on pexu utiliser une mutex qui serais plus facile

Myavast
0
Rejoignez-nous