Ich habe eine Menge Fragen dazu, aber niemand erklärt, wie ich das nutzen kann.Wie benutzt man [DllImport ("")] in C#?
Ich habe dies:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using Microsoft.FSharp.Linq.RuntimeHelpers;
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.IO;
public class WindowHandling
{
public void ActivateTargetApplication(string processName, List<string> barcodesList)
{
[DllImport("User32.dll")]
public static extern int SetForegroundWindow(IntPtr point);
Process p = Process.Start("notepad++.exe");
p.WaitForInputIdle();
IntPtr h = p.MainWindowHandle;
SetForegroundWindow(h);
SendKeys.SendWait("k");
IntPtr processFoundWindow = p.MainWindowHandle;
}
}
Kann mir jemand helfen zu verstehen, warum es mir einen Fehler auf der DllImport
Linie und auf der Linie public static
gibt?
Hat jemand eine Idee, was kann ich tun? Danke.
Welcher Fehler ist es? –
Es gibt mehrere Probleme zusätzlich zu dem, was @vcsjones erwähnt hat. Haben Sie User32.dll, wo Sie dies verwenden? Und überprüfen Sie auch den Ort, an dem Sie die [DllImport] -Anweisung geschrieben haben. Es ist ein falscher Ort. –
@ PM. User32.dll ist eine ziemlich standardmäßige Win32-DLL, die immer in SysWow64 oder System32 enthalten sein wird, daher sollte es kein Problem geben, sie zu finden. Es könnte den * falschen * finden, wenn es eine andere DLL mit dem gleichen Namen gibt, die in der Suchsequenz "näher" ist, aber das würde bei den meisten Programmen Unheil bringen. – vcsjones