Hi,
ich habe jetzt schon ne weile gesucht aber nichts mit einer Lösung oder zumindest einem Grund gefunden, und zwar will ich auf einen Ftp Server zugreifen und bis jetzt nur die Files auf dem Ftp Server ausgeben, das funktioniert auch jedoch dauert dieser Vorgang bei mir 10-15 Sekunden, alle folgenden male in dieser Anwendung unter 1 Sekunde und bei anderen Leuten ist dieses erstmalige 15 Sekunden-Intervall nicht vorhanden, meine Freundinn hat das selbe Notebook wie ich und bei ihr dauert es auch nur 1 Sekunde (im gleichen Netzwerk). Sie benutzt Windows Vista 32-bit und ich benutze Windows 7 64-bit deswegen habe ich mir schon gedacht, das es irgendwie daran liegen könnte? Ausserdem wäre es ganz nett wenn mir jemand helfen könnte das ganze Asyncron zu machen, da ich das noch nicht ganz verstehe, das ist aber nur zweitrangig. Danke im Vorraus, hier mein Code:
FtpWebRequest request;
FtpWebResponse response;
public FTPClient(string FTPAdress, string Username, string Password)
{
if (FTPAdress.Split('/')[0].ToLower() != "ftp:")
FTPAdress = "ftp://" + FTPAdress;
request = (FtpWebRequest)FtpWebRequest.Create(FTPAdress);
request.Credentials = new NetworkCredential(Username, Password);
if (FtpWebRequest.DefaultWebProxy.Credentials != null)
request.Proxy = FtpWebRequest.DefaultWebProxy;
}
public string[] ListFiles()
{
request.Method = WebRequestMethods.Ftp.ListDirectory;
response = (FtpWebResponse)request.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream());
string[] list = sr.ReadToEnd().Replace("\r","").Split('\n');
sr.Close();
response.Close();
return list;
}
Zwergli schrieb:
es gibt die Visual Studio Shell, das ist dem Eclipse Konzept sehr ähnlich.
Okay. Es geht mir allerdings nicht um IDE Features, sondern um ein richtiges RCP-Konzept, mit dem sich komplette Anwendungen als Plugins nutzen/erstellen lassen.
C## schrieb:
_matze schrieb:
Dem Rechner angemessen wäre jedenfalls eher das VS6 anstatt VS2008...
Tja, wem sagst du das? Wenn Du ein C#-Plugin für Visual Studio 6 kennst, wär das ganz hilfreich. Aber ich bezweifle, dass es sowas gibt.
Oh, hab mal wieder vergessen, in welchem Forum ich mich aufhalte...
Meinst du, IndexOf arbeitet intern anders? Ich denke nicht, daß dort ein spezieller Such-Algorithmus verwendet wird.
Aber wenn du einen benutzten willst, dann schau mal bei http://de.wikipedia.org/wiki/String-Matching-Algorithmus
(du kannst dann natürlich auch direkt mit 'byte' anstatt 'char' arbeiten).
Ok wenn du mit C# arbeitest geh ich mal davon aus das du auch mit Visual Studio arbeiteste
Dort kannst du nämlich auch für jede Logik die du implementierst, ein eigenes Projekt zu deiner Solution hinzufügen.Womit du auch nochmal ne Trennung auf Projektebene schaffst.
Habs jetzt schon selbst gelöst, war im Prinzip ganz einfach:
// Datensatz löschen
_bsKonten.RemoveCurrent();
bResult = Konten.Update(_dsKonten);
// Fehlerkontrolle
if (bResult == false)
_[b]dsKonten.RejectChanges();[/b]
Trotzdem danke
Danke, ich hab's hingekriegt:
using (Graphics backBufferGraphics = Graphics.FromImage(BackBuffer))
{
backBufferGraphics.DrawImage(Background, 0, 0);
backBufferGraphics.DrawImage(Foreground, 0, 0);
}
e.Graphics.DrawImage(BackBuffer, 0, 0);
Noch eine zusätzliche Frage: Sollte man die Bitmap-Variablen manuell disposen? Ich hab mal irgendwas gehört, dass diese Grafikressourcen nur begrenzt zur Verfügung stehen oder so. Allerdings weiß ich nicht, ob sich das auch auf die normalen Bitmap-Variablen oder nur auf Graphics-Objekte bezieht. In der WinAPI konnte man ja zum Beispiel nahezu beliebig viele HBITMAPs haben, aber man sollte die HDCs sparsam, möglichst lokal, einsetzen. Wie ist das hier in .NET? Die Graphics-Objekte werden ja sowieso nur lokal erstellt und die kann ich mit using benutzen, da werden sie automatisch disposet. Aber muss ich bei den Bitmaps nach dem Benutzen auch Dispose() aufrufen oder ist es da unkritisch, irgendwann den Garbage Collector drüberlaufen zu lassen?
noch etwas:
vielleicht kann ich ja den desktop nach fenstern durchsuchen, die den string "ROMES" enthalten?!
und anschließend mir anschließend den class name geben lassen?
hat jemand einen tipp für mich, wie ich endlich zum ziel komme?