Tag: pinvoke
P/Invoke ist eine Implementierung der Spezifikation, die von Microsoft erstellt die Common Language Infrastructure (CLI) für den Aufruf von nativen code-Bibliotheken, die von verwaltetem code.
Serielle Kommunikation mit Silverlight 5 (COM-port)

Arbeite ich an einer ASP.NET website, die werde ich brauchen, um den Zugriff auf ein usb-Gerät von der client-Seite. Ich habe gesehen, dass Silverlight 5, die durch den Gebrauch von P/Invoke, ermöglicht uns den Zugriff auf die
Ändern eines C# - Delegat Aufrufkonvention CDECL

Ich hatte dieses problem mit C#, wenn ich mit DotNet1.1 Das problem ist. Ich habe eine nicht verwaltete dll, die hat eine Funktion, die eine Funktion Zeiger (neben anderen Argumenten). Wenn ich erkläre das DLLImport in C#
Anlegen/Wechsel von Desktop in C#/.Net

Derzeit bin ich über die CreateDesktop native C-Funktion und der Aufruf in meinem C# - code zu erstellen, und wechseln Sie zwischen den desktops. Gibt es irgendeine Möglichkeit, diese mithilfe der Process-Klasse oder c#/.Net-Klasse für diese Angelegenheit?
P/Invoke-dynamic DLL-Suchpfad

Habe ich eine vorhandene app, die P/Ruft eine DLL die sich im gleichen Verzeichnis wie die app selbst. Nun (aufgrund der Tatsache, dass Canon stellt einen der crappiest API ' s Rum) brauche ich zur Unterstützung zwei
Wie kann ich eine C# - dll in einer Win32-C++ - Projekt?

Bin ich an einer Lösung arbeiten, die meisten seiner Kern-engine entwickelt wird, als Win32 C++ (und ist Plattform-unabhängig und ist auch für den Einsatz auf OS X), vor einiger Zeit haben wir benötigt zum Aufruf von C++
C# P/Invoke-Struktur problem

Ich bin beim schreiben einer C# P/Invoke-wrapper für eine API in C (eine native Win-dll), und in der Regel gut funktioniert. Die einzige Ausnahme ist eine spezielle Methode, die eine struct als parameter in C-code. Die Funktion
int vs IntPtr, wenn Sie ein handle?

Zuerst eine hintergrund-Frage: Im Allgemeinen, was ist der Unterschied zwischen int und IntPtr? Meine Vermutung ist, dass es ein Tatsächliches Objekt, sondern als ein Wert wie ein int oder byte ist. Angenommen, das ist wahr: Also Sie
So rufen Sie eine C++ - API von C#

Ich habe ein ziemlich großes system in C++ implementiert, die ich brauche, um die Interaktion mit. Das system hat eine ziemlich große API, eine Reihe von C++ - DLLs. Diese DLLs exportieren von C++ - Klassen, im
Zurückgeben einer Zeichenfolge aus den delphi-dll in C# Anrufer in 64 bit

Habe ich eine C# - Anwendung, die Aufrufe von nativen Delphi-dll mit dem folgenden code: C# [DllImport("NativeDLL.dll", CharSet = CharSet.Unicode, CallingConvention = CallingConvention.StdCall)] public static extern int GetString(string out str); Delphi function GetString(out a: PChar): Integer; stdcall;
c# p/invoke Schwierigkeiten marshalling Zeiger

Ich bin versucht zu rufen, in eine native .dll aus c# mit p/invoke. Ich bin in der Lage, um den Anruf zu machen (kein Absturz, der Funktion einen Wert zurückgibt), aber der return-code bedeutet "Ein-Zeiger-parameter nicht zugänglich
.NET 4 Methode Sicherheit Ausnahme, wenn pinvoking

Habe ich einige code, der pinvokes native win32. Da ich aufgerüstet .NET 4, der code gestartet, werfen MethodAccessException sagen: Versuch, Sicherheit durch Transparenz 'Tek.Audio.Midi.MidiDevice.GetDevices()' aufrufen systemeigenen code über die Methode 'Tek.Native.Windows.Multimedia.midiInGetNumDevs()' ist fehlgeschlagen. Methoden müssen auf die
DllImport - ANSI vs. Unicode

Habe ich einige Fragen über die möglichen Antworten für die test-Frage unten: Frage: schreiben Sie den folgenden code-segment zum aufrufen einer Funktion aus der Win32-API (Application Programming Interface) durch die Verwendung von platform invoke. string personName =
C# PInvoke aus strings Erklärung

In C# und PInvoke, wie gebe ich einen string-Puffer, so dass die C-DLL füllt und zurückgibt? Was werden die PInvoke-Erklärung? Der C-Funktionsdeklaration ist int GetData(char* data, int buflength); In C#, ich habe erklärt es als [DllImport(DllName)] static
Kopieren byte-array mit dem Marschall.Kopieren von IntPtr mit C# funktioniert nicht

Ich bin mit einer nicht verwalteten Bibliothek, die erzeugt Graustufen-Bilder (etwa 100x200 Pixel, mehr oder weniger). Ein Bild ist enthalten in einer Struktur, die wie folgt aussieht: C: typedef struct abs_image { ABS_DWORD Width; ABS_DWORD Height; ABS_DWORD
Mit SCardGetStatusChange werden benachrichtigt Karte einzusetzen/zu entfernen, ohne polling

Ich versuche zu erkennen, wenn eine Karte eingefügt wurde, die in einem reader. Wenn ich eine böse polling-Schleife wie diese: public struct SCARD_READERSTATE { [MarshalAs(UnmanagedType.LPWStr)] public string szReader; public byte pvUserData; public byte rgbAtr; public uint dwCurrentState;
Einen Unterschied zwischen malloc und Marschall.AllocHGlobal?

Schreibe ich ein Modul in C#, dass die Exporte einiger Funktionen verwendet werden, die in C. Ich brauche zum reservieren von Speicher für einige Strukturen übergeben werden, zwischen C <-> C#. Was ich zuordnen im C, die
Unblock-Datei aus .net 4 c#

Gibt es eine Möglichkeit, um die Sperrung einer Datei aus dem internet heruntergeladen, die aus einem c# - Programm. Surfen im internet habe ich erfahren, dass die Informationen geschrieben werden, die in einem alternativen Datenstrom ein (NTFS
Ist es in der Regel eine spürbare Leistungseinbußen beim Aufruf PInvoke Win32 / COM-Methoden?

Frage ich mich, ob jemand eine anständige Erklärung oder übersicht auf die negativen Aspekte der Verwendung von DLLImport /PInvoke auf Win32-Methoden aus verwaltet .Net-code? Ich plan zu machen verwenden der verschiedenen Win32-Methoden und möchte ein besseres Verständnis
SendMessage vs. WndProc

Ich bin versucht zu verlängern TextBox - Steuerelement hinzufügen, Wasserzeichen-Funktionalität. Das Beispiel, das ich gefunden habe auf CodeProject ist unter Verwendung der importierten der SendMessage-Funktion. [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)] static extern IntPtr SendMessage(IntPtr hWnd,
FindWindowEx aus user32.dll ist die Rückgabe ein handle, Null und error code 127 verwenden von dllimport

Ich brauche, um zu behandeln eine andere windows-Anwendung ein Programm, google-Suche fand ich eine Probe, die Griffe windows-Rechner mit DLLImport-Attribut und dem Import der user32.dll Funktionen in managed in C#. Dem die Anwendung ausgeführt wird, bekomme ich
Exportieren von Funktionen aus C++ dll in C# P/Invoke

Ich gebaut habe eine C++ dll, die ich nennen möchte aus C# - code. Ich bin in der Lage, rufen Sie eine Funktion auf, aber der andere wirft eine Ausnahme, wenn der C# - code versucht, um
Wie um die Karte von Win32-Datentypen auf C# - Datentypen bei der Verwendung von P/Invoke?

Ich versuche, etwas zu tun, wie diese in C#. Ich fand heraus, wie zum aufrufen von Win32-Methoden aus C# mit P/Invoke von diesem link. Allerdings traf ich einige Schwierigkeiten bei der Umsetzung von P/Invoke. Beispielsweise eine der
C# full-screen-Konsole?

Habe ich gesehen, dass Windows wechseln können, die sehr basic-Konsole-Schnittstelle, wenn die Aktualisierung der Treiber und ich habe auch gesehen, Programme wie Borland C++, dies zu tun. Ich würde wirklich gerne wissen, wie man diese mit einer
Wie dynamisch laden und entladen eine systemeigene DLL-Datei?

Ich habe einen buggy Fremdanbieter-DLL-Dateien, die nach einiger Zeit von der Ausführung beginnt, werfen die Zugriffsverletzung Ausnahmen. Wenn das passiert, möchte ich, um neu zu laden, die DLL-Datei. Wie mache ich das? Wie wäre das laden der
C# wie kann ich die pin ein Objekt im Speicher ohne marshalling des Objekts?

Ok hier geht, ich bin mit oracle ContentAccess-Bibliothek in C#, die Bibliothek ist programmiert in C. Ich verwende einige Funktionen aus der Bibliothek zum extrahieren von text aus verschiedenen Dateien. die c-Bibliothek nutzt asynchrone Kommunikation von Funktionszeigern
How to get last error (WSAGetLastError)?

Wie rufe ich WSAGetLastError() aus der WinAPI, so bekomme ich die gültigen text Fehler? InformationsquelleAutor Ivan Prodanov | 2009-04-19
C#: array übergeben von Zeichenfolgen zu einer C++ - DLL

Ich versuche einige strings in einem array an meine C++ DLL. Den C++ - DLL-Funktion: extern "C" _declspec(dllexport) void printnames(char** ppNames, int iNbOfNames) { for(int iName=0; iName < iNbOfNames; iName++) { OutputDebugStringA(ppNames[iName]); } } Sowie in C#,
Gewusst wie: importieren von void * C-API in C#?

Angesichts dieser C-API-Deklaration wie wäre es importiert zu C#? int _stdcall z4ctyget(CITY_REC *, void *); Habe ich in der Lage, so weit zu kommen: [DllImport(@"zip4_w32.dll", CallingConvention = CallingConvention.StdCall, EntryPoint = "z4ctygetSTD", ExactSpelling = false)] private extern static
Die Ausführung von code in einem anderen Benutzer-Kontext

Ich habe eine Anwendung mit einem manifest, das erfordert, die als administrator ausgeführt, aber ein Teil der app ist das anzeigen eines Laufwerks mit WNetAddConnection2, die ich glauben verlangt, führen Sie in die normal-user-Kontext aufgrund Anmeldeinformationen etc.
Lesen Dependency walker Ausgang

Ich habe einige Probleme mit einer der Dlls in meiner Anwendung, und ich lief dependency walker auf Sie. ich bin nicht sicher, wie es zu Lesen, aber ich bekam folgende Ergebnisse Tut es empfehlen x86-x64 incompatibilty? gibt
Wie bringe ich eine nicht verwaltete Anwendung Fenster nach vorne, und machen Sie das aktive Fenster für die (simulierte) user-Eingabe

Ich bin angenommen, ich brauche zur Verwendung von pinvoke, aber ich bin nicht sicher, welche Funktionsaufrufe benötigt werden. Detaillierten Szenario. Eine legacy-Anwendung ausgeführt wird. Ich Handle für diese Anwendung. Ich brauche: a) bringen, dass die Anwendung auf
Grund zu bevorzugen CefSharp über CefGlue (oder Umgekehrt)?

In das Reich der Bereitstellung einer anständigen Umsetzung des Chromium Embedded Framework (CEF) für .Net, die beiden führenden Optionen angezeigt werden CefSharp und CefGlue. Sie unterscheiden sich in Ansatz (CefGlue verwendet P/Invoke aufrufen, in das CEF nicht
Wie um zu zeigen, Drucker Eigenschaften/Einstellungen-dialog und speichern Sie die änderungen?

EDIT: Mein Fehler! Ich erwartet, dass die änderungen geschrieben werden, wieder auf die Standard-Drucker-Einstellungen, wenn in der Tat nur die lokale Instanz des PrinterSettings-geändert werden. - Den code unten scheint zu funktionieren wie gedacht Ich versuche zu
Rückkehr Zeiger, die von nicht verwalteten auf verwaltete code

Habe ich eine nicht verwaltete dll, die Exporte die folgende Funktion: SomeData* test(); Angenommen SomeData als: typedef struct _Data Data; struct _Data{ int a; int b; } Nun möchte ich Sie zum aufrufen dieser Funktion aus C#
AttachConsole(-1), aber die Konsole.WriteLine wird nicht ausgegeben zu übergeordneten Eingabeaufforderung?

Wenn ich mein Programm in eine Windows Application, und verwendet die AttachConsole(-1) API, wie bekomme ich Console.WriteLine schreiben in die Konsole startete ich die Anwendung aus? Es ist nicht für mich arbeiten. Falls es relevant ist, ich
Gibt es eine Möglichkeit zum Debuggen von c++ - dll-Aufruf aus C# DllImport?

Frage ich mich, ob es eine Möglichkeit zum Debuggen von c++ - dll-Aufruf aus C# PInvoke in VS 2010. Ich habe versucht, um zu befestigen, das Projekt in c# - Anwendung, aber es hat nicht funktioniert -
Vorbei an einer C# - Klasse, Objekt in und aus einer C++ - DLL-Klasse

Ich ve wurden arbeiten an einem Prototyp-code-Anwendung in C# und verwendet Klassen und Funktionen aus älteren C++ - code (in form einer DLL importiert). Die code-Voraussetzung ist das bestehen in einer Objekt-Klasse, die unmanaged C++ - DLL
Wie man mit Dateien mit Namen, die länger als 259 Zeichen?

Arbeite ich an einer Anwendung, die Spaziergänge durch jede Datei in einige Verzeichnisse und ein paar Aktionen mit diesen Dateien. Unter anderem muss ich die Datei abzurufen, die Größe und das Datum Wann diese Datei geändert wurde.
Wickeln Sie die native DLL für C#

Schrieb ich eine C++ DLL und jetzt muss ich anrufen eine systemeigene Funktion, die von einer verwalteten app. Die exportierte native Funktion erscheint wie diese: extern "C" __declspec(dllexport) bool NativeMethod(char *param1, char *param2, char *result); So, in
Aufruf der Java-Methode aus der API in .NET

Ich habe eine Java-API in der jar-Datei mit einigen Abhängigkeiten von anderen jar-Dateien. Gibt es eine Möglichkeit zum aufrufen einer bestimmten Methode aus, die diese API, wie die Verwendung von PInvoke aus .NET? Danke. InformationsquelleAutor aumanets |
Wie kann ich marshall ein Zeiger auf einen Zeiger eines Arrays von Strukturen?

Meine C-Deklarationen sind wie folgt: int myData(uint myHandle, tchar *dataName, long *Time, uint *maxData, DATASTRUCT **data); typedef struct { byte Rel; __int64 Time; char Validated; unsigned char Data[1]; } DATASTRUCT ; Mein C# - Deklarationen sind wie
Show Authentication-dialog, der in C# für windows Vista/7

Möchte ich, um Netzwerk-Anmeldeinformationen von einem Benutzer. Ich mit .NET 3.5 mit C#. Bis jetzt benutzte ich die CredUIPromptForCredentials nennen (ein sehr nützlicher link, wie es zu benutzen finden hier) Mein problem ist, dass die CredUIPromptForCredentials API-Aufruf
Automatisches erstellen von C# - Wrapper aus c-Headern?

Gibt es eine Möglichkeit zum automatischen erstellen von p/invoke-Wrapper für .net aus einer c-header? Natürlich kann ich auch erstellen Sie Sie mit der hand, aber pflegen würde schmerzhaft sein, und ich würde wahrscheinlich irgendwo einen Fehler wodurch
So rufen Sie "CreateFile" in C#?

Nach soviel Informationen über abrufen .MBR von einem Speichermedium, die Schlussfolgerung ist die Verwendung von P/Invoke zum Aufruf CreateFile. Aber, wie dies geschehen kann in C#? Bitte verdeutlichen! Ihre Hilfe wird sehr geschätzt!!! InformationsquelleAutor yen | 2009-01-05
Prüfen Sie, ob eine DLL im system vorhanden ist

kurze Frage. Ich möchte herausfinden, ob eine DLL im system vorhanden ist, wo meine Anwendung ausgeführt wird. Ist das möglich in C#? (in einer Weise, die funktioniert auf ALLEN Windows OS?) DLL meine ich non-.NET classic dll
Wie man parent-Prozess .NET in der verwalteten Weg

Ich suchte eine Menge für die Methode zu bekommen übergeordneten Prozess .NET, fand aber nur ein P/Invoke Weg. Was passiert, wenn mehrere Instanzen des Prozesses ausgeführt werden, da Sie haben alle die gleiche "ProcessName"? Falls es jemandem
pinvokestackimbalance — wie kann ich das beheben oder schalten Sie es aus?

Ich wechselte zu von vs2010 vs2008. Genau die gleiche Lösung, außer jetzt jeden einzelnen Aufruf einer C++ - dll liefert eine 'pinvokestackimbalance' Ausnahme. Diese Ausnahme nicht entlassen werden, im Jahr 2008. Ich habe vollständigen Zugriff auf die
Marschall.ThrowExceptionForHR löst eine NotSupportedException

im mit Sie das folgende Muster für die übersetzung von win32-Ausnahmen in .NET Ausnahmen. var result = A_KERNEL32_PINVOKE_CALL(); if (result == 0) { Marshal.ThrowExceptionForHR(Marshal.GetHRForLastWin32Error()); } Für die Vollständigkeit der pinvoke-Aufruf ist einer der folgenden: LoadLibrary, GetProcAddress, SetWindowsHookEx.
Wie zu verwenden GetForeGroundWindow() auf, um neu gestartete Anwendung Fenster-handle in C#?

Ich versuche zu erfassen, eine neu gestartete Anwendung mit GetForegroundWindow() mithilfe von P/Invoke in C#. Aber alles was ich bekomme ist explorer.exe Fenster-handle anstelle der tatsächlichen Prozess-Fenster-Griff (wie notepad.exe oder wordpad.exe) ins Leben gerufen wurde. Eigentlich bin
ReadProcessMemory und WriteProcessMemory Schief Gegangen

Ich bin der Schaffung dieses memory-editor, aber das Unterprogramm ReadProcessMemory fehl; so hat WriteProcessMemory. Ich habe versucht, um die letzten Fehler mit der GetLastError-Unterprogramm, sondern es wird 0 zurückgegeben und die wird ERROR_SUCCESS zurückgegeben. Hier ist der