voila je suis entrain de faire un programme qui enregistre un fichier texte. et j'aimerais savoir comment faire pour que quand j'annule mon sauvegardage sa ne me cree pas mon fichier quand meme

voici la source

Code : Tout sélectionner
Enumeration
#Window_0
EndEnumeration
Enumeration
#Text_0
#String_0
#String_1
#Text_1
#Button_0
#Button_1
#Button_2
#Button_3
#String_2
#StatusBar_0
#String_NomS
EndEnumeration
Procedure.l CalculateSeed(InputNumber.l)
ProcedureReturn Int(Log(InputNumber) * Cos(InputNumber) * 137)
EndProcedure
Procedure.l GetPasswordValue(Password.s)
ASCII_Vals.l
For i = 1 To Len(Password)
ASCII_Vals = ASCII_Vals + Asc(Mid(Password, i, 1))
Next i
If ASCII_Vals > Len(Password)
ProcedureReturn Int(CalculateSeed(ASCII_Vals) / CalculateSeed(Len(Password) + 1))
Else
ProcedureReturn CalculateSeed(ASCII_Vals)
EndIf
EndProcedure
Procedure.l WrapNumber(lngNumber.l, lngMinimum.l, lngMaximum.l)
DefType.l Range, check
Range = lngMaximum - lngMinimum
check = lngNumber
If lngNumber > lngMaximum
Repeat
check = check - Range
Until check <= lngMaximum
ElseIf lngNumber < lngMinimum
Repeat
check = check + Range
Until check >= lngMinimum
EndIf
ProcedureReturn check
EndProcedure
Procedure.s Encrypt(Password.s, Input.s)
DefType.l PasswordVal, CurrentChar, CurrentMod
enctxt.s
PasswordVal = GetPasswordValue(Password)
CurrentMod = 2
For i = 1 To Len(Input)
CurrentChar = Asc(Mid(Input, i, 1))
CurrentChar = CurrentChar + PasswordVal
CurrentChar = CurrentChar - CalculateSeed(CurrentMod)
CurrentChar = WrapNumber(CurrentChar, 0, 255)
enctxt = enctxt + Chr(CurrentChar)
CurrentMod = CurrentMod + 1
If CurrentMod > 30
CurrentMod = 2
EndIf
Next i
ProcedureReturn enctxt
EndProcedure
Procedure.s Decrypt(Password.s, Input.s)
DefType.l PasswordVal, CurrentChar, CurrentMod
dectxt.s
PasswordVal = GetPasswordValue(Password)
CurrentMod = 2
For i = 1 To Len(Input)
CurrentChar = Asc(Mid(Input, i, 1))
CurrentChar = CurrentChar - PasswordVal
CurrentChar = CurrentChar + CalculateSeed(CurrentMod)
CurrentChar = WrapNumber(CurrentChar, 0, 255)
dectxt = dectxt + Chr(CurrentChar)
CurrentMod = CurrentMod + 1
If CurrentMod > 30
CurrentMod = 2
EndIf
Next i
ProcedureReturn dectxt
EndProcedure
Global FontID2
FontID2 = LoadFont(2, "comic sans ms", 8, #PB_Font_Bold)
Procedure Open_Window_0()
If OpenWindow(#Window_0, 0, 0, 322, 440, #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered | #PB_Window_MinimizeGadget , "VENOM CRYPTAGE")
If CreateStatusBar(#StatusBar_0, WindowID())
AddStatusBarField(322)
EndIf
If CreateGadgetList(WindowID())
TextGadget(#Text_0, 10, 20, 85, 20, "Mot de passe:")
SetGadgetFont(#Text_0, FontID2)
StringGadget(#String_0, 90, 18, 210, 20, "", #PB_String_Password)
SendMessage_(GadgetID(#String_0), #EM_LIMITTEXT, 100, 0)
StringGadget(#String_1, 20, 70, 280, 100, "", #PB_String_MultiLine|#ES_AUTOVSCROLL|#WS_VSCROLL|#ESB_DISABLE_LEFT|#ESB_DISABLE_RIGHT)
SendMessage_(GadgetID(#String_1), #EM_LIMITTEXT, 1000, 0)
TextGadget(#Text_1, 20, 50, 45, 15, "Texte:")
SetGadgetFont(#Text_1, FontID2)
ButtonGadget(#Button_0, 20, 180, 280, 30, "Crypter")
AddKeyboardShortcut(#Window_0, #PB_Shortcut_Control | #PB_Shortcut_E, #Button_0)
SetGadgetFont(#Button_0, FontID2)
ButtonGadget(#Button_1, 20, 210, 280, 30, "Decrypter")
AddKeyboardShortcut(#Window_0, #PB_Shortcut_Control | #PB_Shortcut_D, #Button_1)
SetGadgetFont(#Button_1, FontID2)
ButtonGadget(#Button_2, 20, 240, 280, 30, "enregistrer sous decrypter")
AddKeyboardShortcut(#Window_0, #PB_Shortcut_Control | #PB_Shortcut_D, #Button_2)
SetGadgetFont(#Button_2, FontID2)
ButtonGadget(#Button_3, 20, 270, 280, 30, "enregistrer sous crypter")
AddKeyboardShortcut(#Window_0, #PB_Shortcut_Control | #PB_Shortcut_D, #Button_3)
SetGadgetFont(#Button_3, FontID2)
StringGadget(#String_2, 20, 310, 280, 100, "", #PB_String_MultiLine|#ES_AUTOVSCROLL|#WS_VSCROLL|#ESB_DISABLE_LEFT|#ESB_DISABLE_RIGHT)
SendMessage_(GadgetID(#String_2), #EM_LIMITTEXT, 1000, 0)
EndIf
EndIf
EndProcedure
Procedure saveas()
fichier$ = SaveFileRequester("Enregistrer sous", "document texte decrypter","texte|*.txt", 0)
If CreateFile(0,fichier$+".txt")
WriteString(GetGadgetText(#String_1))
CloseFile(0)
StatusBarText(#StatusBar_0, 0, "sauvegarder avec succes")
EndIf
EndProcedure
Procedure saveas1()
fichier$ = SaveFileRequester("Enregistrer sous", "document texte crypter","texte|*.txt", 0)
If CreateFile(0,fichier$+".txt")
WriteString(GetGadgetText(#String_2))
CloseFile(0)
StatusBarText(#StatusBar_0, 0, "sauvegarder avec succes")
EndIf
EndProcedure
Open_Window_0()
ActivateGadget(#String_0)
DisableGadget(#Button_0, 1)
DisableGadget(#Button_1, 1)
DisableGadget(#Button_2, 1)
DisableGadget(#Button_3, 1)
Repeat
Event = WaitWindowEvent()
If Event = #PB_EventCloseWindow
Quit = 1
ElseIf Event = #PB_Event_Gadget Or Event = #PB_Event_Menu
Select EventGadgetID()
Case #Button_0 ;crypter
If GetGadgetText(#String_0) = ""
MessageRequester("attention", "vous devez entrée un mot de passe pour crypter vos information", #MB_ICONWARNING)
Else
SetGadgetText(#String_2, Encrypt(GetGadgetText(#String_0), GetGadgetText(#String_1)))
If Len(GetGadgetText(#String_2)) <> Len(GetGadgetText(#String_1))
SetGadgetText(#String_2, "")
Else
SetGadgetText(#String_1, fichier$)
DisableGadget(#Button_0, 1)
DisableGadget(#Button_1, 0)
DisableGadget(#Button_2, 1)
DisableGadget(#Button_3, 0)
StatusBarText(#StatusBar_0, 0, "Codage avec succès !")
EndIf
EndIf
Case #Button_1 ;Decrypter
If GetGadgetText(#String_0) = ""
MessageRequester("attention", "vous devez entrée un mot de passe pour décrypter vos information", #MB_ICONWARNING)
Else
SetGadgetText(#String_1, Decrypt(GetGadgetText(#String_0), GetGadgetText(#String_2)))
SetGadgetText(#String_2, fichier$)
DisableGadget(#Button_1, 1)
DisableGadget(#Button_0, 0)
DisableGadget(#Button_3, 1)
DisableGadget(#Button_2, 0)
StatusBarText(#StatusBar_0, 0, "Décodage avec succès !")
EndIf
Case #String_1 ; Input
If EventType() = #PB_EventType_Change
DisableGadget(#Button_0, 0)
DisableGadget(#Button_2, 0)
EndIf
Case #String_2 ; Output
If EventType() = #PB_EventType_Change
DisableGadget(#Button_1, 0)
DisableGadget(#Button_3, 0)
EndIf
Case #Button_2
saveas()
Case #Button_3
saveas1()
EndSelect
EndIf
Until Quit
End
@++