Wenn du dich mit dem SQL-Kram nicht auseinandersetzen willst kannst du einen Objektrelationalen Mapper verwenden. Linq2SQL würde ich nun nicht nehmen, das Teil arbeitet nur mit dem SQL-Server zusammen und wird wohl nicht mehr weiterentwickelt. Das Entity Framework ist da wohl passender, steckt aber auch noch in den Kinderschuhen:
- es ist alles noch nicht ganz zuende gedacht, nervige Fehler, umständliche Bedienung, so dass du vor einem ersten Produktiveinsatz es unbedingt erstmal testen mußt
- ich weiß nicht ob es bereits Treiber für andere DB-Systeme/Abstraktionsebenen wie OLE existieren
- in diesem System erfolgt kein automatisches Persistieren der Objekte in die DB, du mußt es trotzdem manuell mit context.SaveChanges() anweisen.
Es gibt aber noch viele andere ORMs für .Net, NHibernate kannst du dir mal anschauen.
Gib dir eine DataTable zurück und du hast die Anzahl.
Die Anzahl liegt nicht vor bei einem Reader denn der holt die Daten aus einem Stream und weiß noch nicht was daher kommt.
ihoernchen schrieb:
Warum dann 1) funktioniert und 2) nicht verstehe ich zwar immer noch nicht, aber naja
evt. achtet die Firewall auf das "WorkingDirectory" ... das könnten in den beiden Varianten unterschiedlich sein
Der Aufruf des Reiters soll über die Abfrage erfolgen. Ich will diese Tabelle auch einsehen können,nachdem mich das Programm fragt, OB ich es sehen möchte...
...und das OHNE es direkt anklicken zu müssen...
Hi,
oh ok, stimmt, du hattest mir den Link schonmal gegeben !
Hatte jetzt garnicht an das Tool gedacht !
Aber ich hab vor ein paar Minuten es anders gelöst:
Eben die selbe Variante, nur dass ich darüber:
private byte[] ByteArrayFromStruct(object obj)
{
int length = Marshal.SizeOf(obj);
byte[] array = new byte[length];
IntPtr ptr = Marshal.AllocHGlobal(length);
Marshal.StructureToPtr(obj, ptr, true);
Marshal.Copy(ptr, array, 0, length);
Marshal.FreeHGlobal(ptr);
return array;
}
mir aus der Struktur ein byte-Array generiere und dann darüber die Position für die Tabelle errechne !
Funktioniert !
Aber trotzdem danke für deine Hilfe !
Schönen Tag noch !
hmm ok dann hab ich da wohl falsch nachgeschaut.. aber wie schaff ich es denne standart typen in ein gemeinsames feld zu speichern? Muss ich wohl binär verwenden und ensprechend serialisieren!!!
Ich hab die Lösung gefunden: Mit ffmpeg und dem Parameter "-i video.avi" wird eine Info mit Audio-, Videocodec und -Bitrate ausgegeben.
Ich habs nur noch nicht geschafft, die Kommandozeilenausgabe auszulesen:
http://www.c-plusplus.net/forum/viewtopic-var-p-is-1730710.html#1730710
theta schrieb:
Das new byte[] ist überflüssig!
Ok, hast Recht ! Danke
Nein! Mit dem BinaryReader interpretierst Du die Daten und wandelst sie dann in die Basis Typen (int, float, was weiss ich alles) um.
Stimmt ja, die Angabe des Basestreams des Serialports im ctor ist ja nicht umsonst !
Guck Dir mein Beispiel in diesem Thread an!
Gut, ich habe es jetzt nun auch endlich gelöst !
Die Daten liegen korrekt in der struct vor.
Habe es einfach so gemacht:
GCHandle pinnedStruct = GCHandle.Alloc(mystruct, GCHandleType.Pinned);
Marshal.Copy(Buffer, 0, pinnedStruct.AddrOfPinnedObject(), Size);
pinnedStruct.Free();
Sollte soweit passen !
Ich danke dir vielmals für: die Aufklärung, Tipps, Hilfe und deine Geduld mit mir !!!
Noch nen schönen Sonntag !
Die bevorstehende Mono-Release 2.0 [2] überwindet die Plattformbarriere: Laut den Draft Release Notes [3] unterstützt Mono nun den vollen Sprachumfang des C#-3.0-Standards. Gegenüber früheren Versionen - das Projekt startete bereits 2001 - hat die Praxistauglichkeit unter Linux große Fortschritte gemacht.
Außerdem laufen unter der mit Mono implementierten Common Language Runtime wie in Microsofts eigener Version nicht nur C#-Programme. Die virtuelle Maschine unterstützt ein gutes Dutzend weiterer Programmiersprachen [4]. C# ist zudem auch in der Lage, nativen C++-Code einzubinden. So lassen sich Programme mit hoher Performance schreiben, die trotzdem in weiten Teilen des Code auf den Komfort von C# zurückgreifen.
Wie ausgereift ist .MONO jetzt wirklich?
Hallo ich hab folgendes Problem:
Ein Drag Event auf ein WindowsFormsHost Element scheint nich zu funktionieren.
Ich habe hier folgenden WPF Code:
<my:WindowsFormsHost Name="WindowsFromHostRenderBox" xmlns:my="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration" Margin="120,22,0,21" AllowDrop="True" Drop="WindowsFromHostRenderBoxDropEvent" Background="Cyan">
<Forms:PictureBox x:Name="RenderBox" Width="680" Height="578" AllowDrop="True" DragDrop="PictureBoxDragDropEvent" />
</my:WindowsFormsHost>
Wenn ich jetzt etwas auf dieses Element ziehen möchte verändert sich der Mauszeiger aber leider zu diesem Verboten Schild das eigentlich kommt wenn man AllowDrop auf false hat. Was kann ich nun tun damit es funktioniert?
Grüße NIls
klar die 2zeilen mehr das machts net aus dann simulier mal diese situation:
schreibe einen ego shooter..in c# und c++
wer ist schneller? denke eher c# .
Na wenn das möglich wäre dann hätten wir noch mehr Trojaner, Viren, etc.
Sowas kannst Du nur mit ActiveX machen.
Der Code wird auf dem Server ausgeführt und nicht auf dem Client.
Du kannst aber eine Link machen und bei draufklick öffnet sich der Download. Danach kann der User öffnen.
ActiveX wird auf dem Client ausgeführt und ist eigentlich ein Programm.
Hier gehts weiter:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-243636-and-start-is-0-and-postdays-is-0-and-postorder-is-asc-and-highlight-is-.html
c) wenn du es gekauft hast, warum veroeffentlichst dus ?
d) void delay_500();
/-----Funktion: Verz”gert Programmablauf um ca. 150ms ---------------------/
void delay_100()
das hast du gekauft ? nicht nur das der code schlecht ist - die comments sind zudem falsch (und auf die idee eines delay(int) kahm wo niemand #gg
ich glaub aber das der code auch mit einem code tag unlesbar waere - sehr inkonsequente handhabe der einrueckung und neu zeilen
Das klingt jetzt aber eher nach fehlerhaftem Model/fehlerhaftes UI-Design. Vllt schreibst du uns was du machen willst, dann können wir evtl. Alternativen bieten.
Servus,
ich stehe gerade vor einem Problem. Ich habe ein wenig herumgebastelt und versuche von einem Server die angemeldeten RDP Clients auflisten zu lassen. Bis jetzt habe ich es aber nur gepackt die lokalen LogonSessions mit Usernamen zu ermitteln:
private void GetSessions()
{
ConnectionOptions wmiConnectionOptions = new ConnectionOptions();
wmiConnectionOptions.Impersonation = ImpersonationLevel.Impersonate;
wmiConnectionOptions.Authentication = AuthenticationLevel.Packet;
string server = "xxxxxxxxxxxx";
ManagementScope wmiScope = new ManagementScope(@"\\" + server + @"\root\cimv2", wmiConnectionOptions);
wmiScope.Connect();
ObjectQuery oq = new ObjectQuery("Select * from Win32_LogonSession Where LogonType = 10");
ManagementObjectSearcher query = new ManagementObjectSearcher(wmiScope, oq);
ManagementObjectCollection queryCollection = query.Get();
ObjectQuery associator = null;
ManagementObjectSearcher associatorQuery = null;
ManagementObjectCollection associatorCollection = null;
foreach ( ManagementObject obj in queryCollection )
{
if ( obj["LogonId"] != null )
{
associator = new ObjectQuery(
string.Format("Associators of {{Win32_LogonSession.LogonId={0}}} Where AssocClass=Win32_LoggedOnUser Role=Dependent",
obj["LogonId"].ToString()
));
associatorQuery = new ManagementObjectSearcher(wmiScope, associator);
associatorCollection = associatorQuery.Get();
foreach ( ManagementObject obj2 in associatorCollection )
{
if ( obj2["Name"] != null )
{
Trace.WriteLine(obj2["Name"].ToString());
}
}
}
}
}
Alles schön und gut... Aber wie komme ich an die eigentliche IP Adresse des Users der sich mit seinem Account, per RemoteDesktop an dem Server, angemeldet hat?
Hat einer eine Idee?
gruß
Hellsgore