windows - Hvordan kan jeg finde de tilgængelige metoder til mig i en uhåndteret DLL

Indlæg af Hanne Mølgaard Plasc

Problem



Når du gør en dll import som denne:


[DllImport("user32.dll")]
    static extern bool SwapMouseButton(bool fSwap);

    private void button1\_Click(object sender, EventArgs e)
    {
        SwapMouseButton(false);
    }


Hvordan ville man gå om at vide, at der er en metode, der hedder SwapMouseButton inden for user32.dll, der tager en bool parameter og returnerer en bool værdi?


Det er selvfølgelig ingen intellisens at redde dagen. Så er der en hjemmeside, der lister alt dette ud, eller et program, som jeg kan skrive user32.dll ind, der vil opdage det for mig?

Bedste reference


`User32.dll 'er en del af selve Windows API'en, og API'en er dokumenteret på MSDN. Den typiske måde at finde ting på er at bestemme, hvad du prøver at gøre, og søg derefter efter det pågældende emne. [4]]]


Der er ingen måde at finde parametrene for en umanaged DLLs funktioner. Du kan finde navnet på funktionerne (normalt) med depends.exe (del af VS) eller med DependencyWalker. Dette vil ikke give dig parametrene, men de skal hentes fra dokumentationen til biblioteket. [5]

Andre referencer 1


Du kan bruge depends.exe, der følger med Visual Studio. Du kan indlæse i en dll, og det vil vise dig alle funktioner indeni, såvel som afhængigheder.


Du kan også prøve Dumpbin: http://msdn.microsoft.com/en-us/library/c1h23y6c[6]