Avatar billede km2 Nybegynder
09. maj 2009 - 15:03 Der er 9 kommentarer og
1 løsning

Hvordan bruger man visual basic funktioner i C# - Hjælp!!!

Jeg har et C# program hvor jeg vil anvende et par visual basic funktioner. Jeg vil gerne anvende FileOpen funktionen.

FileOpen(ff, CmOpen.FileName, OpenMode.Output);

Men compileren kommer med en fejl som hedder:
No overload for the method 'FileOpen' takes three arguments.
hvorfor gør den det? Her er den del af programmet hvor der meldes fejl. Koden står i en button_click funktion. Håber i kan hjælpe mig.

            int i;
            string sTemp;
            string mTemp;
            int ff;

            ff = Microsoft.VisualBasic.FileSystem.FreeFile();

            cmOpen.Filter = "*.txt|*.txt";
            cmSave.Filter = "*.txt|*.txt";
            cmOpen.FileName = "names.txt";
            cmSave.FileName = "names.txt";
            cmOpen.InitialDirectory = savepath;
            cmSave.InitialDirectory = savepath;
            cmSave.ShowDialog();
            cmOpen.FileName = cmSave.FileName;

savepath = Strings.Mid(cmOpen.FileName, 1, Strings.InStrRev(cmOpen.FileName,"\")); Microsoft.VisualBasic.FileSystem.FileOpen(ff, cmOpen.FileName,Microsoft.VisualBasic.OpenMode.Output);
Avatar billede thesurfer Nybegynder
09. maj 2009 - 15:07 #1
Er der nogen speciel grund til at du vil bruge Visual Basic kode i C#, når C# kan det samme som din Visual Basic kode?
Avatar billede arne_v Ekspert
09. maj 2009 - 15:14 #2
Metoden tager 6 argumenter, se:
  http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.filesystem.fileopen.aspx

(og C# tillader ikke at man undlader argumenter)
Avatar billede arne_v Ekspert
09. maj 2009 - 15:16 #3
Men ellers kan jeg heller ikke helt se pointen i at bruge Microsoft.VisualBasic i C# og slet ikke til dette formål.
Avatar billede km2 Nybegynder
09. maj 2009 - 15:26 #4
Grunden til at jeg vil bruge et par VB funktioner er fordi at jeg videreudvikler i C# udfra et eksisterende vb projekt. Jeg kunne ikke finde lignende funktioner i C# til funktionerne PrintLine, FileOpen, InStrRev og Mid og derfor ville jeg forsøge at bruge vb funktionerne i C#. Men kender i de tilsvarende C# funktioner. For i har ret hvis det kan laves i C# så er det det bedste.
Avatar billede km2 Nybegynder
09. maj 2009 - 15:32 #5
Grunden til at jeg vil bruge et par VB funktioner er fordi at jeg videreudvikler i C# udfra et eksisterende vb projekt. Jeg kunne ikke finde lignende funktioner i C# til funktionerne PrintLine, FileOpen, InStrRev og Mid og derfor ville jeg forsøge at bruge vb funktionerne i C#. Men kender i de tilsvarende C# funktioner. For i har ret hvis det kan laves i C# så er det det bedste.
Avatar billede arne_v Ekspert
09. maj 2009 - 15:37 #6
Jeg vil tro at StreamWriter diverse metoder, String LastIndexOf og SubString kunne løse dit problem.
Avatar billede km2 Nybegynder
09. maj 2009 - 15:48 #7
Tak for svaret og jeg vil bruge disse C# funktioner istedet.
Avatar billede arne_v Ekspert
13. maj 2009 - 01:34 #8
Og så tog du point selv ....
Avatar billede km2 Nybegynder
13. maj 2009 - 15:38 #9
Det var en fejl at jeg tog pointne selv, men man kan ikke lave det om. Det er selvfølgelig dig der skal have dem.
Avatar billede arne_v Ekspert
13. maj 2009 - 21:56 #10
Metoden i http://www.expfaq.dk/giv_flere_point#giv_flere_point er foer blevet brugt til at loese den slags problemer.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester