|
Edmundisme wrote: but because he would have to implement his own vet, he is less likely to do this
Less likely to do it than cast the IPlayable to a Dog and then cast that to an IEuthanizable then call the Euthanize() method if he doesn't want to kill the dog? I don't think so. You have overly complicated (Rube Goldberg) the design to arrive at an arguably nominal barrier to improper use.
Your continued use of the Dog/Vet metaphor is not helping. I thought we already established that in your real problem the Child would not have a Dog but an IPlayable. If that is not the case then my posts are probably not relevant.
led mike
|
|
|
|
|
I have reposted an explanation of my problem and solution in this forum because I want to hear what others might say about it. I have removed the metaphor and explained the actual scenario.
Have a peek if you're interested. I would love to hear your take.
Thanks!
|
|
|
|
|
Does anyone know if when I Load an assembly using Reflection I also have to load all of it Dependencies?
This is the behavior I am currently seeing – but was hoping things would be a bit simpler.
Cheers
Rich
|
|
|
|
|
AJ123 wrote: Does anyone know if when I Load an assembly using Reflection I also have to load all of it Dependencies?
Yes. You could try using ReflectionOnlyLoad[^] /ReflectionOnlyLoadFrom instead, to load just that assembly.
|
|
|
|
|
I want 2 change hue saturation of gif image how can I do it??? Can anybuddy help me??????????
THANX
|
|
|
|
|
Hello, I am the creator of a game called SharpKonquest (http://sourceforge.net/projects/sharpkonquest). I want to create a new version that support multiplayer through Internet, but I dont know how do this. I have think to create a TCP connection between server and client, but I don't know how synchronize the clients with the server. Exist some methodology or some class or tutorial that can help me?
Thanks
-----------------
Recuerda, no hay arma mas mortífera que una palabra brotada de un corazón noble, y un par de huevos que la respalden.
|
|
|
|
|
I haven't used this much so it might so I need some help on it.
I have a xml file and its schema file "xsd".
I can load the schema and load the xml but
I am only interested in 6 elements out of the xml file,
and there are a ton of different elements in the xsd file.
Here is the question:
Can I create a new xsd file with only the elements I am interested in and only read those elements out of the xml file?
God Bless,
Jason
Programmer: A biological machine designed to convert caffeine into code. Developer: A person who develops working systems by writing and using software.
[ ^]
|
|
|
|
|
What do mean by load xml and load schema?
You can use a XSLT to extract the elements of interest and as long as the other elements are optional in the schema you could use it to validate the xml.
only two letters away from being an asset
|
|
|
|
|
Mark Nischalke wrote: What do mean by load xml and load schema?
I can create a new XMLReader with its schema and 'XMLRead.Read()' the entire file into an object.
Thanks for the hint on XSLT that looks like what I needed.
God Bless,
Jason
Programmer: A biological machine designed to convert caffeine into code. Developer: A person who develops working systems by writing and using software.
[ ^]
|
|
|
|
|
The correct way would be to define the schema file in such a way as the elements that you do not need are optional.
File Not Found
|
|
|
|
|
I think what you want to use is xpath.
|
|
|
|
|
If you're just trying to extract data from XML, you don't even need the schema. If you know the elements, you could just load the XML into an XmlDocument object and XPath query out what you need.
|
|
|
|
|
Hello, my cybrenetics Friends !!!
I have a listview, and o wan't to sort the list by clicking the Column header.
But i have 2 columns, and i wan't to sort the list by clicking the 2 column, so i can get the items sorted by the second raw.
Thanks!!!
One nation - underground
|
|
|
|
|
There are several ways you could do this. But you'll likely want to create an IComparer implementation to look at ListViewItems, or whatever type you stick in the ListViewItem's Tag property. When you add an event handler for the ListView's ColumnClick event, the ColumnClickEventArgs instance gives you the index of the column clicked. You can use that in your IComparer to determine how to sort objects. In your handler, update or create a new comparer and set the ListView's ListViewItemSorter property with the instance you updated or created. Google IComparer to see how to implement one, but it's not difficult.
private void listView1_ColumnClick(object sender, ColumnClickEventArgs e) {
IComparer sorter = new YOURICOMPARER(e.Column)
listView1.ListViewItemSorter = sorter;
listView1.Sort();
}
|
|
|
|
|
|
Hello,
when i install my application, i get a fatal error message " Fatal Non-UI Error. Could not write the error to the event log. Reason: Source ThreadException already exists on the local computer."
I dont get this message on al machine, i get this error only on couple of our sites..
this is my main
static void Main() <br />
{<br />
Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException);<br />
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);<br />
<br />
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);<br />
<br />
CSingleProcInstance singleProcInstance = new CSingleProcInstance();<br />
if(singleProcInstance.IsSingleInstance())<br />
Application.Run(new MainForm());<br />
<br />
singleProcInstance.Release();<br />
}<br />
the exception is in the AppDomain.CurrentDomain part of the code.,
private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)<br />
{<br />
try<br />
{<br />
Exception ex = (Exception)e.ExceptionObject;<br />
string errorMsg = "An application error occurred. Please contact the adminstrator " +<br />
"with the following information:\n\n";<br />
<br />
if (!EventLog.SourceExists("ThreadException"))<br />
{<br />
EventLog.CreateEventSource("ThreadException", "Application");<br />
}<br />
<br />
EventLog myLog = new EventLog();<br />
myLog.Source = "ThreadException";<br />
myLog.WriteEntry(errorMsg + ex.Message + "\n\nStack Trace:\n" + ex.StackTrace);<br />
}<br />
catch (Exception exc)<br />
{<br />
try<br />
{<br />
MessageBox.Show("Fatal Non-UI Error",<br />
"Fatal Non-UI Error. Could not write the error to the event log. Reason: "<br />
+ exc.Message, MessageBoxButtons.OK, MessageBoxIcon.Stop);<br />
}<br />
finally<br />
{<br />
Application.Exit();<br />
}<br />
}<br />
}
Can someone suggest me how to go about this Error?
With Rgds,
Anil
|
|
|
|
|
I trying to learn C# and I've got two questions for someone.
1) In my property statements when I have a speed property I keep getting told The type 'CarProjects.Car' already contains a definition for 'Speed'. I didn't think that I really had a definition for Speed in there. Hopefully someone can explain what I may be doing wrong.
2) In the Decelerate() method I need to take the final speed from accelerate and use it to set up for my braking speed. The way it is now I'm fine with the accelerate which gives me a 25 MPH boost over the initial speed. I can also get a -25 MPH shown in the decelerate. I had originally thought that I could make a method that would add the "brake" speed to the "speed" method. I simpply can't get it to work. Can someone give me a clue as to how I can make this work?
Any help will be appreciated.
public class Car <br />
private int speed = 0;<br />
private int brake = 0;<br />
private int Accel = 0;<br />
private int Speed = 0;<br />
<br />
public int Speed<br />
{<br />
get<br />
{<br />
return speed;<br />
}<br />
set<br />
{<br />
speed = value;<br />
}<br />
}<br />
public int Brake<br />
{<br />
get<br />
{<br />
return brake;<br />
}<br />
set<br />
{<br />
brake = value;<br />
}<br />
}<br />
<br />
public Car(int speed, int brake, int accelerate)<br />
{<br />
accelerate = Accel;<br />
brake = Brake;<br />
speed = Speed;<br />
}<br />
<br />
public static int Accelerate() <br />
{<br />
int speed = 0;<br />
int counter = 1;<br />
Console.WriteLine();<br />
Console.WriteLine("Type in the initial speed of car.");<br />
string inputNumbers = Console.ReadLine();<br />
speed = int.Parse(inputNumbers);<br />
<br />
while (counter < 6)<br />
{<br />
speed += 5;<br />
counter++;<br />
}<br />
Console.WriteLine();<br />
Console.WriteLine("Top speed of the car is: {0}", speed);<br />
return speed;<br />
}<br />
}<br />
public static int Decelerate()<br />
{<br />
int brake = 0;<br />
int counter = 1;<br />
while (counter < 6)<br />
{<br />
brake += - 5;<br />
counter++;<br />
}<br />
Console.WriteLine();<br />
Console.WriteLine("Speed after braking is: {0} ", brake);<br />
return brake;<br />
}<br />
}
|
|
|
|
|
JMOdom wrote: private int Speed = 0;
JMOdom wrote: public int Speed
{
get
{
return speed;
}
set
{
speed = value;
}
}
led mike
|
|
|
|
|
JMOdom wrote: 1) In my property statements when I have a speed property I keep getting told The type 'CarProjects.Car' already contains a definition for 'Speed'. I didn't think that I really had a definition for Speed in there. Hopefully someone can explain what I may be doing wrong.
I run into this problem when I accidently give a field (or method) the same name as a property. For example, if you have a field named "Speed" and a property named "Speed," you'll get the above error.
JMOdom wrote: 2) In the Decelerate() method I need to take the final speed from accelerate and use it to set up for my braking speed. The way it is now I'm fine with the accelerate which gives me a 25 MPH boost over the initial speed. I can also get a -25 MPH shown in the decelerate. I had originally thought that I could make a method that would add the "brake" speed to the "speed" method. I simpply can't get it to work. Can someone give me a clue as to how I can make this work?
I think I need a clearer statement of what your goal is with the brake method. You're simulating a car, right? You have an Accelerate and Decelerate methods for increasing a car's speed and decreasing a cars speed respectively. Maybe a restatement of what you're having problems with would help. I'm a little lost.
|
|
|
|
|
I'll try and clear things up.
With this project that I'm working on I should be able to input an initial speed. The program will then take and add 5 MPH to it 5 times.
When I get that final speed from the acceleration I then take it and use it in the decelerate method. It does the same thing with the following exception:
Instead of adding 5 MPH to the speed it subtracts 5 MPH 5 times. I need to get back my original speed that I typed in.
Hopefully that helps clear things up.
|
|
|
|
|
Ok, the main thing is that you need to maintain the state of the car during and between calls to Accelerate and Decelerate . In other words, you need to keep track of the speed of the car during and between calls to those methods. You can do this with a speed field. This is a trivial example, but it should show you in principle what I'm talking about:
using System;
namespace Demo
{
public class Counter
{
private int count;
public Counter(int initialCount)
{
count = initialCount;
}
public void Increment()
{
count++;
}
public void Decrement()
{
count--;
}
public int Count
{
get
{
return count;
}
}
}
}
To use this object, we could do this:
Counter c = new Counter(40);
c.Increment();
c.Increment();
c.Decrement();
Now, hopefully this will get you started. In place of the Increment method, you will use the Accelerate method. And instead of the Decrement method, you will use the Decelerate method. And instead of the Count property, you will use the Speed property, and so on. You will then need to put in extra logic to handle your requirements regarding maximum speed allowed and so forth.
The key here is that encapsulated in the Counter object is the state of the object. This state is maintained between calls to the methods. I'm not sure, but I think this may have been where you were having trouble with your code. I'd need to take a second look.
|
|
|
|
|
On the fifth line you declare Seed two lines later you declare the property Speed with the same name. It is a dangerous habit to use speed and Speed in the same module. For properties I normally create a private var like this PropSpeed, then the property itself has the more friendly name Speed.
I think your model is nog good. If you intend to use Speed as the actual seepd an you simulate braking, just decrease the speed again, till it treaches 0. You do not need the brake proerty for this purpose. It might make sens to introcuce properties for accelleration to set the accelleration capability and use this to calculate the new speed:
speed += accelleration;
In the same way you may want to use a different value for brakng capacitiy, e.g. brake:
speed -= brake;
I hope this helps.
|
|
|
|
|
Thanks folks. I'll be trying the various solutions to see which gives me the best results.
As I'm new at this, and in a learning mode, sometimes I find that you learn more from how not to do something than from how to do it.
Thanks again for your time and efforts. They are all appreciated.
|
|
|
|
|
Hello,
Problem is that I am trying to launch a windows forms application process from the context of a windows service, via a intermediate update process.
The service launches the update process just fine. The update process determines if it needs to shutdown the service and apply an update to it. It then restarts the service. This update process is currently launching under the context of the service. IE: Its parent process is the service process, and is owned / its User is "NT Authority\System".
Everything is fine to this point. After the service is updated and restarted I then have to open a windows form application (the service's controlling interface) "IF" there is a user logged into the system, and it must run under that users account (I believe).
I launch the interface process like so:
<br />
Process process = new Process();<br />
process.StartInfo.UseShellExecute = true;<br />
process.StartInfo.RedirectStandardOutput = false;<br />
process.StartInfo.RedirectStandardError = false;<br />
process.StartInfo.FileName = Application.StartupPath + "\\serviceInterface.exe";<br />
process.StartInfo.Arguments = " -updated";<br />
process.StartInfo.LoadUserProfile = true;<br />
process.StartInfo.WorkingDirectory = Application.StartupPath;<br />
process.StartInfo.CreateNoWindow = false;<br />
process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;<br />
process.Start();<br />
The process starts and is diplayed under processes in taskmanager. It does not get a window handle though it seems.
Whatever I try I cannot bring the process to focus. If I try to bring the processes main window to front I get an error that there is no window associated with the process.
I have determined that the problem roots from the user account that the process is launched under, as when I lauch the update process manually under the default users account every thing works fine.
Hard coding a username and password is not an option as I would then have to create that account on each machine the service is installed on.
How can I get my process to start under the context of the local users account, if there is one logged in? Also what if there are mutlipule terminal sessions open to the server, how do I pick the approperate one to launch under?
Thanks a ton for any info.
Been stumped here for a little bit.
|
|
|
|
|
You must not be using .net 2.0. There is a UserName and Password property in the StartInfo object of the Process in .net 2.0. Otherwise you are kind of stuck since what ever the service launches will be run under the user that the windows service is installed as.
The only other thing I can think of is not very clean. You could have the windows service send a windows message to your app. When that app receives that windows message, it could launch a small exe who's only purpose is to poll a directory or register setting that will get set when the update is done. One this little app see the update is done it launches the app again. Since it was started by the orignal application it should work fine.
Or you could just upgrade your service to .net 2.0.
Hope that helps.
Ben
|
|
|
|