Danke, das hat mir als Denkanstoß schon geholfen.
Ich hab dann mal ein altes VSS2010 Projekt geöffnet und nachgesehen was da die Unterschiede waren.
Das ganze ist ein VS generiertes WPF-Projekt, ursprünglich hatte ich das ganze hier hinein gepackt:
public partial class App : Application
{
}
Dort funktioniert es nicht. Das ganze nun wie früher hier:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Produkt Bier = new Produkt();
Bier.ProduktName = "Pilsner";
}
}
Und es funktioniert!
Erstmal so im voraus,
A bist du hier glaub flasch du machst ja XNA und Spieleprogrammierung
B Der Titel ist Recht irreführend
Was solldas spiel denn machen? Wohin sollen die Kugeln denn eigendlich fliegen?
vShootMove = Vector2.Normalize(Player.spielershape.Position - Startposition) * 100f;
Bewegt das deine Kugel? Schätze mal Player.spielershape.Position ist
kleiner als Startposition weshalb die kugel wohl nach unten links fliegt.
Und deine erst foreach wird ja erstmal garnicht betreten
erst bei
if (this.fNextEnemy > fEnemyFreq)
fürgst du einen enemy hinzu.
und ziehst dann 2 ab
Jetzt geht der erst in deine erste foreach
dann steht da
if (this.fNextShoot > fShootFreq)
fNextShoot ist jetzt schon über 2 du zieht aber nur 1 ab
fNextEnemy ist bei > 0 wird ausgelassen und der geht aber wieder in
die erste foreach da sie ja über 1 ist....
Lass dir mal mehr ausgaben mit console writeline machen.
Was in den Update methoden deiner klassen passiert kein plan...
asc schrieb:
WindowsHasser schrieb:
Wo finde ich die offiziellen iso-files Cheksummen (md5) für Microsoft Visual Studio 2010?
Dort wo du legal auch das Visual Studio herunterladen kannst (bei mir unter Details in meiner MSDN-Subscription).
Ich wollte eigentlich nur Microsoft Visual Studio kaufen. Ich kann zwar auch die Box bestellen aber dann müsste ich mehr bezahlen.
Ist es Möglich den Classname einer WPF Applikation zu ändern.
Momentan hat der so einen langen Namen mit
HwndWrapper[Applikationsname.exe lange Hexzahl]
In MFC habe ich das hinbekommen.
Du kannst doch diesen Webservice-Aufruf in eine Funktion packen und den Typ "MusterType" einfach als Parameter übergeben.
Vielleicht wäre etwas mehr Code auch ganz hilfreich (und dann bitte mit den Code-Tags formatieren).
Gruß
Ich
Hi,
ich hab ein ListView mit Subitems, bei der ich mit den Pfeiltasten die Selektion der Subitems steuern kann. Wenn ich aber einen horizontalen Scroll-Balken habe, dann bewegt sich nicht nur die Selektion nach links/rechts, sondern dazu noch der ganze Fensterinhalt.
Die Request Codes für das Keyboard-Interface für die Scroll-Bar sehen wohl so aus:
LEFT SB_LINEUP or SB_LINELEFT
RIGHT SB_LINEDOWN or SB_LINERIGHT
Leider bin ich damit überfordert, wie man das abschalten kann und wäre für etwas Hilfe dankbar.
Grüsse
Danke trotzdem für deine schnelle Antwort das hat mir echt schon sehr weiter geholfen.
Ich benutze Visual Studio 2010 Professional und Office 2010.
Danke!
MfG Philipp
Hallo,
"Hit-Testing" wird benötigt, wenn man (Maus-)koordinaten-genaue Auswertungen für ein UIElement haben möchte, siehe:
http://msdn.microsoft.com/en-us/library/ms752097.aspx
und dort die "Note" zu IsHitTestVisible
MfG,
Probe-Nutzer
Schande über mein Haupt. Die Ursache war ein verrutschtes GetStream()...
loks schrieb:
Schockster schrieb:
Ist es jetzt möglich, dass es ein Programmierfehler ist [...]
Ehm, ich dachte das wäre von Anfang an klar gewesen? Natürlich ist es ein Programmierfehler, was denn sonst? Gremlins? Nur ohne Kenntnis des (relevanten) Codes kann man hier nicht mehr machen als raten.
Schockster schrieb:
Wieso sollte es dann bei mir problemlos funktionieren?
Newsflash: Dein Programm funktioniert offensichtlich _nicht_ problemlos. Es scheint eher so das es zufällig auf deinem System funktoniert. Klassischer Fall von WOMM (Works on my machine)
http://www.codinghorror.com/blog/2007/03/the-works-on-my-machine-certification-program.html
Haha :D. Dank dir kann ich über mich selbst lachen. Naiv von mir, allerdings ist es kein klassischer Fall von works only on my machine, weil es ja auch scheinbar auf allen PC's mit Visual Studio funktioniert.
Thema hat sich jedenfalls erledigt. Das nächste mal poste ich Code egal was komme und geschehe.
Danke nochmal an die Leute die versucht haben mir zu helfen.
Hallo zusammen
Ich habe hier einen kleinen Healthmanger und Healthagent auf UDP basis programmiert. Der Healthmanager waret auf eingehende verbindungen von den agenten und zeigt an ob diese aktiv sind. Jeder agent sendet dabei einen identifier "Server1","Server2" ect. welcher von dem Healthmanger erkannt wird. Auf der grundlage des identifiers und der aktuellen zeit werden Webserver-objekte angelegt.
Nun möchte ich das programm dahingehend optimieren, dass die aktiven Webserver instanzen durch den Healthmanager in eine liste aufgenommen werden. Sobald einer dieser agent kein signal mehr sendet, soll dieser aus der liste gelöscht werden. Zu jederzeit soll also eine frische liste angezeigt werden mit den aktiven servern, welche noch ein signal senden. Und genau hier ist der punkt wo ich nicht weiterkomme. Bin relativ neu im bereich netzwerk/socketprogrammierung.
Bin für jede hilfe dankbar.
Healthmanager
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net.Sockets;
using System.Net;
using System.Threading;
namespace ConsoleApplication3
{
class HealthMonitor
{
public static List<Webservers> getServers;
static void Main(string[] args)
{
getServers = new List<Webservers>();
HealthMonitor h = new HealthMonitor();
Thread th = new Thread(new ThreadStart(h.start));
th.Start();
}
public void start()
{
Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
int receive;
//string message;
byte[] data;
//bind server to port 9050
IPEndPoint ipi = new IPEndPoint(IPAddress.Any, 9050);
server.Bind(ipi);
Console.WriteLine("Listen for clients: ");
IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0);
EndPoint Remote = (EndPoint)(sender);
while (true)
{
data = new byte[1024];
receive = server.ReceiveFrom(data, ref Remote);
string sidentifier = Encoding.ASCII.GetString(data, 0, receive);
DateTime serverdate = System.DateTime.Now;
//Creates a new Webserver instance with date and time.
Webservers web = new Webservers();
web.name = sidentifier;
web.date = serverdate;
Console.WriteLine("Received Message from client: "+web.name+" "+"Datetime: "+web.date);
server.SendTo(data, receive, SocketFlags.None, Remote);
}
}
}
}
Webserver
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication3
{
class Webservers
{
public string name{get;set;}
public DateTime date { get; set;}
}
}
Healthagent
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
using System.Net.Sockets;
using System.Net;
namespace agent
{
class HealthAgent
{
static void Main(string[] args)
{
HealthAgent ha = new HealthAgent();
string argument = args[0];
ha.start(argument);
}
public void start(string argument)
{
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Unspecified);
Console.WriteLine("Start sending data to localhost: ");
IPEndPoint sip = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 9050);
while (true)
{
Thread.Sleep(1000);
Console.WriteLine(argument.ToString());
byte[] data = ASCIIEncoding.ASCII.GetBytes(argument);
s.SendTo(data, sip);
}
}
}
}
Ok das habe ich nun auch so gelöst gehabt. Dachte da gibt es eine schönere Lösung.
Das Problem ist das ich eine Nachricht von einem anderen Programm bekomme eine UserMessage und darauf schalte ich mich in den Vordergrund.
Noch ein Problem:
Meine andere Anwendung wird im Vollbildschirmmodus ausgeführt. Die Taskleiste ist auch nicht sichtbar. Wenn nun aber mein Programm in den Vordergrund kommt wird die Taskleiste auch mit angezeigt. Wie kann ich das verhindern?
Dann schreib dir ein Programm das da logfile loescht. Den Pfad kannst eins zu eins deinem Programm durch einen Custom Build Step in der Buildconfiguration im VS als Parameter uebergeben.