begin process at 2012 02 11 15:13:24
  Trouver un code source :
 
dans
 

309 commentaire(s) de elguevel sur des sources sur tout CodeS-SourceS

Déposé sur Click pour quitter (le jeu)

12 ans !? Effectivement à cet age je ne peux pas trop critiquer le code, au contraire je m'incline.

J'ai un défi pour toi : c'est changer la position du bouton qui permet de quitter à chaque lancement de l'application.
Posté le : 05/11/2010 19:41:33

Déposé sur Classe pour piloter excel simplement

Non, comme dit dans le titre cette source pilote Excel, elle ne permet pas de generer des fichiers sans cette application.

Sinon pour integrer automatiquement les assembly Office, il suffit de créer un projet de deploiement, celui-ci integrera automatiquement les dependances necessaires si la machine sur laquelle tu installes ton application ne les possèdes pas déja.

Merci pour ton commentaire :-)
Posté le : 05/11/2010 19:33:55

Déposé sur Creation de controls dynamique + deplacement et redimention p...

Les .INI ne sont plus pris en charge dans .Net, considéré comme obsolète aujourd'hui, de plus pour les gerer il faut faire sa classe soit même.

Le nouveau standard étant l'XML,que d'ailleur le My.Settings utilise.

L'XML du My.Settings est se situe dans le profil de l'utilisateur, ce qui lui permet d'avoir ses propres parametres, et j'aime l'utilisé car il est simple d'utilisation, pratique et la serialisation est complétement transparente.

Une petite recherche sur la MSDN : http://msdn.microsoft.com/fr-fr/library/ms379611(VS.80).aspx

Bon code ...
Posté le : 26/03/2010 12:51:09

Déposé sur Creation de controls dynamique + deplacement et redimention p...

Pour sauvegarder tes positions, utilise plutot les parametres (Propriétes de ton projet > Paramètres).

Tu peux ensuite les exploiter très simplement :

Sauvegarder une valeur :

My.Settings.POSITION_X = 8
My.Settings.Save()

Charger une valeur :

My.Settings.Reload()
Dim MaPosition As Integer = My.Settings.POSITION_X

Posté le : 25/03/2010 08:00:41

Déposé sur Envoyer des emails avec pieces jointes en exécutant blat

Ok ok,

Sinon il y plus simple pour envoyer des mails, .Net l'implémente déja.
Il faut importer "Imports System.Net.Mail" et puis celà doit suffir :

Dim MonSMTP As New SmtpClient("ServeurDeMail")
MonSMTP.Send("moi@domaine.fr", "lui@domaine.fr", "Sujet", "Mon message")

Sinon l'INI pourquoi pas, mais bon le XML étant à la mode, pourquoi ne pas s'y mettre :-)

Pour débuter ce cours est pas mal : http://plasserre.developpez.com/cours/vb-net/

Bon code ...
Posté le : 03/02/2010 08:13:43

Déposé sur Envoyer des emails avec pieces jointes en exécutant blat

Au premier coup d'oeil je dirais que tu as fait beaucoup de VB avant de faire du .Net !

Alors déjà c'est quoi Blat ? :-s

Sinon çà je ne pense pas que çà serve à grand-chose "Imports System.Object", Object est une classe et non un espace de nom


Je vois également que tu as utilisé un gros bloc de variable déclaré en Public.
En fait ta classe n'est pas une classe, il n'y a pas de constructeur, aucun passage de paramètre, çà ressemble plus à un module.
Tu devrais regarder des articles sur la POO, il y en a pas mal sur la toile.

De plus tes declarations comme "Public dossier_archives$" serai un peu mieux comme çà : "Public dossier_archives as String"

Sinon pas obligatoire mais tu peux faire plus court si tu veux :
Dim monStreamWriter1 As StreamWriter = New StreamWriter( ...
Dim monStreamWriter1 As New StreamWriter( ...

Tu fais un monStreamWriterX.Close, mais n'oublie pas pour des soucis d'optimisation de faire un monStreamWriterX.Dispose (ou utilise un bloc Using...End Using) pour libérer l'objet

Shell ... arf, çà existe encore çà ? Regarde si tu ne peux pas utiliser la Class Process.

Fais gaffe à çà : dossier_archives + "\" + ...
Si tu te trouve dans la racine du disque (ex : C:\), le "\" va être doublé !

fermetureauto = "Oui"  -> un boolean ne serait pas mieux ?

Après essai pour ton fichier de config de passer dans un autre format comme le XML, puisqu'a ma connaissance Microsoft ne veut plus maintenir le .INI (pas de classe présente dans .Net)


Public Function GetCle(
[code]
GetCle = Chaine
End Function
Stop, en .Net on retourne le résultat d'une fonction avec Return et non le nom de la fonction.

Là t'a laissé trainé çà :
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged

Ca ne sert à rien, et de plus ta classe n'hérite pas de Windows.Form !? ( = Ce n'est pas un formulaire)
Comment tu as pu créer une listbox la dessus ?


Dim TmpName As String = Microsoft.VisualBasic.Mid(Entree, Len(dossier_temp$) + 1)
TmpName = Replace(TmpName, "'\'", "") 'récupérer le nom du fichier

-> Là aussi essai de te documenter sur la Class String  (String.SubString(), String.Replace(), etc..)


Allé corrige nous tous çà ... et mets toi à l'objet, tu verra c'est super sympa ;-)
Posté le : 02/02/2010 08:25:15

Déposé sur Fichiers_cachés_lecture_seule

Pas de grosses erreurs mais à l'ouverture du projet, oulala çà fait un peu peur ce gros bloc de code... pense à aérer un peu.

Sinon à la lecture de ton code :

1) Un fois que tu crée : "Dim a As New FolderBrowserDialog"

Pense à liberé l'objet avec a.Dispose, ou alors utilise un bloc Using :

Using a As New FolderBrowserDialog
[code]
End Using

Et utilise une variable explicite, "a" etant peu parlant

Idem pour tes controles "CheckBox1, ...CheckBox3.. etc"


2) Alors çà ... promets moi de ne plus jamais le faire (on oubli VB6) :

'Réglage du temps
For i = 1 To 100000
Next i

Utilise plutot "Thread.Sleep()"

De plus ta progressBar ne sert pas à grand chose, vu qu'elle ne reflete en rien l'occupation de ton appli

3) Pour les clés de registre, pourquoi utiliser l'API Win32, utilise la Class Registry (Microsoft.Win32)

4) Cette operation me parait un peu suspecte ?

If (File.GetAttributes(Cheminfichier) And FileAttributes.ReadOnly) = FileAttributes.ReadOnly Then

5) Pour ton tri de ListView, je te conseille de faire une classe a part

Genre :

Public Class ListViewColumnSorter Implements IComparer

Avec des attributs de classe propres

Public ColumnToSort As Integer
Public OrderOfSort As SortOrder
Public ObjectCompare As CaseInsensitiveComparer

Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements IComparer.Compare
[... ]
End Function

Ensuite dans ta form1 tu peux faire :

Dans le constructeur de la Form1 : Private lvwColumnSorter As ListViewColumnSorter

Private Sub ListView1_ColumnClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ColumnClickEventArgs) Handles ListView1.ColumnClick

        If (e.Column = lvwColumnSorter.SortColumn) Then
            If (lvwColumnSorter.Order = SortOrder.Ascending) Then
                lvwColumnSorter.Order = SortOrder.Descending
            Else
                lvwColumnSorter.Order = SortOrder.Ascending
            End If
        Else
            lvwColumnSorter.SortColumn = e.Column
            lvwColumnSorter.Order = SortOrder.Ascending
        End If

        CType(sender, ListView).Sort()
        
End Sub


6) Attention à çà : Lbl_source.Text & "\" & fichier.Text

Si on se trouve dans la racine (ex : C:) celà te donnera "C:\" & "\" & fichier.Text --> C:\\nomfichier.ext

7) Fini le VB6 : MsgBox("Affichage Fichiers cachés débloqué")
On fait du .net maintenant : MessageBox.Show("Message", "Titre", MessageBoxButtons.OK, MessageBoxIcon.Information, )

8) Ici "Dim MyKey As Object"
MyKey est visiblement une chaine, donc 'Dim MyKey As String'

9) La aussi tu as un tableau à 1 dimension : ListeFichier.GetUpperBound(0)
donc ne t'embete pas : ListeFichier.Length

10) Là aussi : Dim cmpt As Int32
ne t'embete pas avec la taille de l'int : Dim cmpt As Integer

11) Je ne suis pas sur mais tu peux, au lieu de : ShellExecute(Handle.ToInt32, "Open", File, Parametres, My.Application.Info.DirectoryPath, 1)
faire : Process.Start(File)

12) Tu fais comme tu veux, mais ce genre de chose :
  .Columns.Add("Nom", 120, HorizontalAlignment.Left) 'titre, dimension colonne,alignement texte
  .Columns.Add("Taille", 50, HorizontalAlignment.Right)
  .Columns.Add("Date création", 120, HorizontalAlignment.Center)
  .Columns.Add("Dernière modification", 120, HorizontalAlignment.Center)
  .Columns.Add("Dernier accès", 120, HorizontalAlignment.Center)
  
vu que çà ne bouge pas, je le fais directement sur le composant à la création (via la PropertyGrid de VS)


Bon je vais arreter là pour le moment, car je n'ai plus trop le temps, et je pense qu'avec çà tu as encore pas mal de boulot pour améliorer ta source.

Mais sinon à part çà j'ai quand meme constaté qu'il y avait des choses pas trop mal, et felicitation pour le travail fournis.J

Et je le repete : je ne te dis pas tout çà pour te descendre mais afin que tu puisse t'améliorer !

Bon code.
Posté le : 29/01/2010 13:55:33

Déposé sur Enumerer les machines de votre reseau

Je vois que certains consultent encore cette vieille source, j'ai donc décidé de la mettre à jour !

J'ai même ajouté un evenement pour "Mafieulemouton"

Merci pour vos coms.
Posté le : 27/01/2010 11:00:40

Déposé sur Creation de controls dynamique + deplacement et redimention p...

Salut,

Je n'ai pas encore telechargé ta source, mais juste en voyant le code, quelques remarques :

- Evite dans une classe de declarer tes variables (attributs) avec des "Dim" qui sont reservés aux declarations locales (function/sub/...), utilise plutot Private/Public/Friend/Protected.


- C'est une question de gout mais je n'aime pas trop voir çà :
Dim i, cx, cy, tx, ty As Integer : tx = 70 : ty = 100 : cx = 50 : cy = 50

J'aurai preferé :

Dim cx As Integer = 50
Dim cy As Integer = 50
Dim tx As Integer = 70
Dim ty As Integer = 100

C'est plus lisible non ?

- Idem pour :

Dim i [...] As Integer
For i = 1 To 3

Tu peux faire :
Dim i As Integer = 1 To 3


Après c'est du pinaillage :
- "cx = cx + tx + 10" -->  "cx += tx + 10"
- "If deplace = True Then" --> "If Deplace Then"
etc...

Sinon à part çà c'est simple et commenté, continues comme çà ;-)
Posté le : 26/01/2010 08:03:06

Déposé sur Mm checkbox .net v.2009 v4

Superbe travail, un 10/10 bien mérité !
Je félicite également Mayzz qui aura également droit à son 10 :-)
Posté le : 10/11/2009 08:12:50



Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,827 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales