Erreur lors de compilation [Résolu]

Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
- - Dernière réponse : cs_Machjaghjolu
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
- 4 juil. 2005 à 12:42
Salute (ui c'est encore moi )





Je fais un programme qui écrit et lit dans un fichier mais à la
compilation j'arrive à ce message. C'est dû à quoi s'il vous plait ?





error CS5001: Le programme 'c:\Documents and Settings\Machjaghjolu\Mes
documents\SharpDevelop Projects\Lol\bin\Debug\Test.exe' ne possède pas
de point d'entrée défini
Afficher la suite 

Votre réponse

20 réponses

Meilleure réponse
Messages postés
6366
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
63
3
Merci
Salut,
Le message est pourtant clair sur ce coup là :

public static void Main()
{
void FichierTexte(string nomFichier)
{ ....

=> tu ne peux pas imbriquer 2 méthodes :-)

public static void Main()
{
...
}

void FichierTexte(string nomFichier)
{
....
}

Cocoricoooooooo !!!!
coq
MVP Visual C#

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 152 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_coq
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
3
Merci
Ce que tu as écrit c'est la déclaration de la fonction, maintenant il faut l'appeler dans Main:

private static void Main( )
{
FichierTexte( "MyFile" );
}

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 152 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Lutinore
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
3
Merci
C'est ca que tu veux faire !?

// File1.cs


using Namespace2; // Référence !


namespace Namespace1
{
public class Class1
{
public static void Main( )
{
Class2.DoSomething( ); // Appel d'une methode static
}
}
}

// File2.cs


namespace Namespace2 // Ou alors le même namespace
{
public class Class2
{
public static void DoSomething( ) // déclarée en static.
{
System.Windows.Forms.MessageBox.Show( "Hello World !" );
}
}
}

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 152 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Lutinore
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
0
Merci
Pas de méthode Main dans ton programme..
Commenter la réponse de Lutinore
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
0
Merci
using System;

using System.IO;



namespace Test

{

class MainClass

{

void FichierTexte(string nomFichier)

{



Voilà comment commence mon programme ...



Si je rajoute la méthode Main :

using System;


using System.IO;





namespace Test


{


class MainClass


{

public static void Main()

{


void FichierTexte(string nomFichier)


{ ....

.....

}



Je me retrouve avec:

c:\Documents and Settings\Machjaghjolu\Mes documents\SharpDevelop Projects\Lol\Main.cs(15,3): error CS1513: } attendue



Ligne 15 alors qu'elle devrait se trouver ligne 50 par là...
Commenter la réponse de cs_Machjaghjolu
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
0
Merci
Ohlala.. lol.. Tu ne peux pas définir la fonction FichierTexte dans une autre fonction.. Là vraiment ton code il est pas bien structuré du tout..
Commenter la réponse de Lutinore
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
0
Merci
Oups, il m'a grillé..
Commenter la réponse de Lutinore
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
0
Merci
Encore désolé mais ... Si je mets comme celà :



public static void Main()

{

Là il n'y a rien..

}



void FichierTexte(string nomFichier)

{

Là il y a tout le code pour faire la lecture dans le fichier

}



Il n'y a que la première méthode qui s'éxecute..Désolé mais je débute (j'ai déjà précisé loool)
Commenter la réponse de cs_Machjaghjolu
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
0
Merci
Bon j'attends la réponse de Coq, qui va te dire qu'il faut appeler la fonction.. mais lui il va te mettre un exemple.. : )
Commenter la réponse de Lutinore
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
0
Merci
Vais me faire frapper moi . Merci de votre patience lol je débute à peine et c'est encore pour le projet (à la base c'est un projet Flash mdr).
Commenter la réponse de cs_Machjaghjolu
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
0
Merci
Naaan, c'est fait pour ca le forum.. : )
Commenter la réponse de Lutinore
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
0
Merci
Je vais faire capoter quelqu'un.. mais avant je me fais capoter à moi ..



Je mets la fonction





using System;

using System.IO;



namespace Test

{

class MainClass

{

void FichierTexte(string nomFichier)

{

......



dans un fichier vide, puis dans le fichier Main.cs je met :

private static void Main( )

{

FichierTexte(lenomdufichiervide.cs );

}




?? Là ça ne marche pas mais autant je m'y prend mal lol
Commenter la réponse de cs_Machjaghjolu
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
0
Merci
Tu as mis Main dans une classe !? Toute fonction doit être déclarée dans une classe.. Si ta classe n'est pas dans le même namespace tu ne dois pas oublier de rajouter les using correspondants.. De plus si tu ne mets pas "public" devant ta fonction tu ne peux pas l'utiliser depuis une autre classe, elle sera visible seulement dans la classe ou elle a éte declaree.. A savoir aussi, ta méthode doit être static sinon il faudra créer un objet de la classe pour y accéder..ca va tu arrives aàsuivre !?
Commenter la réponse de Lutinore
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
0
Merci
J'ai trouvé un gros livre de cours en pdf et j'ai lu ce qu'étais l'appel ..

Je ne comprend pas comment on se sert de la fonction return (surtout dans mon code..)

(Je pense que j'y suis presque lol)

Main.cs(56,15): error CS1520: Une méthode de classe, de structure ou d'interface doit posséder un type de retour



Je poste mon code:





using System;



namespace Test1

{

class Test

{

public static void FichierTexte(string nomFichier)

{

StreamReader sr = null;

StreamWriter sw = null;

string line;



try

{

if (! File.Exists(nomFichier))

{

// Le fichier n'existe pas. On le crée.

sw = new StreamWriter(nomFichier);


sw.WriteLine("Bonjour. Nous sommes le {0} et il est
{1} ",


DateTime.Now.ToLongDateString(),


DateTime.Now.ToLongTimeString());

sw.Close();

sw = null;

//
Remarque : On peut utiliser sw = File.AppendText(NomFichier) pour
ajouter

// du texte à un fichier existant

}



//
Ouverture du fichier et écriture du contenu du fichier sur la console

sr = new StreamReader(nomFichier);

Console.WriteLine("Début du fichier");

line = sr.ReadLine();

while (line != null)

{


Console.WriteLine(line);

line = sr.ReadLine();

}

Console.WriteLine("Fin du fichier");

}

finally

{

// Fermeture streamreader

if (sr != null) sr.Close();

// Fermeture streamwriter

if (sw != null) sw.Close();

}

}

public static Main()

{

FichierTexte()

}

}

}
Commenter la réponse de cs_Machjaghjolu
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
0
Merci
Vi un bon livre.. : )

Tu as oublié le type de retour..

public static void Main( ) { }
Commenter la réponse de Lutinore
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
0
Merci
Merci, je vais voir demain matin.

Je pense que je devrais m'en sortir avec la seconde méthode (celle où
tu fais appel à 2 feuilles). Je ne vais pas venir vous embêter
longtemps pour se projet (mais vu qu'un ami a besoin de ce logiciel
pour faire son projet...) et je vais apprendre le C# tranquillement :)



Bonne nuit
Commenter la réponse de cs_Machjaghjolu
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
27
0
Merci
Perso pour un petit projet comme ca je préfere tout mettre dans le même fichier, c'est plus simple.. Ne t'inquietes pas tu ne déranges personne.. a+
Commenter la réponse de Lutinore
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
0
Merci
Je viens de faire un petit test, ça a marcher .
Mais je crois que ce qui me pose le problème c'est le fait que le nom
de la méthode comporte quelque chose dans la parenthèse
FichierTexte(string nomFichier) ...



using System;

using System.Drawing;

using System.Windows.Forms;



namespace CaptureScreen4

{



public class MainForm : System.Windows.Forms.Form

{

public static void Test()

{

MessageBox.Show("Lol");

}

public static void Main(string[] args)

{

Test();

}

}

}
Commenter la réponse de cs_Machjaghjolu
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
37
0
Merci
Euh, pourquoi ça te pose un problème

[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
Commenter la réponse de cs_Bidou
Messages postés
92
Date d'inscription
dimanche 31 octobre 2004
Statut
Membre
Dernière intervention
10 octobre 2005
0
Merci
Tout compte fait rien... Ca marche merci : ) ... Bientôt je serai de l'autre côté (réponse et pas poseur de question mdrrr)
Commenter la réponse de cs_Machjaghjolu