[DllImport("winmm.dll")] fuktioniert nicht?
-
Hallo
ich möchte das beispiel unter
http://www.dotnet247.com/247reference/msgs/11/59721.aspx
mit [DllImport("winmm.dll")] ausprobierenwenn ich mein projekt erstelle bekomme ich diese fehler meldung
C:\winmmConsol\Class1.cs(21): Der Typ oder Namespace 'DllImport' konnte nicht gefunden werden. Möglicherweise fehlt eine Anweisung oder ein Assemblyverweis.
unter:
http://www.uni-koblenz.de/~hagbard/csharp/csharp_wav.htmlist auch so ein beispiel und ich bekomme die gleiche fehler meldung.
was mache ich falschich habe Visual C#.Net 2003
Grüße Can
-
Was ist denn hier nicht klar? Die Fehlermeldung sagt doch schon alles:
du muss ein Namespace "includieren"
--> System.Runtime.InteropServices
-
hallo
ich bin noch anfänger.
wie kann ich auf die winmm.dll methoden zugreifen?
[DllImport("winmm.dll")]
public static extern uint midiInOpen(ref short hMidiIn, uint uDeviceID,
MidiInProc dwCallback, int dwInstance, int fdwOpen);wenn ich jetz winmm. tippe bekomme ich die methodenliste nicht zusehen
habe irgend wie kein zugriff.
Grüße Can
-
Kannst du denn nicht lesen? Ich habe doch geschrieben, dass du den Verweis auf ein Namespace hinzufügen sollst.
ganz oben in deiner *cs Datei muss du folgende Zeile einfügen:
using System.Runtime.InteropServices;
-
Hallo Xqgene
Das problem ist nicht mehr
using System.Runtime.InteropServices;
[DllImport("winmm.dll")]Das Problen ist jetz das ich nicht auf die methoden von winmm.dll zugreifen kann.
Normalerweise wenn ich einen klassen namen tippe dann ein punkt
wird eine liste mit fuktionen für diese klasse gezeigt.zum beispiel System.
so eine liste kommt bei winmm.dll nicht.in winmm.dll sind ja midi funktionen die möchte ich benutzen.
wie mache ich das jetz?
Grüße Fuat
-
also du bist wirklich ein anfänger.
VS oder was auch immer du zum Programmieren benutst, zeigt nur für die Klassen die Hilfe (ich spreche jetzt von .NET) an, wo auch die Metadaten existieren. deine winmm.dll ist eine "WINAPI-DLL" und hat mit .NET nix zu tun, du nutzt nur WINAPI, um bestimmte Funktionen aus einer DLL aufzurufen. Welche DLL welche Funktionen beinhalten, kannst du in Win32 SDK Hilfe finden. Ist zwar etwas müselig, aber wer such, der findet. Man such lieber nach einer Funktion, dann kann man auch gleich, welche DLL es ist, rauslesen.
im klartext: du gehst auf die www.microsoft.com/msdn/ und suchst (was auch immer :D)
-
ja du hast es richtig erkannt bin blutiger anfänger die muß es doch auch geben
wie bekomme ich diese funktion in C# zum laufen?
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_midiinopen.asp
1 = using System.Runtime.InteropServices;
[DllImport("winmm.dll")]2 = static extern long MMRESULT midiInOpen(
LPHMIDIIN lphMidiIn,
UINT_PTR uDeviceID,
DWORD_PTR dwCallback,
DWORD_PTR dwCallbackInstance,
DWORD dwFlags
);3 = um midiin zuöffnen einfach midiInOpen() schreiben
liege ich da richtig?
-
das weiss ich auch nicht. C# ist für so was nicht besonders geeignet. am besten du schreibst so was in C++.
vielleicht findest du hier was:
http://www.codeproject.com/csharp/