Sicaine schrieb:
Mach nen bound auf nen Port irgendwo recht oben. Wenn er belegt ist, läuft die anwneundg schon und Nachrichten kannste darüber auch schicken.
In welcher Sprache verwendet man solche Bastellösungen?
Mutex in .Net
SendMessage über DllImport
Mit den Links hast du jetzt auch zwei Seiten die man unbedingt kennen sollte als Umsteiger auf .Net
Jetzt wird mir einiges klarer. Das heißt immer wenn eine Funktion pausiert werden muss bis Ereignis x eintritt, wird sie über einen Monitor direkt am Thread Scheduler angehalten. Ich nehme an, dass es im Fall von GetMessage() in etwa so sein wird, dass GetMessage() irgendeinen Monitor auf Wait setzt und Windows beim hinzufügen einer Message den Pulse sendet.
Stichwort Thread.Join(): Ich weiß, dass es diese Methode gibt, mich hat allerdings vielmehr interessiert was dahinter steckt.
Vielen Dank nochmal!
Hmm es sollte kein Interface haben nur per Konsole, da ich es nacher mit PHP starten will
putenv("LD_PRELOAD=/usr/lib/libproxychains.so");
An diese Lib muss ich die Daten weitergeben?
Wie kann ich das machen?
Jep, so gehts, eine schönere Möglichkeit wirds wohl nicht geben?
Man muss halt rel viel mit Split arbeiten, um die Werte in die einzelnen Columns zu packen.
Ahh danke
jetzt habe ich gefunden, wo proxychains den Startbefehl zerteilt.
Muss jetzt nur kurz gucken wie ich des nach anderen Sachen trennen kann also ob ich das in Anführungszeichen schreiben muss z.B. "-port".
EDIT: soweit klappt jetzt alles.
Nur habe ich folgendes Problem.
Die Startbefehle werden in der Datei main.c ausgelesen. Gebraucht werden sie aber in der Datei libproxychains.c. Wie bekomme ich die Daten darüber? Gibt es sowas wie Seesion-Variablen?
Danke Schonmal
Ist das so überhaupt möglich? Oder was gibt es sonst noch für Möglichkeiten wenn eine Funktion in einer Dll in einen ostream schreibt und man die Daten im C# programm auswerten möchte?
Grüsse
Servus,
also das Problem ist ja, dass der Client die Verbindung abbricht, wenn er das Server-Zertifikat nicht kennt. Da kann ich am Server nichts machen, meiner Meinung nach. Es handelt sich einfach um ein selbstsigniertes mit openssl erstelltes Zertifikat. Wenn ich die Verbindung mit einem normalen Webbrowser aufbaue, dann kommt eine Warnmeldung, die ich bestätigen muss, und das wars - so wie man es kennt...
Das Thema ist für mich zwar immernoch grundsätzlich interessant, aber ich habe inzwischen gemerkt, dass man mit .net 2.0 viel mehr bzgl. SSL machen kann. Dort gibt es die Möglichkeit, einen normalen TCP-Socket zu öffnen und den dann über SSL abzusichern. Das ist also viel flexibler und außerdem scheint es auch weniger Probleme mit dem Zertifikat zu geben. Aber ich bin noch nicht so weit, dass ich das mit Sicherheit sagen könnte...
Danke trotzdem für deine Mühen!
Schöne Grüße,
Philipp
Dieser Thread wurde von Moderator/in kingruedi aus dem Forum Linux/Unix in das Forum C# und .NET verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?
Dieses Posting wurde automatisch erzeugt.
So, was in dem Link stand ist soweit ganz richtig, aber:
man sollte sowohl LocalMachine als auch CurrentUser abchecken. Außerdem sollte man dann in den Subkey "Odbc Data Sources" gehen.
Hab jetzt mal schnell 'nen eigenen Dialog gefrickelt - soviel arbeit ist das gar nicht. Man kriegt dort sogar raus, ob trustetConnection OK ist oder nicht.
Giebt es da wirklich nichts fertiges?
Das ist ja wirklich starker Tobak, ein solches Fuzziproblem nicht lösen zu können.
Nun denn, ich habs mit Freude beim Morgenkaffe getan:
if (theString.ToString().StartsWith("Copy:") == true)
{
string Quelle = " ";
string Ziel = " ";
// zuerst entfernen wir das "Copy:"
int pos = theString.IndexOf(':') + 1;
theString = theString.Substring(pos, theString.Length - pos);
theString = theString.Trim();
string[] x = new string[1];
string[] s = theString.Split(new char[] { ' ' });
foreach (string sp in s)
{
if (sp.Trim() != "")
{
for (int iy = 0; iy < 2; iy++)
{
// auch die beiden if-anweisungen
// müssen vertauscht werden
if (iy == 1)
{
Quelle = s[1];
}
if (iy == 0)
{
Ziel = s[0];
}
}
}
}
Console.WriteLine(Quelle + " und " + Ziel);
}
Well isn't System.String mapped to string and System.Byte mapped to byte in C#? AFAIK there are no language-internal datatypes that don't map to a Framework Type.
According to http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpcondefaultmarshalingforstrings.asp a c-string must be marshaled when converted to a framework string:
[DllImport("xxxxxxx.dll", EntryPoint = "StationOnline")]
public static extern byte StationOnline([MarshalAs(UnmanagedType.LPStr)] string
sStaName);