|
In extension to what Nick said, it's really not possible. Windows doesn't draw what isn't seen. What you see on screen is logically 3 dimensional, but is drawn on a 2-dimensional surface. This is why for effecting painting you use the clipping region to avoid having to draw more of a client area than you have to. What doesn't need to be drawn doesn't get drawn.
Now, this will change in "Longhorn" since "Avalon" is a whole new graphics package written from the ground-up and is similar to SVG (scalable vector graphics) that are drawn and managed by a different mechanism. Winodws 2000 and newer (for Windows platforms based on NT technology) also features layered windows that help get around this expensive painting operation (it manages painted surfaces different), but it still doesn't draw off-screen.
You can find a lot more information about this on http://msdn.microsoft.com[^]. There's "tons" of articles on Avalong, and there's information about layered windows that you can use set. Just search for SetLayeredWindowsAttributes for a reference point.
Software Design Engineer
Developer Division Sustained Engineering, Microsoft
My Articles
|
|
|
|
|
Okay gang,
I need your expertise to help me help out a co-worker. Here's the scenario:
1) We have 160 Win2000 DC's in our company and we are preparing to go to Windows 2003, but we need to compare DIT File sizes on a DAILY basis for every server, to monitor AD growth as we update the Schema and conduct daily business.
2) Currently, we do not have any means of checking the DIT file size other than to manually go to each servers NTDS directory and look at the NTDS.dit file and manually record the size in an Excel spreadsheet.
3) My co-worker asked me to analyze the task and come up with a possible solution that could start out small (30 servers in a test environment) then scale out to the enterprise environment.
Based on the above, does anybody have suggestions that may make this task possible? I'm kind of at a loss at the moment, as I'm buried in another project to fix a RUS issue in one of our Exchange Sites.
Any suggestions and/or code help (C# or VB.Net) are greatly appreciated.
Regards,
- - - -
KoalaCowboy
Knowledge Monger
|
|
|
|
|
Its a relatively easy task.
<br />
<br />
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(MACHINE_NAME + PATH);<br />
System.IO.FileInfo[] fi = di.GetFiles("NTDS.dit");<br />
if( fi != null )<br />
return fi[0].Length;<br />
<br />
|
|
|
|
|
Mark,
Thanks! I'll give that a whirl and see where it takes me.
Your help is greatly appreciated. All the programming I know is 'self-taught' or learned through examples provided by people such as yourself.
Hopefully, I haven't picked up too many 'bad habits' along the way.
Regards,
KoalaCowboy
KoalaCowboy
Knowledge Monger
|
|
|
|
|
|
It was interesting, but no. I just want to kill this worker thread..... why??? just DIE...
/\ |_ E X E GG
|
|
|
|
|
How long does it stay in the processes list? Is it because of the garabage collector?
|
|
|
|
|
try "Environment.Exit()" that will kill it
|
|
|
|
|
How come after I run Application.Exit() on my program, it still exists in the Processes tab of the Task Manager?? Shouldn't .Exit() kill all the threads and everything? I've heard Application.Exit() described as dropping a bomb on your program....
/\ |_ E X E GG
|
|
|
|
|
How do you force the System.Windows.Forms.DataGrid's scrollbars to show?
I have a data grid where the number of rows is greater than the control can accomadate and I have no way of reaching the bottom rows without the vertical scrollbar working.
Ryan Ehrenreich
Applied Strategies Technology
|
|
|
|
|
I am very new to C#, I have tried to make this work but it is very difficult learning this new language.
Scenario: Three salespeople work at Sunshine Hot Tubs - Andrea, Brittany, and Eric. Write a program that prompts the user for a saleperson's initial. While the user does not type 'Z', continue by promting for the amount of a sale that salesperson made. Calculate the saleperson's Commission as 10 percent of the sale amount, and add the commission to a running total for that salesperson. After the user types 'Z' for an initial, display each salesperson's total commission earned.
Here's what I have so far: (I have commented out compiler errors)
using System;
namespace TubSales
{//Namespace
class SalesPeople
{//Class
static void Main(string[] args)
{// Main
char response;
//double Comm;
Console.WriteLine("Please enter your first initial, or type Z to to find your total commision.");
response = GetChar();
while (response == 'A' || response == 'a')
{
Console.WriteLine("Enter the amount of sales you had.");
//CalculateSales();
}
while (response == 'B' || response == 'b')
{
Console.WriteLine("Enter the amount of sales you had.");
Console.ReadLine();
}
while (response == 'E' || response == 'e')
{
Console.WriteLine("Enter the amount of sales you had.");
Console.ReadLine();
}
if (response == 'Z' || response == 'z')
{
Console.WriteLine("Andrea's total commision is {0}.");//,Comm);
Console.WriteLine("Brittany's total commision {0}.");//,Comm);
Console.WriteLine("Eric's total commision {0}.");//,Comm);
}
Console.WriteLine("Have a Nice Day!");
}//Main
//public static double CalculateSales()
//{
//double Sales;
//double Commision;
//Commision = .10;
//double answer;
//inputString = Console.ReadLine(Sales);
//return answer;
//Comm = Sales * Commision;
//}
public static char GetChar()
{
string inputString;
char answer;
inputString = Console.ReadLine();
answer = Convert.ToChar(inputString);
return answer;
}
}//Class
}//Namespace
|
|
|
|
|
What were the compiler errors?
"If a man empties his purse into his head, no man can take it away from him, for an investment in knowledge pays the best interest." -- Joseph E. O'Donnell
Not getting the response you want from a question asked in an online forum: How to Ask Questions the Smart Way!
|
|
|
|
|
1. Use of unassigned local variable 'Comm'
2. The name 'inputString' does not exist in the class or namespace 'TubSales.SalesPeople'
3. The name 'Comm' does not exist in the class or namespace 'TubSales.SalesPeople'
4. Unreachable code detected
|
|
|
|
|
1. you have declared a variable called Comm in the Main() method, but you don't assign anything to it. You appear to try to do this in the CalculateSales() method, but this is a different scope and cannot see the Comm in the Main() method. TIP: the curly braces {} are scope delimiters if you declare something inside a set of braces then code outside them cannot see it.
2. In the CalculateSales() method you have not declared a variable called inputString. Change the line to read string inputString = Console.ReadLine(Sales);
3. See also (1) above. You need to create a variable called Comm in the CalculateSales() method. The line should read double Comm = Sales * Commision;
4. Swap the last two lines of the CalculateSales() method. After a return statement no more code can run, it is therefore unreachable.
Does this help?
"If a man empties his purse into his head, no man can take it away from him, for an investment in knowledge pays the best interest." -- Joseph E. O'Donnell
Not getting the response you want from a question asked in an online forum: How to Ask Questions the Smart Way!
|
|
|
|
|
Thank you, That helped alot.
I know this seems very rudemtary but it's like learning spanish in 7 weeks.
|
|
|
|
|
Your welcome.
Also: Es posible aprender un nivel bueno de la idioma española en siete semanas con el curso de Michel Thomas y después de qué, imerción total en la cultura española. (It's been over a year since I did any Spanish so I may have made some mistakes)
"If a man empties his purse into his head, no man can take it away from him, for an investment in knowledge pays the best interest." -- Joseph E. O'Donnell
Not getting the response you want from a question asked in an online forum: How to Ask Questions the Smart Way!
|
|
|
|
|
Es posible aprender un buen nivel de español en siete semanas con el curso de Michel Thomas y despues de el cual, una inmersión total el la cultura española.
|
|
|
|
|
Thanks
"If a man empties his purse into his head, no man can take it away from him, for an investment in knowledge pays the best interest." -- Joseph E. O'Donnell
Not getting the response you want from a question asked in an online forum: How to Ask Questions the Smart Way!
|
|
|
|
|
hi,
Better try to consice your question with main points. Otherwise no one will try to read.
See in C# what every input you are giving through console is treating as string. And it's your headache to convert it into your required form.
You can use Console.Read() insted of Console.Readline().
static void Main(string[] args)
{
char Responce;
Console.WriteLine("Please enter your first initial, or type Z to to find your total commision.");
Responce=Convert.ToChar(Console.Read());
Console.WriteLine(Responce.ToString());
}
**************************
S r e e j i t h N a i r
**************************
|
|
|
|
|
sreejith ss nair wrote:
Better try to consice your question with main points. Otherwise no one will try to read.
By the time you posted this, I'd already answered Larkdog and his problem was solved 11 hours previously.
"If a man empties his purse into his head, no man can take it away from him, for an investment in knowledge pays the best interest." -- Joseph E. O'Donnell
Not getting the response you want from a question asked in an online forum: How to Ask Questions the Smart Way!
|
|
|
|
|
hi,
Sorry colin i didn't seen any post at that time. His question is there at the end of descussion record and i my net is too very slow.
I am really sorry.
What i mean by that is try to submit consicely. If it is complex problem we need to give detailed explanation. that's it.
**************************
S r e e j i t h N a i r
**************************
|
|
|
|
|
Is there a guideline, maybe from Microsoft, that specifies what to set SmallChange and LargeChange to, possibly as a percentage of the scroll range setting?
Gary Kirkham
A working Program is one that has only unobserved bugs
He is no fool who gives what he cannot keep to gain what he cannot lose. - Jim Elliot
Me blog, You read
|
|
|
|
|
|
thanks
Gary Kirkham
A working Program is one that has only unobserved bugs
He is no fool who gives what he cannot keep to gain what he cannot lose. - Jim Elliot
Me blog, You read
|
|
|
|
|
SmallChange should be number of visible units on the screen. If you're displaying lines of text, small change should do 1 line change. LargeChange should be full page scroll, so if you can see 50 lines of text, it should be 50.
It gets tricker if you're showing something that is not easily divisible to "lines", image editor for example.
Then I would recommend setting SmallChange so that it takes around 25 clicks to scroll full page down and LargeChange as full page scroll.
|
|
|
|