Hallo zusammen,
Ich habe eine Picture Box in welcher die Webcam dargestellt wird.
Dies ist ein Video. Wie kann ich von diesem Video im Moment "XY" ein Bild machen, so, dass ich es speichern, oder in einer anderen PictureBox anzeigen kann.
(Video Format von der Webcam weiss ich nicht, ein Tipp zum herausfinden wäre auch schon einmal gut)
MFG
Max
Hallo,
Port 80 ist keine gute Wahl, denn dies ist ja der reservierte Port für den HTTP-Webserver.
Nimm einen (freien) Port oberhalb von 1024.
An dem Liegt es nicht, ich habe es schon mit mehreren Ports ausprobiert...
Hallo zusammen,
Ich versuche im Moment ein Bild per TCP IP zu übertragen.
Hier mein Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Bild_per_TCP_IP
{
public partial class Form1 : Form
{
Socket sck;
EndPoint epLocal, epRemote;
public Form1()
{
InitializeComponent();
sck = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
sck.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
txtIP.Text = getLocalIp();
txtIP2.Text = getLocalIp();
txtPORT.Text = "80";
txtPORT2.Text = "81";
}
private void btnLoad_Click(object sender, EventArgs e)
{
OpenFileDialog ofD = new OpenFileDialog();
ofD.InitialDirectory = "C://";
ofD.Multiselect = false;
ofD.Filter = "png files (*.png)|*.png";
ofD.ShowDialog();
if (ofD.ShowDialog() == DialogResult.OK)
{
picSend.Load(ofD.FileName);
}
}
private void btnConnect_Click(object sender, EventArgs e)
{
try
{
epLocal = new IPEndPoint(IPAddress.Parse(txtIP.Text), Convert.ToInt32(txtPORT.Text));
sck.Bind(epLocal);
epRemote = new IPEndPoint(IPAddress.Parse(txtIP2.Text), Convert.ToInt32(txtPORT2.Text));
sck.Connect(epRemote);
byte[] buffer = new byte[1500];
sck.BeginReceiveFrom(buffer, 0, buffer.Length, SocketFlags.None, ref epRemote, new AsyncCallback(MessageCallBack), buffer);
btnSend.Enabled = true;
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void MessageCallBack(IAsyncResult aResult)
{
try
{
int size = sck.EndReceiveFrom(aResult, ref epRemote);
if (size > 0)
{
byte[] receivedData = new byte[1500];
receivedData = (byte[])aResult.AsyncState;
Image img;
img = byteArrayToImage(receivedData);
picErhalt.Image = img;
}
byte[] buffer = new byte[1500];
sck.BeginReceiveFrom(buffer, 0, buffer.Length, SocketFlags.None, ref epRemote, new AsyncCallback(MessageCallBack), buffer);
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
}
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
public Image byteArrayToImage(byte[] byteArrayIn)
{
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms);
return returnImage;
}
private void btnSend_Click(object sender, EventArgs e)
{
byte[] img;
img = imageToByteArray(picSend.Image);
sck.Send(img);
}
public string getLocalIp()
{
IPHostEntry host;
host = Dns.GetHostEntry(Dns.GetHostName());
foreach (IPAddress ip in host.AddressList)
{
if (ip.AddressFamily == AddressFamily.InterNetwork)
{
return ip.ToString();
}
}
return "127.0.0.1";
}
}
}
Im Anhang ist eine Fehlermeldung zu sehen. Aus irgend einem Grund geht es nicht, kann mir jemand einen Lösungs Ansatz bieten ?
Mit freundlichen Grüssen
max1761995
Danke für die Antworten. Wenn ich Hotkeys aufrufen will, muss dies ja in einer Methode stehen, die immer aufgeruft wird, wie geht das ?
Hallo zusammen
Ich möchte eine Konsolen Anwendung schreiben. Es geht darum, falls jemand bestimmte Wörter oder Tastenkombinationen schreibt. Sollen gewisse sachen passieren.
So zu sagen läuft diese Anwendung im Hintergrund und sobald man schreib "$wannasendmail" soll sich zum Beispiel Outlook öffnen.
Eigentlich ist sind es Shortcuts so wie Ctrl + C etc.
Jedoch funktioniert es nur, falls ich auf die Konsole klicke.
Wie kann ich die Tasten auch abfangen falls ich es eingebe, während ich den Chrome Browser Benutze?
Mfg max
Hallo zusammen...
Im Moment möchte ich meine C# Kentnisse erweitern dehalb habe ich mir den Webbrowser-Komponent vorgenommen.
Jedoch gibt es eine Fehlermeldung beim aufruf der Seite : http://www.instagram.com
Bei seiten wie google.ch, facebook.com etc.
kommt dieser Fehler nicht vor, wie kann ich das beheben ?
private void button1_Click(object sender, EventArgs e)
{
webBrowser1.Navigate(textBox1.Text);
}
Falls ich 2 mal Ja klicke, bleibt der Browser weiss(er lädt eine website jedoch ohne anzeigender inhalt)
und bei nein kommt auch nichts
Gruss Max
Dafür sollte man bei google eingeben: "C# webclient ftp list"
Der erste Treffer ist dieser
> .
Dan habe ich gesehen :
using System;
using System.IO;
using System.Net;
using System.Text;
namespace Examples.System.Net
{
public class WebRequestGetExample
{
public static void Main ()
{
// Get the object used to communicate with the server.
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://www.contoso.com/");
request.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
// This example assumes the FTP site uses anonymous logon.
request.Credentials = new NetworkCredential ("anonymous","janeDoe@contoso.com");
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream);
Console.WriteLine(reader.ReadToEnd());
Console.WriteLine("Directory List Complete, status {0}", response.StatusDescription);
reader.Close();
response.Close();
}
}
}
Jedoch ist meine frage, wie ich das in eine textbox schreibe...., da wird es per konsole ausgegeben... (Frage ein isschen kompliziert 😁 )
gruss max
Hei zusammen
Ich kann per FTP Dateien downloaden, jedoch muss ich immer wissen wie die datei heisst und in welchem ordner sie liegt.
Jetz meine Frage:
Kann man so zu sagen eine Liste erstellen von allen Datei die im gewissen verzeichniss liegen ?
Falls ja wie geht das genau ? (in meinem vorigen post ftp download, ging es um das downloaden das klappt nun, jedoch möchte ich nicht jede Datei manuell eintragen... sonder alles automatisieren)
Gruss Max
PS: am besten wäre es so :
Verzeichniss auf FTP: ftp://meinftp.ch/test
datei: index.php => Dateiname = index.php
datei: css/style.css => Dateiname = css/style.css
Also mal ganz ehrlich,
ein bischen Mitarbeit erwarten wir schon.. Setz Dich mit dem Debuggen ausseinander, und finde herraus ab wann dein Code nicht mehr das tut was Du erwartest. Dann denke noch einmal nach, ob Du Dir deine Frage nicht schon selbst beantworten kannst.
Wenn es dann immer noch nicht klappt kannst Du mit einer etwas spezielleren Frage nochmals nachhaken.Gruß
hat sich geklärt, das tutorial war nicht so das ware....
Für Personen die nach genau dem suchen will ich noch eine Hilfe anbieten:
so hat es geklapppt:
string[] names = new string[256];
string[] filenames = new string[256];
private void btnOpen_Click(object sender, EventArgs e)
{
OpenFileDialog OFD = new OpenFileDialog();
OFD.Multiselect = true;
if (OFD.ShowDialog() == DialogResult.OK)
{
if (OFD.FileNames.Length > 0)
{
filenames = OFD.FileNames;
names = OFD.SafeFileNames;
int i = 0;
foreach (string values in filenames)
{
txtPath.Text = txtPath.Text + ';' + filenames[i];
i++;
}
}
}
}
private void btnUpload_Click(object sender, EventArgs e)
{
try
{
string links = txtPath.Text;
string[] splitlinks = links.Split(new Char[] {';'});
int i = 0;
foreach (string values in splitlinks)
{
string ftpname = txtPathFTP.Text + "/" + names[i];
WebClient Client = new WebClient();
Client.Credentials = new NetworkCredential(txtUser.Text, txtPassword.Text);
Client.UploadFile(ftpname, splitlinks[i]);
i++;
}
}
catch
{
MessageBox.Show("falsche Daten");
}
}
Hoffe das hilft 😃
Was funktioniert nicht? Was erwartest Du? Was passiert?
ich erwarte , dass es mir alle ordner von dem FTP server downloadet,
es funktioniert nichts
es passiert nichts
Hei zusammen...
Ich möchte gerne alle Dateien, welche für einen Ftp benutzer existieren downloaden und in einen Ordner specihern meiner Wahl.
Hier mein code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
namespace Party_FiendsDevelopement
{
public partial class Logon : Form
{
public Logon()
{
InitializeComponent();
}
private void btnChose_Click(object sender, EventArgs e)
{
FolderBrowserDialog folderDlg = new FolderBrowserDialog();
folderDlg.ShowNewFolderButton = true;
// Show the FolderBrowserDialog.
DialogResult result = folderDlg.ShowDialog();
if (result == DialogResult.OK)
{
txtPath.Text = folderDlg.SelectedPath;
Environment.SpecialFolder root = folderDlg.RootFolder;
}
}
//FTP
private class FtpData
{
public string RequestUriString;
public string FileName;
public DirectoryInfo Directory;
public int DownloadAttemps;
public FtpData(string requestUriString, string fileName, DirectoryInfo directory)
{
RequestUriString = requestUriString;
FileName = fileName;
Directory = directory;
DownloadAttemps = 0;
}
}
private List<FtpData> GetFilesAndDirectoriesToDownload(string requestUriString, DirectoryInfo workingDirectory, bool recursive)
{
List<FtpData> files = new List<FtpData>();
List<FtpData> directories = new List<FtpData>();
try
{
FtpWebRequest req = (FtpWebRequest)FtpWebRequest.Create(requestUriString);
req.Proxy = new WebProxy();
req.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
req.KeepAlive = false;
using (FtpWebResponse response = (FtpWebResponse)req.GetResponse())
{
using (Stream dataStream = response.GetResponseStream())
{
using (StreamReader reader = new StreamReader(dataStream))
{
while (!reader.EndOfStream)
{
string entry = reader.ReadLine();
if (entry.StartsWith("d"))
{
string directoryName = GetEntryName(entry);
if (directoryName != "." && directoryName != ".." && recursive)
{
DirectoryInfo subDir = Directory.CreateDirectory(workingDirectory.FullName + "\\" + directoryName);
directories.Add(new FtpData(requestUriString + "/" + directoryName, "", subDir));
}
}
else
{
files.Add(new FtpData(requestUriString + "/" + GetEntryName(entry), GetEntryName(entry), workingDirectory));
}
}
}
}
}
foreach (FtpData dir in directories)
{
files.AddRange(GetFilesAndDirectoriesToDownload(dir.RequestUriString, dir.Directory, true));
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
return files;
}
void wc_DownloadDataCompleted(object sender, DownloadDataCompletedEventArgs e)
{
FtpData file = (FtpData)e.UserState;
if (e.Error == null)
{
try
{
File.WriteAllBytes(file.Directory.FullName + @"\" + file.FileName, e.Result);
pbDownloadProgress.Value += 1;
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
else
{
if (file.DownloadAttemps <= 3)
DownloadFileAsynchron(file);
else
MessageBox.Show("File " + file.FileName + " konnte nicht heruntergeladen werden.");
}
}
private string GetEntryName(string entry)
{
string result = entry.Substring(entry.LastIndexOf(":"));
result = result.Substring(result.IndexOf(" ") + 1);
return result;
}
private void bnStartDownload_Click(object sender, EventArgs e)
{
lblStatus.Text = "Hole Dateien von FTP";
Application.DoEvents();
List<FtpData> filesToDownload = GetFilesAndDirectoriesToDownload("ftp://user:password@ftp-web.funpic.de", new DirectoryInfo(@"C:\Users\Max"), true);
lblStatus.Text = "Hole Dateien von FTP fertig";
Application.DoEvents();
System.Threading.Thread.Sleep(2000);
lblStatus.Text = "Starte Asynchroner Download von " + filesToDownload.Count.ToString() + " Dateien";
pbDownloadProgress.Maximum = filesToDownload.Count;
pbDownloadProgress.Value = 0;
foreach (FtpData file in filesToDownload)
{
DownloadFileAsynchron(file);
}
}
private void DownloadFileAsynchron(FtpData file)
{
using (WebClient wc = new WebClient())
{
wc.Proxy = new WebProxy();
wc.DownloadDataCompleted += new DownloadDataCompletedEventHandler(wc_DownloadDataCompleted);
file.DownloadAttemps += 1;
wc.DownloadDataAsync(new Uri(file.RequestUriString), file);
}
}
}
}
Wiso funktioniert das nicht ?
string constring = "SERVER=localhost;" + "DATABASE=CSHARP;" + "UID=root;" + "PASSWORD=;";
MySqlConnection conn = new MySqlConnection(constring);
MySqlCommand command = conn.CreateCommand();
command.CommandText = "Select * From User WHERE Login='"+txtUsername.Text+"' AND Passwort = '"+txtPasswort.Text+"' ";
conn.Open();
MySqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine(reader["text"].ToString());
}
Console.ReadLine();
was ist hier falsch ?
Fehlermeldung:
Could not find specified column in results:test
Gruss Max
bin gerade an dem am testen, kam selbst gerade drauf ^^ funpic.de wird wohl kaum externen zugriff zulassen... probiere es jetzt mit xampp, das sollte funktionieren ?
gruss
max
ja das habe ich ja bei meinem code auch :
Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
Aber wo genau muss ich das einfügen ?
gruss
Wo gebe ich mein Passwort, sErver und Username an bei ZeroQool's code?
bei :
Settings.Default.MySqlServer
?
Und was muss ich genau ersetzten....
Gruss
Max Mayr
verwendetes Datenbanksystem: MySQL
string myConnectionString = "SERVER=*****;" +
"DATABASE=max1761995;" +
"UID=max1761995;" +
"PASSWORD=*****;";
MySqlConnection connection = new MySqlConnection(myConnectionString);
MySqlCommand command = connection.CreateCommand();
command.CommandText = "INSERT INTO `max1761995`.`Event` ( `ClubID`, `Eventname`, `Beschreibung`, `Website`, `Video`, `Bild`, `Tags`, `Datumvon`, `Datumbis`, `Zeitvon`, `Zeitbis`, `Preis`, `Ticket`) VALUES (" + txtClub.Text + "', '" + txtEventname.Text + "', '" + txtBeschreibung.Text + "', '" + txtWebsite.Text + "', '" + txtVideo.Text + "', '" + txtBild.Text + "', '" + txtTags.Text + "', '" + txtDatum.Text + "', '" + txtDatum2.Text + "', '" + comboZeit1.Text + ":" + comboZeit2 + "', '" + comboZeit3.Text + ":" + comboZeit4 + "', '"+txtPreis.Text+"', '"+txtTickets.Text+"');";
connection.Open();
connection.Close();
Fehler:> Fehlermeldung:
Unable to connect to any of the specified MySQL hosts.
Warum kommt dieser Fehler?
Max
private void button7_Click(object sender, EventArgs e)
{
string file1 = textBox4.Text;
//Ein Request erstellen an den ftp Server
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://XXXX"+file1);
//Die Methode angeben um eine Datei hochzuladen
request.Method = WebRequestMethods.Ftp.UploadFile;
//Berechtigungsdetails setzen vom ftp Server durch Username und Passwort
request.Credentials = new NetworkCredential("***", "****");
try
{
//Versuch eine Verbindung zu erstellen und eine Antwort zu erhalten
WebResponse response = request.GetResponse();
MessageBox.Show("Response hat funktioniert");
}
catch (Exception exp)
{
MessageBox.Show(exp.ToString());
}
//Neuer FileStream erstellen für die Datei
FileStream fs = new FileStream(@"C:\Users\Public\Pictures\Sample Pictures\Pinguine.jpg", FileMode.Open);
byte[] fileContents = new byte[fs.Length];
fs.Read(fileContents, 0, Convert.ToInt32(fs.Length));
fs.Flush();
fs.Close();
//Ein neuen Stream für den Request erstellen dem der FileStream mitgegeben wird.
Stream requestStream = request.GetRequestStream();
requestStream.Write(fileContents, 0, fileContents.Length);
requestStream.Close();
//Verbindung abbschliessen
request.Abort();
}
Mein neuer code....
Jedoch die genau gleiche Fehlermeldung 😕
Mach ich immer noch etwas falsch ?
Hei zusammen
Ich versuche eine Datei auf meinen FTP server hochzuladen. Jedoch bekomme ich die Fehlermeldung :
Fehlermeldung:
System.Net.WebExeption: Die angeforderte URI ist für diesen FTP befehl ungültig.
bei System.Net.FtpWebRequest.GetReponse()
bei ftpupload.Form1.button7_Click(Object sender, EventArgs e)
Mein Code lautet wie folgt:
private void button7_Click(object sender, EventArgs e)
{
string file1 = textBox4.Text;
//Ein Request erstellen an den ftp Server
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(new Uri("ftp://***" + file1));
//Die Methode angeben um eine Datei hochzuladen
request.Method = WebRequestMethods.Ftp.UploadFile;
//Berechtigungsdetails setzen vom ftp Server durch Username und Passwort
request.Credentials = new NetworkCredential("***", "***");
try
{
//Versuch eine Verbindung zu erstellen und eine Antwort zu erhalten
WebResponse response = request.GetResponse();
MessageBox.Show("Response hat funktioniert");
}
catch (Exception exp)
{
MessageBox.Show(exp.ToString());
}
//Neuer FileStream erstellen für die Datei
FileStream fs = new FileStream(@"C:\Users\Public\Pictures\Sample Pictures\Pinguine.jpg", FileMode.Open);
byte[] fileContents = new byte[fs.Length];
fs.Read(fileContents, 0, Convert.ToInt32(fs.Length));
fs.Flush();
fs.Close();
//Ein neuen Stream für den Request erstellen dem der FileStream mitgegeben wird.
Stream requestStream = request.GetRequestStream();
requestStream.Write(fileContents, 0, fileContents.Length);
requestStream.Close();
//Verbindung abbschliessen
request.Abort();
}
Was ist genau der Fehler ?
Ich habe doch eine Uri erstellt....
Gruss
Max
Hei zusammen
Hier ist mein Code :
private void Berechnen_Click(object sender, EventArgs e)
{
int ggt1 = Convert.ToInt32(zahl1.Text);
int ggt2 = Convert.ToInt32(zahl2.Text);
int resultat;
int ausgangszahl1 = ggt1;
int ausgangszahl2 = ggt2;
while ((ggt1 % ggt2) > 0 )
{
int temp = ggt1;
MessageBox.Show(temp.ToString());
ggt2 = (temp % ggt2);
}
if (ausgangszahl1 > ausgangszahl2)and(ausgangszahl1 % ausgangszahl2 = 0)
{
resultat = ggt1;
}
else
{
resultat = ggt2;
}
if (resultat < 0)
{
resultat = resultat * (-1);
}
label4.Text = resultat.ToString();
}
Der fehler liegt am if mit den zwei bedingungen (&& geht nich und auch die zweis striche funktionieren nicht)
Was mache ich falsch ?
Gruss
max
Danke das suchte ich 😉 (MS VIsual C# Express)
nein es ist der prozess, welcher man im taskmanager auch sieht.
der titel ist ja einfach zu ändern. So schlecht kann ich auch nicht wieder programmieren 😁
hat es für das eine lösung und was muss ich ändern?
Hei zusammen
Ich habe ein Programm geschrieben in der Schule mit C#. Es ist eine Semesteraufgabe und ich habe einen Fehler gemacht. Der Prozess meines Programmes heiss: Form1 X(
Er sollte jedoch : Eisautomat
heissen...
Dies wird auch benotet. Wie kann ich den Prozess von diesem Programm umbenennen? Geht das überhaupt ?
mfg Max