|
Well that was the problem I was running it from a network share. Which I think is stupid if that causes a problem. It should not matter where I run it from. BTW the exe that is included in that article causes the problem from a network share but not when I copy it to my local drive.
That is bizard.
BTW what .NET settings in the Control Panel? I do not have any .NET applet in there.
Do you or anyone know why this is not allowed to work from a network share? And if so how can it be fixed?
Thanks Leppie for pointing me in the right direction!!
Aalst.
|
|
|
|
|
Aalst wrote:
BTW what .NET settings in the Control Panel? I do not have any .NET applet in there.
Oops under Admin tools in Control Panel. But it think all u mite need todo is set a security flag on the program/class when u compile it. I have never done this, but it seems the logical step.
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
Yeah I checked, and there are no compiler options to fix this. I only have 3 choices.
1 - Don't run code from network shares.
2 - Increase the trust level on a assembly by assembly bases.
3 - Adjust the Intranet Zone security to Full Trust.
I did 3 and it works fine. In my mind, Intranet and Local machine security are the same since I am the Admin. So I do not usually consider this. So I should not have this problem again.
Thanks for your help...
Aalst
|
|
|
|
|
Aalst wrote:
Do you or anyone know why this is not allowed to work from a network share?
The only code that is given full trust is that which is run from the My Computer zone. Code on a network share operates from the Local Intranet zone, which doesn't have Full Trust.
The Local Intranet zone doesn't get Full Trust because you can't *always* trust those on your network (cable provider, school network, etc).
James
"And we are all men; apart from the females." - Colin Davies
|
|
|
|
|
You're not allowed to do this because the code isn't on your machine. Giving remote code full trust makes it much easier for malicious code to spread; all somebody needs to do to infect your machine is get a copy of their code onto the network share.
|
|
|
|
|
Does anyone have an example of changing the quality of a JPEG that you are saving out with the Bitmap.Save() method?
Thanks,
Steven
|
|
|
|
|
Hi Folks,
Most of my programming experience has been on the back-end / server side and I am begging to work on a new Windows project at home.
As I work through the UI, I often find myself wondering if my approach is efficient or "Good." Most of my concern comes when looking at how the program responds to UI events like button clicks ect.
Again, I am on bit of uncertain ground with the UI apps so please bear with me if my questions are a bit off or inaccurate. So on with the questions.
Is it best to construct objects and call methods directly in the ui event handling code (i.e. on_Click)? Or should I attempt to decouple it further by using delegates and registering event listeners in some type of worker class? And if I use this approach how would you suggest manipulating a moderately complex set of controls…. Is it wise to make the run-time changes directly from the event handlers or should a worker class again be employed?
Again, sorry if these question have been less than informed or asked in the past.
Any suggestions are appreciated.
Thanks again
|
|
|
|
|
I have always coded the creation of objects directly into the event handlers. I think it would be fairly inefficient and complex to create a worker class that does that stuff for you.
David Stone
It seemed similar to someone saying, "Would you like to meet my knife collection?"
Ryan Johnston on Elaine's sig
|
|
|
|
|
Thanks for the reply David,
The real source of my anxiety comes from having quite a bit of stuff going on in the even handlers (object creation, method calls, and UI componet manipulation)and worring that perhaps I am not following what are considered the best practices.
Mabey I'll relax about a little
Thanks
|
|
|
|
|
Chris Austin wrote:
Mabey I'll relax about a little
I would. I've done tons of stuff on one button click before. Just remember to try not to interrupt the UI experience though. If you have so much stuff that the UI can't respond to any of the user's movements, then you might want to consider multithreading the app.
David Stone
But Clinton wasn't a predictable, boring, aging, lying, eloquent, maintainer-of-the-status-quo. He was a predictable, boring-but-trying-to-look-hip, aging-and-fat-but-seemingly-oblivious-to-it, lying-but-in-sadly-blatant-ways, not-eloquent-but-trying-to-make-up-for-it-by-talking-even-more, bringer-in-of-scary-and-potentially-dangerous-new-policies. And there was also Al Gore. It just wasn't *right*.
Shog9
|
|
|
|
|
May I point you to Joseph M. Newcomer's article "Optimization: Your Worst Enemy", in particular the 5 paragraph section titled "When not to optimize".
All of Joe Newcomer's articles deserve a read; but that one really opened my eyes.
James
"And we are all men; apart from the females." - Colin Davies
|
|
|
|
|
Interesting article. While I agree there is little point in optimizing for optimization's sake, the real opportunity here is code reuse. Separating your business logic from the interface makes it easier to reuse the code. One has to weigh the benefits against the added complexity
Bill F
|
|
|
|
|
and this is my third - last question guys ;]
i dont want the user to be able to change the selection, i only want the program to be able to change it
overriding OnSelectionChanged() or OnMouseDown() doesnt work
ps. i cant just disable the list box, because i dont want the colors
dimmed, and when you disable a control you dont have any influence on the colors it displays on the screen
manson
|
|
|
|
|
myListBox.SelectionMode = System.Windows.Forms.SelectionMode.None;
Hope that helps.
David Stone
It seemed similar to someone saying, "Would you like to meet my knife collection?"
Ryan Johnston on Elaine's sig
|
|
|
|
|
if you set selection mode to none, you CANNOT select any index in the listbox, even programmatically (you get an exception)
i cant do that, because i want the program to be able to select items in the list box
manson
|
|
|
|
|
By default:
myListBox.SelectionMode = System.Windows.Forms.SelectionMode.None;
And then use this:
void SetListBoxText(int indexToSetTo)
{
myListBox.SelectionMode = System.Windows.Forms.SelectionMode.One;
myListBox.SelectedIndex = indexToSetTo;
myListBox.SelectionMode = System.Windows.Forms.SelectionMode.None;
}
-Domenic Denicola- [CPUA 0x1337]
MadHamster Creations
"I was born human. But this was an accident of fate - a condition merely of time and place. I believe it's something we have the power to change..."
|
|
|
|
|
is it possible to combine two brushes (like use both on the same object on the screen), i.e. LinearGradientBrush and
HatchBrush and fill objects with them (i actually want to draw a
dashed-gradient line, so i do FillRectangle with height=1)
or do I have to crate my own brush class derived from
System.Drawing.Brush?
manson
|
|
|
|
|
I believe that the Brush type is an enum and that it does have the [Flags] attribute. So you could say:
myDrawingObject.BrushType = Brush.LinearGradientBrush | Brush.HatchBrush
Hope that works.
David Stone
It seemed similar to someone saying, "Would you like to meet my knife collection?"
Ryan Johnston on Elaine's sig
|
|
|
|
|
ee.. were talking c# here
theres no such thing as Brush.LinearGradientBrush, cos Brush is an abstract class, which is extended by LinearGradientBrush and HatchBrush (which, by the way, are not enums unfortuantely, and cannot be treated with OR operator '|')
and above all, what is BrushType?? no such member in the whole .NET class library either
tell me you were just joking
manson
|
|
|
|
|
I wasn't sure if there was a property that was BrushType or not. Sorry about that. I didn't look to confirm. I was thinking about the Brushes class and it's read only properties. But those are for colors.
Let's start over. What are you trying to draw?
David Stone
It seemed similar to someone saying, "Would you like to meet my knife collection?"
Ryan Johnston on Elaine's sig
|
|
|
|
|
setting MinimumSize for an MdiChild Form does nothing, you can still resize the Form to a smaller size than MinimumSize
checking if the Form has been resized to a smaller size than MinimumSize
(and resizing it back) in the Resize event handler seems the only
solution so far, but it doesnt look good in the runtime of course..
what am i missing?
ps. MaximumSize and MinimumSize do work for MdiParents and non-Mdi Forms, but
they dont work for MdiChildren
at least it looks like it
is there any way around it?
manson
|
|
|
|
|
How do i make an enum, such that when you are assigning a property of that enum, you can specify more that one of the flags, e.g.
someThing.Proprty = AnEnum.Foo | AnEnum.Bar;
and is there something special i have to do to find which ones were specified?
Email: theeclypse@hotmail.com URL: http://www.onyeyiri.co.uk "All programmers are playwrights and all computers are lousy actors."
|
|
|
|
|
Use FlagsAttribute
Here is an example:
[Flags]
public enum AA
{
...
}
43 68 65 65 72 73 2c
4d 69 63 68 61 65 6c
|
|
|
|
|
Nnamdi Onyeyiri wrote:
and is there something special i have to do to find which ones were specified?
Yes, unfortunately
1. Flags Enums must be bit settable ie
enum MyEnum {
None = 0x00,
FlagA = 0x01,
FlagB = 0x02,
FlagC = 0x04,
FlagD = 0x08,
FlagE = 0x10,
FlagF = 0x20,
FlagG = 0x40,
FlagH = 0x80
}
2. To get the value (this is my difficult part as bit operations is somethin my mind cant process yet). I use this snippet to view Flags.
public static string PrintFlags(object enumvalue)
{
Type t = enumvalue.GetType();
string output = "";
foreach(string enumName in (string[])Enum.GetNames(t))
{
if ((((int)enumvalue) & (int)Enum.Parse(t, enumName)) != 0)
output += "[" + enumName + "]";
}
return output;
}
To get value is something like (from above):
if ((enumvalue & MyEnum.FlagA) != 0) then flag is set, else not set
Hope this helps I think I have learnt something at least
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
JTJ said i can do this
[Flags]
enum Stuff {
itemA = 1,
itemB = 2,
itemC = 4
}
then to get the ones set, do this
Stuff myStuff = Stuff.itemA | Stuff.itemB;
....
bool hasItemA = (myStuff & Stuff.itemA) == Stuff.itemA;
Email: theeclypse@hotmail.com URL: http://www.onyeyiri.co.uk "All programmers are playwrights and all computers are lousy actors."
|
|
|
|