Laden...

Forenbeiträge von iSliver Ingesamt 57 Beiträge

26.02.2014 - 11:31 Uhr

Also im Prinzip wie im Visual Studio ( hab hier nur das 2012er als vgl.) ?
Dann müsstest du jeden tab "Draggable" machen und sobal die Maus den Bereich vom Fenster verlässt ein neues Fenster mit der Referenz zum Usercontrol erzeugen.
Das ganze schön aussehen zu lassen, ist aber nicht so einfach 😉

03.02.2014 - 15:09 Uhr

Hi,
ich versuche aktuell in meiner Firma das signieren zu vereinfachen.
Dazu verwende ich eine client/server lösung mit RabbitMQ als mittelsmann.
Das Übertragen der Daten läuft einwandfrei und aktuell versuche ich signtool.exe aus dem sdk zu verwenden.
Ich rufe es mit folgenden Parametern auf:

sign /a /t TimeStampUri /v path

Sowie für x64 signieren mit:

sign /v /ac CrossSignCertPath /s CertStoreName /n CertName /t TimeStampUri filepath

Das Funktioniert auch ohne probleme wenn man es manuell macht.
Dann bekomm ich immer eine Meldung von Windows, dass ein Zugriff auf ein geschütztes Element ( den private key im Store) stattfindet.
Das würde ich gerne entweder programmtisch oder per windows einstellungen umgehen.
Da es ein Windows Fenster ist, kann ich nicht per Consolenaufruf das behandeln.
Und mir das Handle holen und damit zu "pfuschen" möchte ich nicht so gerne.
Ich habe gelesen das wenn man den Dienst für geschützen Bereieich ausschaltet, kommt das Fenster nicht, das kann ich aber nicht bestätigen.

Kennt jemand vllt. aus eigener Erfahrung eine möglichkeit dieses Fenster (Anhang) zu umgehen/behandeln ?

Grüße

/da ich vorankommen wollte habe ich es erstmal "unsauber" gelöst indem ich mir das Buttonhandle hole und ein click sende.
Sauberere Vorschläge sind dennoch erwünscht.

01.11.2013 - 12:08 Uhr

Background an Color/Brush Property im Viewmodel binden.
Property aktualisieren wenn du im VM merkst das ne Preisänderung stattgefunden hat.
Wenn das nur ein Flashlight sein soll, kannst du ja einfach nach x sekunden wieder auf orig zustand zurücksetzen, da gibts genug Möglichkeiten.
Andere Ansätze hast du ja auch genannt, also denke ich nicht das du überhaupt keine Ahnung hast wie das zu lösen ist.

16.10.2013 - 15:31 Uhr
 
ProcessStartInfo startInfo = new ProcessStartInfo("einprogramm.exe");
 startInfo.Verb ="runas";
startInfo.Arguments = @"Argumente inkl savecred";
Process process = new Process();
process.StartInfo = startInfo;
process.Start();

Sollte eigentlich funktionieren

16.10.2013 - 15:07 Uhr

Stichwörter für dich:
Hooking
DirectX

Oder relativ einfach:


[DllImport("user32.dll")]
static extern void keybd_event(byte bVk, byte bScan, uint dwFlags,
   UIntPtr dwExtraInfo);

Vorher das handle vom Foreground window holen

 [DllImport("user32.dll", CharSet = System.Runtime.InteropServices.CharSet.Auto)]
        private static extern IntPtr GetForegroundWindow();

Hoffe mal mein Beitrag war nicht zu kurz und zu wenig erklärend 😉

14.10.2013 - 09:46 Uhr

Ansonsten, wenns dir sowieso um den GC geht, was speziell willst du denn testen ?
MS hat da einige Fälle und Erklärungen schon parat.
Garbage Collector-Grundlagen und Tipps zur Leistung
Garbage Collection
Understanding .NET Garbage Collection

10.10.2013 - 14:50 Uhr

X-Mal hier diskutiert worden.
Lösung: Geht nicht, erschwert nur den Aufwand, aktuell beste Lösung und zudem Opensource ->Confuser 1.9
Schutz vor Deobfuscation
WinRT Codesicherheit: Kann der "Quellcode" wie bei .NET angesehen werden? Welche Obfuscatoren gibts?
Obfuscator gesucht

10.10.2013 - 13:28 Uhr

Stringbuilder Replace sollte da beim nachträglichen Replace am schnellsten gehen.

10.10.2013 - 09:50 Uhr

Im Eventhandler SelectionChanged einfach ein Command im VM triggern, als parameter die removed/added items übergeben.

Man muss auch nicht immer peinlichst genau ein Pattern verfolgen, wenn es einem im Weg steht.

09.10.2013 - 10:09 Uhr

Du hast dir Git anscheinend nicht genauer angesehen.
Ich sehe keinen Nachteil bei Git, unabhängig von der Programmiersprache.
Turtoise Git für die Explorer integration und im Studio per Plugin.
Ich verstehe auch nicht wo das Problem beim branchen, speziell bei vb6, sein soll.

17.09.2013 - 17:20 Uhr

TODO:
Zeichenlänge beim Client begrenzen -> Absturz / danach nicht mehr nutzbar, da Datei zu groß für den Speicher beim Einladen.

Keys verschlüsselt mit Hash aus Userpasswort speichern, immer beim Start abfragen.

UI mehr von den Operationen im Hintergrund trennen -> Einfrieren.

Messagebox beim User hinzufügen passt nicht ins konzept/ solltes selbes Design haben.

Obfuskieren des Quellcodes, sowie directory listing auf dem Webserver abschalten(leere index.html reicht schon)

Ansonsten ein Mesenger mit Potenzial, nur noch viel zu machen.

mfg

30.08.2013 - 13:33 Uhr

Ich kenn mich mit WP Entwicklung nicht so aus, aber wäre es nicht möglich einfach dynamisch die Liste die gebunden ist zu aktualisieren.
Also das immer nur jeweils 10 Einträge sichtbar sind und beim erreichen des 10ten werden die vorherigen entladen und durch die nächsten 9 ausgetauscht.
Genauso wie beim zurückgehen der Einträge.

30.08.2013 - 13:27 Uhr

Würd sonst durch den Visual Tree durchiterieren und mir die TextBox holen.

26.07.2013 - 14:21 Uhr

Danke für die sinvollen Antworten.
Ich werde das mit den Repos mal durchlesen und versuchen umzusetzen.

26.07.2013 - 10:30 Uhr

Hallo,
ich hab mal eine Frage zu einer Struktur, wie sie am logischsten aufgebaut werden sollte.
Ich verwende aktuell eine Plugin Architektur in der Plugins relativ eigenständig sind.
Jetzt will ich Daten aus dem Hauptprogramm den Plugins zur Verfügung stellen, nur habe ich mehr Daten, als ein bestimmtes Plugin brauch.
Als Beispiel habe ich 1000 Einträge in x Tabellen in einer Datenbank, das Plugin brauch aber nur x Einträge aus n Tabllen,mit einem bestimmten Typ,wobei sich Änderungen im Plugin auch auf die Datenbank auswirken sollen.

Also stellt sich die Überlegung ob ich den Plugins die Datenbankconnection geben soll und jedes Plugin selber die Daten verarbeitet(redundanz?) oder lieber im Hauptprogramm bei jedem Plugin eventbasiert prüfen soll welche Daten weitergegeben werden sollen und diese dann in einer Liste bereitstellen ?
Mir stellt sich die Frage wie man das logisch umsetzt, also eine 2 wege kommunikation von Plugin zu Host mit nicht wirklich festgelegten Daten.
(Mit nicht wirklich meine ich, dass jedes Plugin andere Daten in verschiedenen Mengen benötigt und auch auf Bedarf abrufen kann)

16.05.2013 - 15:51 Uhr

MemCpy in C#

Ist unter x64 deutlich effizienter.
Unter x84 solltest du auf die üblichen Mittel zurückgreifen.

18.04.2013 - 15:25 Uhr

Gibt noch bessere Alternativen 😉
dot 42 ist kostenlos.(für android entwicklung mit C#)

Aber bin auch mit Android und HTC OneX zufrieden.
Windows Phones sind mir ehrlichgesagt zu wenig verbreitet, sowie auch zu schwer.

btw. Ich meine das Entwickeln fürn Windows Store ist mittlerweile für kostenlose, "Private" Apps kostenlos.

18.04.2013 - 08:49 Uhr

Wieso eigentlich das Webbrowser Control ?
(Nachteile: Unsicher,veraltet,langsam,kaum proxysupport(socks) etc.)
Es geht doch auch mit Httwebrequests in Kombination mit nem Browser Plugin wie LiveHttpHeaders oder Fiddler.

gruß

31.01.2013 - 13:11 Uhr

Ja hab mich missverständlich bzw falsch ausgedrückt.
Das eigentliche Binding mache im xaml.

Strokes="{Binding ViewingStrokes,UpdateSourceTrigger=PropertyChanged}"
31.01.2013 - 12:12 Uhr

Hallo,
also mein aktuelles Problem ist, das ich serialisiert die inkrementellen Änderungen eines InkCanvas per Netzwerk übertrage, wobei ich beim wieder einlesen auch die korrekten Objekte bekomme, nur beim Anzeigen der Strokes tut sich nichts in der UI.
Habe die Strokes Eigenschaft in mein ViewModel gebunden und dort ändere ich dann die Strokes (Remove/Add).
Diese Strokes werden dann auch korrekt in die Collection im ViewModel eingetragen.
(Und dann das sich etwas geändert hat per NotifyPropertyChanged der UI mitgeteillt)

Nur passiert in der grafischen Oberfläche nichts, daher nehme ich an, dass das Datenbinding nicht richtig funktioniert hat.
Also hab ich mit Snoop mal nachgesehen und dort wurden keine Binding Errors gefunden und auch in Snoop die korrekten Werte angezeigt.


 public StrokeCollection ViewingStrokes
        {
            get { return _ViewingStrokes; }
            set { _ViewingStrokes = value; base.OnPropertyChanged("ViewingStrokes"); }
        }

Die Änderung sieht dann in etwa so aus:


 StrokeCollection complete = new StrokeCollection();
                    complete.Add(Serializers.DeSerializeStrokeCollection(Convert.FromBase64String(packet.Strokes)));
                    ViewingStrokes = complete;

Das Datenbinding hab ich im Code behind gemacht:

 ViewTabViewModel viewModel = new ViewTabViewModel();
TestViewTab.DataContext = viewModel;

TestView ist übrigens ne Tab Seite bzw das innere Grid.
Andere Bindungen funktionieren auch ohne Probleme.

Vielleicht muss man das Zeichnen manuell anstoßen oder brauch ich noch andere Daten ?
Fällt euch da ein öfter vorkommendes Problem ein/auf ?

mfg iSliver

/edit Lösung:
Die Objekte wurde nicht dargestellt aufgrund eines Datenfehlers, die Daten im Hintergrund waren korrupt und somit nicht darstellbar.
Alles andere war okay.

07.01.2013 - 17:23 Uhr

schonmal an eine verknüpfung auf signtool.exe mit dem parameter signwizard gedacht ?
Damit kannst schon recht einfach was machen.

02.01.2013 - 13:00 Uhr

Was nicht schlecht ist, die Lizenz beinhaltet einen KEY um das Hauptprogramm zu entschlüsseln und dann lädst das einfach, wenns nicht klappt ist die Lizenz/der Key ungültig.
Dann bist du nicht nur auf Flags angewiesen.

/edit: ist natürlich auch kein vollständiger Schutz, kombiniert mit diversen Anti Debugger Methodiken aber schon recht effektiv gegen Einsteiger.
Aber beim JIT Compiler gilt ja leider wer zuerst hookt gewinnt.
Es gibt aber auch schon fertige Lizensierungssysteme.(online wie offline).

14.12.2012 - 09:20 Uhr

Kann man solche Daten nicht einfach in der Itemsource binden ?
Also Itemsource des Grids an z.b. den default view einer table im viewmodel binden.

15.11.2012 - 14:01 Uhr

Das könnte ich machen aber ich frage ja hier nach einer fertigen Komponente die ich nutzen kann und nicht nach Wegen wie ich eine bestehende abspecke/erweitere.
Im Endeffekt würde ich die einfach abspecken oder eine Eigene schreiben, aber ich suche erstmal nach einer EierlegendenWollMilchSau für mich 😛

mfg iSliver

15.11.2012 - 13:51 Uhr

Ich weiß nicht wieviel ihr mit dem Titel anfangen könnt aber hier mal mein "Problem":
Ich suche eine fertige Library die das Zeichnen auf einem Usercontrol/Window ermöglicht.
Mit Zeichnen meine ich das ein User zur Laufzeit ein Rechteck/Kreis/Linie/Strich(Freihand) zeichnen kann in einer beliebigen Farbe und Dicke.
Ich hab hierzu erstmal im Forum gesucht und nur Verweise auf die InkCanvas, DrawingObjekte und sonstige Methoden wie man sowas erstellen könnte gefunden.
Links die vermutlich hilfreich sind waren teilweise nicht mehr zu erreichen.
(http://mentas.spaces.live.com/Blog/cns!A8D899E9B03A6E15!152.entry)
Auf codeplex habe ich nichts in der Richtung gefunden.
Auf Codeproject habe ich nur das hier gefunden: WPF DrawTools
Was nicht meinen Anforderungen entspricht.
Ich brauche kein Redo/Undo etc. Nur eine einfache Komponente zum zeichnen wobei ich die einzelnen Zeichenoperationen serialisieren kann.

vielleicht gibt es schon zig solcher Lösungen und ich habe sie einfach nicht gefunden, dann wäre es nett mir einen Link zu geben damit ich mir das mal ansehen kann.
Ich möchte nicht unbedingt alles selber machen und das Rad neu erfinden. Am liebsten wäre mir eine fertige Komponente(wird nicht für kommerzielle zwecke verwendet).

Schonmal danke im Voraus.

mfg iSliver

12.10.2012 - 16:33 Uhr

de4dot: .NET deobfuscator and unpacker

Die gängigen Obfuscatoren werden damit 1 click reversed , auch das oben genannte Babel.

Momentan bietet confuser die beste Sicherheit, aber es ist auch nur eine Frage der Zeit bis das mit 1 click Tools umgangen wird.

mfg iSliver

edit:/
It currently supports the following .NET obfuscators:

Babel.NET  
CliSecure / Agile.NET  
CodeFort  
CodeVeil  
CodeWall  
Crypto Obfuscator  
DeepSea  
Dotfuscator  
Eazfuscator.NET  
Goliath.NET  
ILProtector  
MPRESS  
.NET Reactor  
MaxtoCode  
Rummage  
Skater.NET  
SmartAssembly  
Spices.Net  
Xenocode
27.09.2012 - 15:17 Uhr

Also was ich nicht besprechen möchte sind sachen wie hier :
HttpRequest mit Post liefert anderen Response als im Browser

Hab mich hier auch schon durchgewühlt in der Suche.
Ich hab vermutlich kein Problem einen bestehenden Cookie von der Anmeldung weiterzureichen.
Das Problem liegt darin das ich programmatisch nicht auf den cookie zugreifen kann bzw ihn nicht sehe.
Hab auch schon diverse Lösungsmöglichkeiten aus dem Forum probiert.
Auto Redirect auf false gesetzt, vorher einen Get REquest gemacht etc
Ich bekomm nur beim Post meinen cookie der dann bei allen Weiteren Requests verwendet wird.
Aber diesen bekomme ich programmatisch nicht.
Dazu habe ich hier auch keine Lösung in der Suche gefunden.
Falls doch sowas hier existiert lasse ich mich gerne davon überzeugen.

ZYCookie ist anonymisiert worden von mir und zufällig genauso wie von einem öffentlichen Anbieter.
Hätte auch ZZZZZZCookie schreiben können war mir aber nicht wichtig im Moment meines Posts.

So, dieser Thread war mal überflüssig meinerseits, das Problem bestand nicht in meinem Code, habe gerade mit dem Admin der Seite gesprochen und da stellte sich heraus das in dem Admin Panel nur Safari zugelassen ist, nach einem Anpassen des User Agents passt alels wieder 😃.
Thread kann auch gerne gelöscht werden.

27.09.2012 - 15:05 Uhr

Hi um es kurz zu halten ich will mich auf einer Website einloggen.
Dazu habe ich mit Live HTTP Headers und Fiddler mal mitgeschnitten was gesendet wird bei einem korrekten Login.

Die wichtigen Sachen sehen dann so aus :

POST
>
HTTP/1.1
Host:
>

User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:15.0) Gecko/20100101 Firefox/15.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: keep-alive
Referer:
>

Content-Type: application/x-www-form-urlencoded
Content-Length: 24

password=************

Dann bekomme ich diese Response :

HTTP/1.1 302 Found
Date: Thu, 27 Sep 2012 12:26:24 GMT
Server: Apache/2.2.16
Set-Cookie: ZYCOOKIE=df7c62fe219ed66258fcacbda9b9afe9; expires=Thu, 27-Sep-2012 12:41:25 GMT; path=/; domain=.
>

Location: /admin/index.php
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 853
Connection: close
Content-Type: text/html; charset=utf-8

Wenn ich das jetzt Programmatisch mache mithilfe eines HTTPWebRequest mit folgendem code mache bekomme ich leider aber keinen Cookie zurück


CookieContainer cookieContainer = new CookieContainer();
            string html;
            string loginData = "password=" + pw;

            HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
            req.CookieContainer = cookieContainer;
            req.CachePolicy = WebRequest.DefaultCachePolicy;
            
            req.Method = "POST";
            req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
            req.Referer = url;
            req.UserAgent = @"Mozilla/5.0 (Windows NT 6.1; rv:15.0) Gecko/20120716 Firefox/15.0.1";
            req.KeepAlive = true ;
            req.Expect = "";
            req.ContentType = "application/x-www-form-urlencoded";
            ASCIIEncoding encoding = new ASCIIEncoding();
            byte[] loginDataBytes = encoding.GetBytes(loginData);
            req.ContentLength = loginDataBytes.Length;
            Stream stream = req.GetRequestStream();
            stream.Write(loginDataBytes, 0, loginDataBytes.Length);
          
            stream.Close();
            
            
            HttpWebResponse res = (HttpWebResponse)req.GetResponse();
            string testcookieHeader = res.Headers["Set-cookie"];

Wenn ich das ganze aber im Fiddler ansehe habe ich angeblich im Response Header meines Post requests meinen cookie bekommen der sieht dann angeblich so aus :

HTTP/1.1 302 Found
Date: Thu, 27 Sep 2012 12:27:01 GMT
Server: Apache/2.2.16
Set-Cookie: ZYCOOKIE=e3ef9cec1dd9b82079b821731b0e518a; expires=Thu, 27-Sep-2012 12:42:01 GMT; path=/; domain=.
>

Location: /admin/
Vary: Accept-Encoding
Content-Length: 2081
Connection: close
Content-Type: text/html; charset=utf-8

Jetzt weiß ich nicht was ich falsch mache, dass ich keinen Cookie programmatisch sehen kann ...
Denn in meinem Request Response sehe ich nur :
Date
Server
Location
Vary
Content-Length
Connection
Content-Type

Wäre für Hilfestellungen und konkrete Beispiele sehr dankbar 😃

mfg

21.09.2012 - 11:33 Uhr

Dafür muss man Leichen schänden ?

Es ist mir auch aufgefallen, daß besonders schlechte Rechtschreibung meistens gemeinsam mit Ignoranz und Ungeduld auftritt. Somit ist das für mich ein gutes Warnzeichen, und wenn man sieht, wie manche Leute Deutsch schreiben, dann weiß man meistens auch, wie sie Programmcode schreiben.

Das ist zu pauschalisiert, ich kenne genug Legastheniker die super programmieren können, aber keine Ahnung von Dokumentation oder Rechtschreibung haben. Aber das spricht ja auch nicht für die Allgemeinheit.

20.08.2012 - 11:40 Uhr

So etwas gibt es doch schon tausendfach in diversen black hat foren.
Aber schön, das du wenigstens ins temp Verzeichnis droppst und somit den bösen Leuten kein
neues Spielzeug gibst.
Schön wäre noch eine Fehlerausgabe, bei Problemen.

09.08.2012 - 14:58 Uhr

Wenn ich das richtig verstanden habe ist das hier doch nur eine "RunPE" oder ?
Weil sowas gibts ja schon zuhauf.

27.06.2012 - 09:36 Uhr

Fehlermeldung:
System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
bei NotifyBook.frmBrowser.OpenFB()
bei NotifyBook.frmBrowser.frmBrowser_Load(Object sender, EventArgs e)
bei System.Windows.Forms.Form.OnLoad(EventArgs e)
bei System.Windows.Forms.Form.OnCreateControl()
bei System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
bei System.Windows.Forms.Control.CreateControl()
bei System.Windows.Forms.Control.WmShowWindow(Message& m)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.ScrollableControl.WndProc(Message& m)
bei System.Windows.Forms.ContainerControl.WndProc(Message& m)
bei System.Windows.Forms.Form.WmShowWindow(Message& m)
bei System.Windows.Forms.Form.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

24.04.2012 - 09:54 Uhr

Das sieht ziemlich vielversprechend aus 😃 danke

18.04.2012 - 15:28 Uhr

Wenn du magst entferne ich das Wort Youtube....
Es geht mir auch nicht nur um Youtube sondern generell wie sowas gehen kann.

18.04.2012 - 14:37 Uhr

Also um das Problem zu beschreiben,
ich möchte ein kleines Tool schreibe, das automatisch Videosstreams z.b. von youtube speichert.
Also Firefox speichert ja anscheinend im Profil Cache die Daten des streams in max 1,7mb großen Dateien je nach Einstellung und Version.
Nun möchte ich z.b. beim Betrachten eines Streams aus dem Cache die einzelnen Dateien automatisch in einen externen Ordner kopieren.
Das Problem ist, das Firefox "zufällig" in die verschiedenen Cache Ordner kopiert und ich mir auch nicht immer sicher sein kann, das es die richtige temp datei ist.
Deshalb suche ich Tipps und Hilfestellungen wie ich das realisieren sollte.

Grundlegend hatte ich vor, mithilfe des Filesystemwatchers den Cache Ordner dauernd zu prüfen und dann Dateien über 1mb in den externen Ordner zu kopieren und dann nach Erstellung wieder zu sortieren. Weiß auch nicht so genau wie Firefox das alles macht.
Habe nur bei about:cache und dann bei list cache einen Ansatz...

Hat jemand hier schon ähnliches gemacht oder gibt es bereits Source Code oder Ansätze die ich einfach nicht beim googlen gefunden habe ?

mfg iSliver

edit:

Cache entry information
key:
>

fetch count: 2
last fetched: 2012-04-18 14:40:44
last modified: 2012-04-18 14:25:41
expires: 2012-04-18 20:45:18
Data size: 1781760
file on disk: C:\Users\Work1\AppData\Local\Mozilla\Firefox\Profiles\2xc94kyb.default\Cache\6\91\F06A2d01
Security: This document does not have any security info associated with it.
Client: HTTP
request-method: GET
response-head: HTTP/1.1 200 OK Last-Modified: Mon, 16 Apr 2012 17:36:40 GMT Content-Type: video/x-flv Date: Wed, 18 Apr 2012 12:25:29 GMT Expires: Wed, 18 Apr 2012 12:25:29 GMT Cache-Control: private, max-age=22791 Accept-Ranges: bytes Content-Length: 1781760 X-Content-Type-Options: nosniff Server: gvs 1.0

21.03.2012 - 15:19 Uhr

automatisch speichern wenn werte sich ändern ?
oder das obengenannte etwas abstrahieren wenn die app größer wird.

21.03.2012 - 13:14 Uhr

Wieso nicht einfach ValueChanged und das Button Event nutzen ?

Also text box protery changed Event nutzen und wenn das gefeurt wurde und der button geklickt wurde die andere Seite enablen.
Oder versteh ich dein Problem nicht ?

29.02.2012 - 11:12 Uhr

Nimm doch von dem, von mir genannten Link die abgeänderte RTF Box
Full AdvRichTextBox code.
findest du auf der Seite 😉

29.02.2012 - 10:46 Uhr
/// <summary>
/// Gets or sets the alignment to apply to the current
/// selection or insertion point.
/// </summary>
/// <remarks>
/// Replaces the SelectionAlignment from
/// <see cref="RichTextBox"/>.
/// </remarks>
public new TextAlign SelectionAlignment
{
    get
    {
        PARAFORMAT fmt = new PARAFORMAT();
        fmt.cbSize = Marshal.SizeOf( fmt );
        
        // Get the alignment.
        SendMessage( new HandleRef( this, Handle ),
                     EM_GETPARAFORMAT,
                     SCF_SELECTION, ref fmt );
        
        // Default to Left align.
        if ( ( fmt.dwMask & PFM_ALIGNMENT ) == 0 )
            return TextAlign.Left;
        
        return ( TextAlign )fmt.wAlignment;
    }
    
    set
    {
        PARAFORMAT fmt = new PARAFORMAT();
        fmt.cbSize = Marshal.SizeOf( fmt );
        fmt.dwMask = PFM_ALIGNMENT;
        fmt.wAlignment = ( short )value;
        
        // Set the alignment.
        SendMessage( new HandleRef( this, Handle ),
                     EM_SETPARAFORMAT,
                     SCF_SELECTION, ref fmt );
    }
}

Extending RichTextBox: Justification

hier gefunden.... nur gegooglet aber nicht probiert

28.02.2012 - 15:11 Uhr

Danke das von Colo hat schon geholfen 😉

28.02.2012 - 14:29 Uhr

Naja das ist ja nicht mein wirkliches Problem mit dem checked oder nicht..
ich kann auch zum Timerstart fragen welche gechecked sind und damit arbeiten.
Mir gehts eher darum, dass im prinzip periodisch mein Timer läuft mit 1sek intervall und in diesem Intervall sollen die entsprechenden Methoden aufgerufen werden.
Jetzt gehts mir darum wie merke ich mir welche Methode aufgerufen werden soll.

bsp checkbox 1 und 3 sind checked
1sek
Methode1 aufrufen
1sek
Methode3 aufrufen
1sek
Methode1 aufrufen
1sek
Methode3 aufrufen
1sek
Methode1 aufrufen
1sek
Methode3 aufrufen

bsp checkbox 1 , 2 und 3 sind checked
1sek
Methode1 aufrufen
1sek
Methode2 aufrufen
1sek
Methode3 aufrufen
1sek
Methode1 aufrufen
1sek
Methode2 aufrufen
1sek
Methode3 aufrufen

Da sitzt meine Denkblockade aktuell...

28.02.2012 - 13:57 Uhr

okay

Ganz einfach :

wie rufe ich periodisch mithilfe eines Timers verschieden viele Methoden in einem 1 sekunden Takt auf.
Die Methoden können anhand von Checkboxen erkannt werden.

oder immer noch schwierig ?

28.02.2012 - 13:32 Uhr

Also erstmal sorry für den nichtssagenden Titel des Threads. [==> nachträglich geändert]
Mir fällt aber grad nichts passendes ein.
Ich habe grad eine Denkblockade mit einem ziemlich einfachen Problem.

Ich habe eine feste Anzahl an Checkboxen und ich möchte in einem 1 sekunden intervall einen Befehl per Com-Port versenden.
Die Kommunikation habe ich bereits fertig. Jetzt möchte ich periodisch je nach anzahl gecheckter Boxen den entsprechenden befehlssatz versenden.

Bsp. Box 1 & box 2 sind checked - > jede sek ein Befehl entweder box1 entsprechend oder box2 entsprechend.

Hab überlegt einfach immer jede Sekunde n Timer laufen zu lassen da zu prüfen ob checked ist und dann den Befehl in eine que packen und diese bei jedem Aufruf einen Befhel abarbeiten zu lassen.
Da kommt dann natürlich das problem des Volllaufen der Que.
Wie kann ich das einfach lösen ?

Danke schonmal im voraus für jegliche Anmerkungen.

28.02.2012 - 11:09 Uhr

Wo ist denn das Problem ? Also kann sein das ich das missverstehe aber es würde doch sehr einfach gehen wenn man die Datei einliest und die Daten dann in 2 string Arrays oder ner list oder wie du willst... speicherst.
Dann eine Email klasse (findet man zuhauf und kann man schnell selber schreiben) benutzen.
Dann einfach nur im vorgefertigten string die jeweilligen variablen wie name ändern und das an die Email versenden.

hier z.b. ein Beispiel fürs versenden (nicht von mir nur c&p)

class Sender
    {
        private SmtpClient client;
        private const string host = "smtp.deinMailanbieter.com";
        private const int port = 587;
  public Sender()
        {
            try
            {
                MailAddress from = new MailAddress("Deinemailadresse@deinMailanbieter.com", "Betreff(Name oder sowas)");
                MailAddress to = new MailAddress("Emailadresse aus excel");
                MailMessage message = new MailMessage(from, to);

                message.Body = @"Standard naricht Sehr geehrter Herr Name(string aus excl)";


                client = new SmtpClient(host, port);
                client.EnableSsl = true;
                client.Credentials = new System.Net.NetworkCredential("Deinemailadresse@deinMailanbieter.com", "deinpasswort");

                try
                {
                    client.Send(message);
                }
                catch (SmtpFailedRecipientsException e)
                {
                    for (int i = 0; i < e.InnerExceptions.Length; i++)
                    {
                        SmtpStatusCode status = e.InnerExceptions[i].StatusCode;
                        if (status == SmtpStatusCode.MailboxBusy ||
                             status == SmtpStatusCode.MailboxUnavailable)
                        {
                            Console.WriteLine("Delivery failed - retrying in 5 seconds.");
                            System.Threading.Thread.Sleep(5000);
                            client.Send(message);
                        }
                        else
                        {
                            Console.WriteLine("Failed to deliver message to {0}",
                                e.InnerExceptions[i].FailedRecipient);
                        }
                    }
                }
                catch (SmtpException e)
                {
                    //System.Windows.Forms.MessageBox.Show(e.ToString());
                }
                catch (Exception e)
                {
                    //System.Windows.Forms.MessageBox.Show(e.ToString());
                }
            }
            catch (SmtpException e)
            {
                //                   System.Windows.Forms.MessageBox.Show(e.ToString());
            }
        }
23.02.2012 - 11:05 Uhr

Leichenschänder 😄

Der Autor wirds dir vermutlich nich sagen können
Letzter Beitrag : Geschrieben am: 09.11.2006 19:46

Gibt es die Möglichkeit an den Source-Code ranzukommen falls ich dies für meine Zwecke weiterentwickeln möchte?

Wenn der Autor nicht antwortet probiers mit Reflection aus (nich die feine Art)

20.12.2011 - 14:47 Uhr

Programm öffnet sich nicht wirklich bei mir.
Hab Win 7 SP1
Das Programm ist in der Taskleiste sichtbar und teilweise auch über die Voransicht aber das Fenster
selber ist versteckt / nicht zu sehen.
Es verschwindet ausserhalb des Bildschirmbereiches nach rechts wenn man oft maximiert / minimiert.
Startet es vllt an einer definierten Stelle auf dem Bildschirm ?

/edit in der config file war die Startlocation mit 2260 zu 86 eingestellt Oo.
somit behoben jetzt

20.12.2011 - 08:09 Uhr

kann zwar nicht mit kommazahlen umgehen aber sonst ganz nett...
wie wärs denn das Ganze im Windows Note Style zu machen und dann enifach nur alle 5 seks in vordergrund zu setzen. wäre dann nicht ganz soooo auffällig.

06.12.2011 - 09:44 Uhr

Konsolen Layout Puffer auf aktuelle Bildschirmauflösung setzen ?

Damit bekommst du zwar kein direktes "Vollbild" aber hast den Ganzen Bildschirm abgesehen von der Leiste/Windows Bar mit der Konsole ausgefüllt.
Die Konsole ist doch unter Win7/Vista doch sowieso nur ein emuliertes Dos Fenster mit normaler Winform 'Geschwindigkeit' oder irre ich mich da ?

Achja:
Du kannst auch einfach die xp graka Treiber installieren dann geht der Vollbildmodus wieder... musst dann aber auf die ganzen Visuellen Spielerein von Vista verzichten und ggf. Probleme in Kauf nehmen.