Laden...
X
Xzelsius myCSharp.de - Member
App- Informatiker/Lehrling Schweiz Dabei seit 16.10.2008 92 Beiträge
Benutzerbeschreibung
Solltet ihr Fragen an mich haben, könnt ihr mir gerne eine PN machen!

Forenbeiträge von Xzelsius Ingesamt 92 Beiträge

17.08.2011 - 14:55 Uhr

Hallo michlG,

Habe etwas vergessen:

Ich möchte auf meinem alten Lapi das Tool laufen lassen und vom anderen Rechner aus über das Tool an die Daten kommen!
Das ganze mit WCF.. ist aber nebensächlich.

Wichtig ist mir eher ob es in C#.Net die möglichkeit bereits gibt? Oder ob ich meine eigene Variante versuchen soll.

17.08.2011 - 14:35 Uhr

Hallo zusammen,

Kleine Information vorab: Der FileZilla FTP Server binhaltet ein solches System wie ich es möchte.

Mein Ziel ist es eine virtuelle Ordnerstruktur zu haben welche mit dem lokal Dateisystem verknüpft ist.

Wie ist das gemeint? Siehe angehängtes Bild.

PS: Ich möchte ein Verwaltungs- Tool für meine Daten erstellen, die Daten sind aber auf mehreren Platten, bzw. Memory Sticks oder Netzwerk- Pfaden verteilt. Die oben genannten Filme dienen nur als Beispiel!

Gibt es so ein System bereits? OpenSource?
Ich bin bereits dran selber etwas zu kreieren, jedoch weiss ich nicht ob mein Idee korrekt ist.

Besten Dank für eine Antwort!

27.04.2011 - 16:12 Uhr

Bitteschön 😃

27.04.2011 - 16:10 Uhr

Was ist es genau?
Dies ist eine selbstgezeichnete ProgressBar. Warum ich dieses "Projekt" gemacht hab ist weil die Windows-ProgressBar keine Fortschrittsanzeige als Text besitzt.

Meine Variante ist vielleicht nicht die schönste aber sie erfüllt meine Anforderungen.

Die "IllusionProgressBar" (so hab ich sie getauft) befindet sich als Source im ZIP.

Wie wird sie gebraucht?


IllusionProgressBar progBar = new IllusionProgressBar();
// Oder via Visual Studio Designer
// Dann müssen nur noch die gewünschten Eigenschaften gesetzt werden (wie bei einer normalen ProgressBar)

Wie immer -> Macht damit was ihr wollt 😃
Wenn ihr Verbesserungen habt so meldet diese doch!

PS: Evtl. flackert die ProressBar.. DoubleBuffered = True auf der Form könnte helfen 😉

Schlagwörter: Progressbar, Anzeigetext, Prozentsatz

19.04.2011 - 15:43 Uhr

Voilà

19.04.2011 - 15:41 Uhr

Da mir für kurze Zeit langweilig war kam ich auf die Idee einen animierten WinForm-Hintergrund zu erstellen, welcher nicht flackert und nicht CPU-Lastig ist.

Was ist es genau?
Auf dem ganen Form-Hintergrund werden "leuchtende" Sechsecke (Hexagon) gezeichnet. Diese können durch einige Properties konfiguriert werden, so dass sie Beispielsweise pulsierend sind.

Am besten ihr Testet dies kurz mit der TestApplication.exe welche im ZIP vorhanden ist.

Die "IllusionForm" (so hab ich meine Form getauft) befindet sich in der DLL.

Wie wird sie gebraucht?


public partial class MyForm : IllusionFramework.Forms.IllusionForm
{
// .... Dann müssen nur noch Einstellungen via Eigenschaften-Browser oder Code gemacht werden.
}

Der Source-Code liegt bei. Macht damit was ihr wollt 😃
Wenn ihr Verbesserungen habt so meldet diese doch!

Schlagwörter: Hexagon, WinForm, animiert, pulsierend

31.01.2011 - 08:17 Uhr

8o

Danke! Ich werde mir dies mal richtig durchschauen!

Ich habe es nur für einen einfachen Request gebraucht. Hab auf einem Webserver eine PHP-Klasse welche mir die Posts/Gets richtig auswertet.

Werde mal schauen was ich bei meinen KLEINEN Funktionen selbst verbessern kann!

Aber sicherlich danke für die Tipps!

29.01.2011 - 16:24 Uhr

Beschreibung:

Mit diesen beiden Funktionen könnt ihr Get & Post Request an einen Webserver / URL ausführen!
Sie haben evtl. noch Verbesserungspotential doch sie hauen beide hin!

Wenn jemand einen Fehler entdeckt bitte melden! Nehme auch gerne Kritik entgegen!



public static string Post(string url, Dictionary<string, string> args)
{
   HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);

   ASCIIEncoding encoding = new ASCIIEncoding();

   string postData = string.Empty;
   foreach (KeyValuePair<string, string> valuePair in args) {
      if (postData != string.Empty) postData += "&";

      postData += string.Format("{0}={1}", valuePair.Key, valuePair.Value);
   }
   byte[] data = encoding.GetBytes(postData);

   webRequest.Method = "POST";
   webRequest.ContentType = "application/x-www-form-urlencoded";
   webRequest.ContentLength = data.Length;

   Stream stream = webRequest.GetRequestStream();
   stream.Write(data, 0, data.Length);
   stream.Close();

   WebResponse webResponse = webRequest.GetResponse();
   StreamReader streamReader = new StreamReader(webResponse.GetResponseStream());

   string responseFromServer = streamReader.ReadToEnd();

   streamReader.Close();
   webResponse.Close();

   return responseFromServer;
}

public static string Get(string url, Dictionary<string, string> args)
{
   string parameters = string.Empty;
   foreach (KeyValuePair<string, string> valuePair in args) {
      if (parameters != string.Empty) parameters += "&";

      parameters += string.Format("{0}={1}", valuePair.Key, valuePair.Value);
   }

   url += string.Format("?{0}", parameters);

   HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);

   WebResponse webResponse = webRequest.GetResponse();
   StreamReader streamReader = new StreamReader(webResponse.GetResponseStream());

   string responseFromServer = streamReader.ReadToEnd();

   streamReader.Close();
   webResponse.Close();

   return responseFromServer;
}

Schlagwörter: Http, Get, Post, Request, Web

07.12.2010 - 14:29 Uhr

Hier mit allen möglichen TextAlign's

07.12.2010 - 14:28 Uhr

Guten Nachmittag!

Ich habe ein kleines Problem! Ich bin dran, ein "extended" Label zu erstellen.
Das Ziel dabei ist, das der Text des Labels LEUCHTEN kann! Die Farbe kann selbst gewählt werden!

Dies klappt soweit ohne Probleme! (Anhang 1)
Jedoch habe ich Probleme mit dem TextAlign! (Anhang 2)

Ich kann zwar den TextAlign richtig berechnen, jedoch stimmt die Position des Textes nicht mehr mit meiner Berechnung!

Meine Frage nun: Kann mir jemand helfen, damit die Position dann auch stimmt? Oder seht jemand was für ein Fehler ich mache?

Hier mein Code:


using System;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Text;
using System.Windows.Forms;

namespace IllusionLibrary.Cotrols
{
public class ExtendedLabel : Label
{
#region Member

/// <summary>
/// Glow-Farbe
/// </summary>
private Color m_GlowColor;

#endregion

#region Konstruktor

/// <summary>
/// Erstellt ein neues ExtendedLabel
/// </summary>
public ExtendedLabel()
{
this.m_GlowColor = Color.Cyan;
}

#endregion

#region Properties

/// <summary>
/// Glow-Farbe
/// </summary>
[Browsable(true), Category("Extended-Label"), Description("Glow-Farbe (Leuchtfarbe)"), DefaultValue(0)]
public Color GlowColor
{
get { return this.m_GlowColor; }
set
{
this.m_GlowColor = value;
Refresh();
}
}

#endregion

#region Override: OnPaint

/// <summary>
/// Überschreibt OnPaint
/// </summary>
/// <param name = "e">PaintEvent-Argumente</param>
protected override void OnPaint(PaintEventArgs e)
{
Bitmap bitMap = new Bitmap(this.Width/5, this.Height/5);
GraphicsPath graphicsPath = new GraphicsPath();
Graphics graphics = Graphics.FromImage(bitMap);
Matrix matrix1 = new Matrix(1.0f/5, 0, 0, 1.0f/5, -(1.0f/5), -(1.0f/5));
Pen pen = new Pen(Color.FromArgb(36, this.m_GlowColor.R, this.m_GlowColor.G, this.m_GlowColor.B), 3);

graphicsPath.AddString(this.Text, this.Font.FontFamily, Convert.ToInt32(this.Font.Style),
this.Font.SizeInPoints,
new Point(this.Width / 2, this.Height / 2),
this.GetTextFormat());

graphics.SmoothingMode = SmoothingMode.HighQuality;
graphics.Transform = matrix1;

graphics.DrawPath(pen, graphicsPath);
graphics.FillPath(new SolidBrush(this.m_GlowColor), graphicsPath);

graphics.Dispose();

e.Graphics.Transform = new Matrix(1, 0, 0, 1, 0, 0);
e.Graphics.SmoothingMode = SmoothingMode.HighQuality;
e.Graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;

e.Graphics.DrawImage(bitMap, ClientRectangle, 0, 0, bitMap.Width, bitMap.Height, GraphicsUnit.Pixel);
e.Graphics.FillPath(new SolidBrush(this.ForeColor), graphicsPath);

graphicsPath.Dispose();
}

#endregion

private StringFormat GetTextFormat()
{
StringFormat format = null;
switch(this.TextAlign)
{
case ContentAlignment.TopLeft:
format = new StringFormat {Alignment = StringAlignment.Far, LineAlignment = StringAlignment.Far};
break;

case ContentAlignment.TopCenter:
format = new StringFormat { Alignment = StringAlignment.Center, LineAlignment = StringAlignment.Far };
break;

case ContentAlignment.TopRight:
format = new StringFormat {Alignment = StringAlignment.Near, LineAlignment = StringAlignment.Far};
break;

case ContentAlignment.MiddleLeft:
format = new StringFormat {Alignment = StringAlignment.Far, LineAlignment = StringAlignment.Center};
break;

case ContentAlignment.MiddleCenter:
format = new StringFormat { Alignment = StringAlignment.Center, LineAlignment = StringAlignment.Center };
break;

case ContentAlignment.MiddleRight:
format = new StringFormat { Alignment = StringAlignment.Near, LineAlignment = StringAlignment.Center };
break;

case ContentAlignment.BottomLeft:
format = new StringFormat {Alignment = StringAlignment.Far, LineAlignment = StringAlignment.Near};
break;

case ContentAlignment.BottomCenter:
format = new StringFormat { Alignment = StringAlignment.Center, LineAlignment = StringAlignment.Near };
break;

case ContentAlignment.BottomRight:
format = new StringFormat { Alignment = StringAlignment.Near, LineAlignment = StringAlignment.Near };
break;

default:
throw new ArgumentOutOfRangeException();
}

if (this.RightToLeft == RightToLeft.Yes)
{
format.FormatFlags |= StringFormatFlags.DirectionRightToLeft;
}

format.HotkeyPrefix = HotkeyPrefix.Hide;

if (this.AutoSize)
{
format.FormatFlags |= StringFormatFlags.MeasureTrailingSpaces;
}

return format;
}
}
}

06.12.2010 - 09:59 Uhr

http://www.bobpowell.net/halo.htm

Sollte glaube ich das sein was du suchst 😉

PS: Ja ich weiss das der Startbeitrag vor 5 Jahren war, aber jeder verdient eine Antwort 😉

19.08.2010 - 09:56 Uhr

So danke erst mal euch beiden!

Ich versuche mich mit **Khalid **Variante. Scheint gut zu kommen.

Ich melde mich falls es in der einen geklappt hat. Muss dann 22 Stored Procedures bearbeiten die für den Monatsabschluss sind.

[Edit]

So, das ganze hat mit Khalids Variante geklappt. Danke 1000x 😃

19.08.2010 - 08:55 Uhr

Verwendetes Datenbanksystem: MS SQL 2005

Ich hoffe ich bekomme hier einen Input. Habe breits in 2 weiteren Foren keine Antwort bekommen.

Mein Problem ist folgendes:

Bei einem Monatsabschluss wird als Parameter ein "DAU_YEAR" übergeben. Mit diesem
DAU_YEAR wird nachher für jeden Monat den Umsatz, Fakturierungen usw. aus der DB gelesen.

Ich habe jetzt den Auftrag, das ganze mit einem Von & Bis Datum zu versehen. Doch wie soll das bei so einem Query gehen:

(Fakturierungen laufender Monat)


with JanRE(Total) AS (SELECT Sum(T0.DocTotal) FROM OINV T0 WHERE T0.DocDate>='01.01.'+@DAU_YEAR AND T0.DocDate<=(CASE WHEN Convert(nvarchar(10),GetDate(),102)>@DAU_YEAR+'.01.31' THEN @DAU_YEAR+'.01.31' ELSE Convert(varchar(10),GetDate(),102) END)),
JanGUT(Total) AS (SELECT Sum(T0.DocTotal) FROM ORIN T0 WHERE T0.DocDate>='01.01.'+@DAU_YEAR AND T0.DocDate<=(CASE WHEN Convert(nvarchar(10),GetDate(),102)>@DAU_YEAR+'.01.31' THEN @DAU_YEAR+'.01.31' ELSE Convert(varchar(10),GetDate(),102) END)),
FebRE(Total) AS (SELECT Sum(T0.DocTotal) FROM OINV T0 WHERE T0.DocDate>='02.01.'+@DAU_YEAR AND T0.DocDate<=(CASE WHEN Convert(nvarchar(10),GetDate(),102)>@DAU_YEAR+'.02.28' THEN @DAU_YEAR+'.02.28' ELSE Convert(varchar(10),GetDate(),102) END)),
FebGUT(Total) AS (SELECT Sum(T0.DocTotal) FROM ORIN T0 WHERE T0.DocDate>='02.01.'+@DAU_YEAR AND T0.DocDate<=(CASE WHEN Convert(nvarchar(10),GetDate(),102)>@DAU_YEAR+'.02.28' THEN @DAU_YEAR+'.02.28' ELSE Convert(varchar(10),GetDate(),102) END)),-- usw... für jeden Monat!

(Query zur besseren Ansicht herauskopieren)

Kann mir da jemand helfen?

Als Datum per Parameter bekomme ich z.B. 04.03.2010 - 15.05.2010

Danke für jegliche Hilfe !

18.08.2010 - 15:41 Uhr

=) Danke erstmal 😃

Naja wie gesagt, wurde nebenbei errichtet. Ich programmiere seit 1.5 Jahren und das nicht im grossen Stil. Danke für die Inputs! Werde es nun soweit anpassen damits bisschen besser läuft 😃

18.08.2010 - 14:06 Uhr

Beschreibung:

Einfache Klasse zum schreiben und lesen von "Config" Files. Idee dahinter ist die Variante mit *.ini Dateien.

Ich hab kurzerhand was eigenes geschrieben und hoffe irgendwer hier kann daraus was nehmen oder braucht es mal. Es ist sicherlich verbesserungsbedürftig, jedoch hab ich das so neben bei gemacht.


#region Klass: ConfigFile
/// <summary>
/// Config file class
/// </summary>
public class ConfigFile
{
#region Members
/// <summary>
/// File path
/// </summary>
private String m_Path;

/// <summary>
/// Property table
/// </summary>
private Hashtable m_Properties;
#endregion

#region Constructor
/// <summary>
/// Creates a new ConfigFile instance
/// </summary>
public ConfigFile()
{
this.m_Path = String.Empty;
this.m_Properties = new Hashtable();
}
#endregion

#region Functions

#region Load
/// <summary>
/// Loads the config file from the specific path
/// </summary>
/// <param name="path">File path</param>
public void Load(String path)
{
try
{
// Check for file
if (!File.Exists(path))
throw new Exception("File does not exist! " + path);

// Save file path
this.m_Path = path;

// Creates xml document
XmlDocument xmlDoc = new XmlDocument();

// Loads xml from file
xmlDoc.Load(path);

// Settingselement
XmlElement rootElement = xmlDoc["Settings"];

// Delete property list
this.m_Properties.Clear();

// Reads all elements
foreach (XmlNode node in rootElement.ChildNodes)
{
// Adds property
this.m_Properties.Add(node.Name, node.InnerText);
}
}
catch (Exception ex)
{
// TODO
}
}
#endregion

#region ReLoad
/// <summary>
/// Reloads the config file
/// </summary>
public void ReLoad()
{
try
{
if (this.m_Path != String.Empty)
{
this.Load(this.m_Path);
}
else
throw new Exception("No valid file path found!";);
}
catch (Exception ex)
{
// TODO
}
}
#endregion

#region Save
/// <summary>
/// Saves the config file
/// </summary>
public void Save()
{
try
{
if (this.m_Path != String.Empty)
{
this.Save(this.m_Path);
}
else
throw new Exception("No valid file path found!";);
}
catch (Exception ex)
{
// TODO
}
}
#endregion

#region Save(path)
/// <summary>
/// Saves the config file to the specific path
/// </summary>
/// <param name="path">File path</param>
public void Save(String path)
{
try
{
// Creates xml document
XmlDocument xmlDoc = new XmlDocument();

// Creats declaration node
XmlNode declNode = xmlDoc.CreateNode(XmlNodeType.XmlDeclaration, "", "";);
xmlDoc.AppendChild(declNode);

// Settingselement
XmlElement rootElement = xmlDoc.CreateElement("", "Settings", "";);
xmlDoc.AppendChild(rootElement);

// Creates the Elements
foreach (String key in this.m_Properties.Keys)
{
// Creates the single Element
XmlElement appendElement = xmlDoc.CreateElement("", key, "";);
appendElement.InnerText = this.m_Properties[key].ToString();

// Add to document
xmlDoc["Settings"].AppendChild(appendElement);
}

// Save it
xmlDoc.Save(path);

// Save file path
this.m_Path = path;
}
catch (Exception ex)
{
// TODO
}
}
#endregion

#region AddProperty
/// <summary>
/// Adds an property
/// </summary>
/// <param name="name">Name</param>
public void AddProperty(String name)
{
try
{
// Check Var
Boolean bExists = false;

// Check if allreaddy exists
foreach (String key in this.m_Properties.Keys)
if (key == name)
bExists = true;

if (!bExists)
{
// Add property with null object
this.m_Properties.Add(name, null);
}
else
throw new Exception("Property " + name + " allready exist!";);
}
catch (Exception ex)
{
// TODO
}
}
#endregion

#region RemoveProperty
/// <summary>
/// Removes an property
/// </summary>
/// <param name="name">Name</param>
public void RemoveProperty(String name)
{
try
{
// Check Var
Boolean bExists = false;

// Check if allreaddy exists
foreach (String key in this.m_Properties.Keys)
if (key == name)
bExists = true;

if (bExists)
{
// Remove property
this.m_Properties.Remove(name);
}
else
throw new Exception("Property " + name + " does not exist!";);
}
catch (Exception ex)
{
// TODO
}
}
#endregion

#region SetPropertyValue
/// <summary>
/// Sets the value of an property
/// </summary>
/// <param name="name">Property name</param>
/// <param name="value">Value</param>
public void SetPropertyValue(String name, String value)
{
try
{
// Check Var
Boolean bExists = false;

// Check if allreaddy exists
foreach (String key in this.m_Properties.Keys)
if (key == name)
bExists = true;

if (bExists)
{
// Set property value
this.m_Properties[name] = value;
}
else
throw new Exception("Property " + name + " does not exist!";);
}
catch (Exception ex)
{
// TODO
}
}
#endregion

#region GetPropertyValue
/// <summary>
/// Gets the value of an property
/// </summary>
/// <param name="name">Property name</param>
/// <returns>Value</returns>
public String GetPropertyValue(String name)
{
try
{
// Check Var
Boolean bExists = false;

// Check if allreaddy exists
foreach (String key in this.m_Properties.Keys)
if (key == name)
bExists = true;

if (bExists)
{
// Return property value
return this.m_Properties[name].ToString();
}
else
throw new Exception("Property " + name + " does not exist!";);
}
catch (Exception ex)
{
// TODO
}

return String.Empty;
}
#endregion

#endregion
}
#endregion

Hier noch wie man es gebrauchen kann:


ConfigFile conf = new ConfigFile();

conf.AddProperty("SourcePath";);
conf.AddProperty("TargetPath";);
conf.AddProperty("Intervall";);

conf.SetPropertyValue("SourcePath", @"C:\Temp\Source";);
conf.SetPropertyValue("TargetPath", @"C:\Temp\Target";);
conf.SetPropertyValue("Intervall", "10";);

conf.Save(@"C:\Temp\settings.ini";);

Greets und Have fun 😃

[Edit]

  1. Sorry für die #region
  2. TODO = Error Handling !

Schlagwörter: Config, File, INI, Settings

14.06.2010 - 13:20 Uhr

Das geht auch deutlich einfacher

Also deines zu verstehen ist ein bisschen schwieriger als meins. Also rein von dem her 😉 Ich wollte jemand einen einfachen, gut zu verstehenden weg geben 😉


protected override void WndProc(ref Message msg)
{
if (msg.Msg == 0x84) // WM_NCHITTEST
msg.Result = (IntPtr)0x02; // HTCAPTION
else
base.WndProc(ref msg);
}

Dazu sag ich nur: Meins läuft sicher stabiler 😉 Da ich mei bir nur die Form verschiebe und nicht das Ereignis blockiere, bzw. manipuliere 😉

07.05.2010 - 08:26 Uhr

=) Ich hab es ja momentan so:

DLL

alle Methoden, Enums, Sturcts, Classen und so weiter sind Privat & Internal.

Die Funktion Start() ist so deklariert


public abstract partial class Environment
{
public static void Start(String[] args)
{
// .. Do Something
}
}

Die Exe greifft dann auf diese Funktion zu. Was ich wollte, ist das ich via DllImport genau auf diese Funktion zugreiffen kann.

Aber alles andere nicht verfügbar ist. Aber wenn es zu kompliziert ist lasse ich es, da diese Version auch funzt!

07.05.2010 - 08:17 Uhr

Die DLL ist mit C#.Net 4.0 geschrieben. Und die Anwendung die auf die DLL zugreifen soll ist momentan auch in C#.Net 4.0. Jedoch soll dies auch aus anderen Sprachen (C++, Delphi und so weiter) möglich sein.

Die DLL soll aber nur eine Funktion freigeben --> Start(String[] args)

Alle anderen Inhalte sollen veborgen bleiben (leider nicht gegen Disassembler ;-])

05.05.2010 - 15:53 Uhr

Okey damit gehts. Jedoch frage ich mich warum die andere Variante nicht geht ? hmmm.

05.05.2010 - 15:36 Uhr

Kannst du mir das genauer erklären ?(

[Edit]

Ich möchte letztendlich auf diese weise auf meine DLL-Hauptfunktion zu greiffen:


[DllImport("myDLL.dll", EntryPoint="Start")]
private static extern void Start(String[] args);

05.05.2010 - 15:30 Uhr

Ich habe eine Frage:

Ist es mit C# möglich eine DLL zu schreiben, welche nur via P/Invoke, bzw.

System.Runtime.InteropServices.DllImport()

angesprochen werden kann?

Ich habe eine DLL (x tausen Zeilen Code) und möchte nur einen Einspringspunkt

static void Start(String[] args)

gebrauchen. Jedoch will ich diesen nicht als "public" deklarieren da für alle anderen die Funktionen der DLL versteckt bleiben sollen.

Kann mir da jemand helfen ?

30.04.2010 - 19:42 Uhr

Beschreibung:

Du hast eine Windows-Form ohne Rahmen und ohne Titelleiste und willst diese aber trotzdem verschieben können?

Hier die Lösung dazu [Code ist selbsterklärend wegen Kommentaren]:


// Events setzen
this.MouseMove += new MouseEventHandler(this.FormMouseMove);
this.MouseDown += new MouseEventHandler(this.FormMouseDown);

#region Handler für das Verschieben der Form
/// <summary>
/// Maus-Position im Bildschirm
/// </summary>
private Point mousePosition;

/// <summary>
/// Verarbeitet das MouseDown-Event
/// </summary>
/// <param name="sender">Sender</param>
/// <param name="e">Mouse-Event Argumente</param>
private void FormMouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
this.mousePosition = new Point(-e.X, -e.Y);
}

/// <summary>
/// Verarbeitet das MouseMove-Event
/// </summary>
/// <param name="sender">Sender</param>
/// <param name="e">Mouse-Event Argumente</param>
private void FormMouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
// Wenn der Linke Button gedrückt ist
if (e.Button == MouseButtons.Left)
{
// Maus-Position auf dem Control
Point mousePos = Control.MousePosition;

// Verschiebt den Punkt um den angegebenden Betrag
mousePos.Offset(this.mousePosition.X, this.mousePosition.Y);

// Neue Position setzen
this.Location = mousePos;
}
}
#endregion

Schlagwörter: Form, Titelleiste, Verschieben

14.04.2010 - 08:29 Uhr

Hallo herbivore,

Danke für die Verweisung auf den Thread. Weiss jetzt wie ich es machen kann!

Danke und einen schönen Tag!

MFG
Xzelsius

13.04.2010 - 10:54 Uhr

Jetzt wirds zu viel 😛

Ich mach mich erst mal schlau wie ich mit C# ein post / get machen kann..

Aber danke mal hier !

13.04.2010 - 10:31 Uhr

Das heisst ich muss doch den Quelltext nehmen und diesen nach den entsprechenden controls durchsuchen ?

Beispiel-Code von Google

<input autocomplete="off" onblur="google&&google.fade&&google.fade()" maxlength="2048" name="q" size="55" class="lst" title="Google-Suche" value=""/><br/><input name="btnG" type="submit" value="Google-Suche" class="lsb"/><input name="btnI" type="submit" value="Auf gut Glück!" class="lsb"/>

Wie würde ich dann hier den Button (input) "Google-Suche" anklicken ?, bzw. Aktivieren ?

MFG

13.04.2010 - 10:13 Uhr

Hallo zusammen,

Ich wollte fragen ob es möglich ist, mit C# auf einer Website (.Net Webcontrol oder sonstiges) einen Butten, oder sonstiges Anzuwählen. Oder inhalte aus einer Tabelle, etc zu lesen ?

Ich weiss das ich den Source-Code herunterladen und auswerten könnte, jedoch denke ich das es eine einfachere Variante für das Navigieren gibt.

Weiteres Problem ist das die Website Dynamisch sein kann, d.h. der URL ist fast immer anderst. (Forum, Blog seite etc)

Für Stichworte, Tipps & alle Antworten bin ich euch sehr dankbar!

MFG

xzelsius

24.12.2009 - 10:06 Uhr

I THINK I LOVE YOU 👍 😁

Es klappt, danke viel mals!

MFG

Xzelsius

24.12.2009 - 09:42 Uhr

Hallo zusammen,

Ich weiss nicht ob das HTML, Webserver oder Datei basiert ist, aber hier mein Problem:

Linux Webserver (PHP, etc)

Url: http://www.vote-for.crykillers.ch/

ASP.Net Webserver (ASP & HTML)

Url: http://92.104.242.171

Wenn ich den Linux URL eingebe wird die Seite Angezeigt ohne das man eine "index.html" oder "default.php" oder sonst was angeben muss.

Gebe ich jedoch den ASP.Net URL ein so kommt ein Seitenfehler 😦 Ich muss da immer 92.104.242.171/index.html eingeben.

Ist das HTML Code den ich schreiben muss oder eine Webserver einstellung oder muss ich die Datei nur richtig benennen ?

MFG

Xzelsius

PS: Frohe Weihnachten!

23.12.2009 - 11:55 Uhr

also weblica ist mal verdammt geil ! muss ich echt sagen! fasziniert.. ich hab bisher meine websites immer selber gschrieben mit Dreamweaver und VS2008.. aber weblice übertrifft ja mal alles was ich bisher gebastelt habe 😃

22.12.2009 - 15:59 Uhr

Die gleiche Frage stelle ich mir auch schon lange. Wäre auch froh wenn ein paar User ihre Meinung kundtun! Danke!

22.12.2009 - 15:48 Uhr

Ich werde heute abend nochmals den SQL-Server sauber und korrekt installieren. Ich glaube ich habe da schon etwas verbockt. Den selbst über das Lokale Netzwerk komme ich nicht auf die Instanz.

Das mit dem "\" war ein Flüchtigkeitsfehler hier im Forum, den mein Visual Studio mekert ja sofort wenn was nicht stimmt 😄

Aber danke schon mal für deine Hilfe!

Melde mich wieder

MFG

Xzelsius

22.12.2009 - 11:52 Uhr

Also der Rechner steht bei mir zu hause.

Mein Router ist so eingestellt das er jegliche anfragen an die Statische-IP Adresse "92.104.242.171" an die Interne IP 192.168.1.200 weiterleiten soll.

Somit wird jede anforderung zuerst mal da landen. Ich hab die Firewall so konfiguriert das FTP, HTTP, (Crysis Game Server) und viele andere (RDP etc.) erlaubt werden.

Ich kann mal versuchen diese beiden Ports frei zu geben. Meld mich wenn es nicht klappt.

22.12.2009 - 11:46 Uhr

Allgemeine Informationen:

Verwendetes Datenbanksystem: Microsoft SQL-Server 2008 Enterprise
**Hostsystem: **Windows Server 2008 R2 Data & Webcenter

Mein FTP "ftp://92.104.242.171" und die Website "http://92.104.242.171/default.aspx" funktionierten.

Der IIS-Webdienst ist nun aber wieder OFFLINE geschalten.

SQL-Instanz Name "MSSQL" und Login is Mixxed (also Server und Windows)

Mein Problem:

Warum geht es nun aber nicht über das Internet "92.104.242.171\MSSQL" zu verbinden ?

Hier mein COnnection-String


// String-Variable deklarieren
String connectionString = String.Empty;
// Server setzen
connectionString += "Data Source=92.104.242.171\MSSQL;";
// Benutzer setzen
connectionString += "User ID=sa;";
// Passwort setzen
connectionString += "Password=xxxx;"; // xxxx anstelle des richtigen Passwortes ;-)
// Start datenbank setzen
connectionString += "Initial Catalog=master;";

Dieser Code ergiebt:

Data Source=92.104.242.171\MSSQL; User ID=sa; Password=xxxx; Initial Catalog=master;

Kann es sein das der Connection String Fehler haft ist =?

Ich bin ratlos. Oder ist eine Verbindung über das Internet gar nicht möglich ?

Ich habe es auch über das Server Management Studio versucht. Er gibt den gleichen Fehler wie meine Anwendung 😦

MFG
Xzelsius

22.12.2009 - 08:13 Uhr

Noch 2.5 Tage und dann hab ich auch endlich Urlaub!

Frohe Festtage!

30.11.2009 - 11:41 Uhr

und was machst du bei einem 404 error?

webrequest (im speziellen fall eher HttpWebRequest) ist genau das richtige.

Sollte der Linkt vehlerhaft sein, so wird der User aufgefordert einen Korrekten oder keinen Einzugeben (er kann dann das Textfeld nicht verlassen).

Sollte keine Internetverbindung da sein, wird der User darauf aufmerksam gemacht, indem eine "Statusbar" Nachricht ausgegeben wird.

Sollte eine Internetverbindung da sein, aber die seite nicht erreichbar sein, wird der user auch via Statusbar benachrichtig.

Eine Art Gültigkeits Check 😄

Weiss nicht ob sowas überflüssig ist aber ich würde die herausforderung gerne meistern ;D

30.11.2009 - 11:32 Uhr

tja... pech 😉

Problem ist nicht das ich nicht Googlen möchte, sondern ich kann nicht. Seite ist aus unerklärlichen Gründen bei uns in der Schule gesperrt ? 😦

die syntax-gültigkeit eines links überprüft man üblicherweise mit regex. passende pattern findest du ausreichend auf google.

den rest kannst du mit der Webrequest klasse herausfinden. die düfte dir auch eine passende exception oder ähnliches liefern, wenn keine verbindung möglich ist. der response der abfrage liefert dir den rest.

Danke für die schnelle Hilfe ! Werd aber leider bis am Abend warten müssen.

Die Webrequest werd ich gleich prüfen.

Meine erste überlegung --> PING . Doch der gibt glaub ich keinen brauchbaren ERROR. Versuch wirds zeigen!

Bis gleich!

30.11.2009 - 11:18 Uhr

So nachdem ich jetzt lange ohne die gute Hilfe hier ausgekommen bin stehe ich wieder an.

Ich bin an einem Projekt (von der Schule aus) dran. Es ist ein Datenbank Programm auf XML-Ebene. Dies bereitet mir keine Probleme.

Was mir aber probleme b 😦ereitet:


private void p_EDT_WebSite_Validating(object sender, CancelEventArgs e)
{
            
}

Ich möchte, dass wenn man das Textfeld "p_EDT_WebSite" verlässt, eine Hyperlinktprüfung gemacht wird.

Zum einen ob der Linkt überhaupt gültig wäre, zum anderen ob die Website, bzw. der Linkt abrufbar ist. Es soll aber zwischen "KEINE INTERNET-VERBINDUNG" und dem Seiten Error xxx (also wenn die Seite nicht vorhanden ist) unterschieden werden.

Ich denke dabei brauche ich das

System.Web;
oder
System.Net;

Ich stehe an und weiss nicht weiter. Wäre froh wenn mir jemand auf die Sprünge helfen kann. Ich brauch kein Code sondern nur Stichworte!

Danke schon im voraus!

PS: bitte keine GOOGLE Verweise 😁

29.06.2009 - 14:51 Uhr

Hallo Zusammen!

Ich bin kurz vor dem Abschluss eines kleinen Mediaplayers welcher auf noch so schwachen Computern zum laufen gebraucht werden kann. Nur steh ich auch vor einem Problem:

Ich habe einen "Ordner hinzufügen" und einen "Song hinzufügen" Button.

Ich habe auch eine ListView in welchem die Hinzugefügten Datein und deren Dateiinformationen angezeigt werden sollen. z.B. Song Titel, Album, Interpret, Länge, Grösse und Pfad.

Problem: Wie lese ich diese Atribute aus?


String[] Files = Directory.GetFiles(FolderPath, "*.wma");
foreach(string FileName in Files)
Song.Add(FileName); // ist eine List<string>

String[] Files = Directory.GetFiles(FolderPath, "*.mp3");
foreach(string FileName in Files)
Song.Add(FileName); // ist eine List<string>


foreach (string SongPath in Song)
{
// Hier sollen nun die Songdateiinformationen ausgelesen werden.
}

Angehängtes Bild zeigt welche Informationen ich genau meine:

Wäre euch für eure Hilfe sehr dankbar!

26.06.2009 - 16:27 Uhr

Bei mir gibt es die gleichen Fehler, die ich auch oben schon genannt habe(1mb zu wenig ram, cpu geschwindigkeit falsch).

Dann hatte ich noch was vergessen. Es heißt doch Architektur und nicht rchidektur, oder 😄

Außerdem hat meine süsse kleine Ramdisk nach deinem Programm keine größe. Sie ist eigendlich 1gig groß.

Gruß pdelvo

Also was die RAMDISK betrifft kann ich nicht viel machen, ich lese die Daten aus der WMI Heraus. Überprüfe mal ob da der wert überhaupt vorhanden ist!

Die Max. Proz speed muss ich bei mir zu hause anschauen..

@ArchiTektur: ist geändert

Was den RAM betrifft lese ICH die genauen WMI daten herau. Ich denke andere Programme runden dies auf die MÖGLICHEN WERTE! (4096, 1024, 2048, 8192, etc....)Ich nicht! Das könnt ich auch noch machen..

26.06.2009 - 16:06 Uhr

Hab da mal was gebastelt!

Würde es wieder gut finden wenn 1-2 Personen dies Testen und mir rückmeldung geben!

25.06.2009 - 16:16 Uhr

Anstehende Punkte NEU*Help einbauen 😉 *About einbauen *Mehrere Bildschirme erfasse *Mobile Grafikkarten <-- Proble *Automatisches öffnen der HTML Datei *Export als XML & PDF ermöglichen *Loadfunktion mit XML

Für weitere Punkte bitte meldenPS @ MAINFORM:Die Mainform wird jetzt fast leer sein 😉 Ist nich mehr viel drin. Hoffe ich werd bei all den Punkten auch ein wenig unterstützung bekommen! (Was XML und PDF anbelangt) Aber danke für die Tipps!

25.06.2009 - 16:01 Uhr

gut ein paar wenig funktionen oben im menü... pack da ihrgendwas sinlosses rein. anwedner müssen sich bei solchen tools immer machtlos und erschlagen fühlen! 😉

Wie meinst du etwas "sinnloses" ?

Das man mit dem Reflektor nciht weit kommt ? ^^

Ka ah was ich da rein basteln sollte -.-

25.06.2009 - 15:53 Uhr

Man könnte in den TreeView auch einen "LazyLoad" einbauen und die Einstellungen ganz weglassen (Export HTML kommt in das Menu).
Also bspw. Computer erst dann laden, wenn man auf das + drückt.
Dadurch vermeidet man ein mehrmaliges Laden und die gespürten Wartezeiten sinken drastisch.

Das ist ne fantastische idee! Ich glaub das werd ich gleich mal implementieren! Danke für den Tipp!

Errors found while checking this document as XHTML 1.0 Transitional!  
> Result: 4 Errors, 2 warning(s)

Hmm.. Weisst du gerade welche fehler ? ^^

Ich hab dies mit DreamWeaver gmeacht.. Ka ob der die Fehler erkennt. Und bin leider nur normaler HTML Scripter..

Ausserdem gibt er eine Fehlermeldung aus, wenn man beim SafeFileDialog auf Nein drückt.

Ist behoben.. habe bei "Nein" das Cancel nicht eingebaut -.-

25.06.2009 - 15:48 Uhr

Hallo Xzelsius!

Hab dir mal die dxdiag.txt angehängt.

lg FantasticZero

Hast du in deinem NoteBook 2x ATI MOBILITY RADEON X600 eingebaut?

Hmm.. Ich habe das gefühl das ich das "Anzeige" ding auf Mobile Grafikkarten abstimmen muss. Irgendwie haben die nicht die gleichen Werte. Den NULL kann eigentlich kein Problem sine


String NodeText = "";
if (Prop != null)
{
if ((Prop is Array) != true)
NodeText = PropName + ": " + Prop.ToString();
else
NodeText = PropName + ": ";
}
else
{
if ((Prop is Array) != true)
NodeText = PropName + ": --";
else
NodeText = PropName + ": ";
}
if (Prop is Array)
ArrayToNode(TempNode, (Array)Prop);

Wenn du willst gebe ich dir den ganzen Teil, welcher die "Anzeige" ausliest. Ich finde echt kein Fehler darin, da ich alle Classen gleich gebaut habe :S

Und alle anderen scheinen ja zu gehen?

25.06.2009 - 15:25 Uhr

Hallo Xzelsius!

Es funktioniert wieder alles bis auf "Anzeige" - das Objekt darf nicht Null sein - lautet die Fehlermeldung. Ansonsten top.

lg FantasticZero

Kannst du mir deine DirectX-Diagnose mal zukommen lassen. Vielleicht werde ich daraus schlau 😦

Ich hab was neues gebastelt! Muss nur noch mein SMTP von "crykillers.ch" klappen (switch.ch und hostpoint.ch sind nicht die schnellsten) -.-

Mal anhang anschauen 😉

25.06.2009 - 14:03 Uhr

du kannst bei jedem beliebigen mailserver, der smtp erlaubt, so deine nachrichten verschicken.

Ok danke!

25.06.2009 - 13:53 Uhr

Wenn ich das richtig verstehe kann ich bei meinem EIGENEN MAILSERVER


using System;
using System.Net;
using System.Net.Mail;

class MainClass
{
    public static void Main(string[] args)
    {
        SmtpClient client = new SmtpClient("mail.crykillers.ch", 25);

        client.Credentials =new NetworkCredential("support@crykillers.ch", "xxxxxxxxxxx");

        using (MailMessage msg = new MailMessage())
        {
            msg.From = new MailAddress("xxxxx@xxxxx.xxx");
            msg.Subject = "Report Bug @ 25.06.2009 13:55";

            msg.Body = "[Bug/Error Message]";            

            msg.To.Add(new MailAddress("support@crykillers.ch"));
            client.Send(msg);
        }
}
}

Würde das funktionieren?

25.06.2009 - 11:20 Uhr

Ich wäre schon interessiert, doch habe ich keine Ahnung von WPF!

25.06.2009 - 10:52 Uhr

Hallo liebe Community!

Ich wäre froh wenn ihr die Beta testen würdet! Ich hab von 3.0 auf 4.0 ca. 80% des Codes umgeschrieben, weiss bis jetzt nur das es bei mir läuft!

Wäre auch froh wenn ihr zu meinem "HTML" Export eine Rückmeldung machen würdet!

Hier mal die V4.0 Beta!