|
Pualee wrote: I just want to clean up some things periodically...
Then use the Session_End event in global.asax.
Pualee wrote: Shouldn't it be possible to loop on the .Keys to compare the active Keys against the keys my application believes are active?
You are confusing session objects with session variables. Each user has one session object that each can contain several variables. The Session.Keys property contains the keys of the variables that has been stored in the session object for the current user.
The server of course keeps track of the active sessions, but it doesn't expose this list to anyone. Probably because items can be removed from the list at any time.
Pualee wrote: Also, would keeping the session data on server side, rather than as cookies, make this possible?
That depends. What is it that you store in the cookies anyway?
---
b { font-weight: normal; }
|
|
|
|
|
How can I get programaticaly the hard disk's manufacter serial number (not the volume number). If not in c#, even in c would be very usefull.
Thanks
protected internal static readonly ... and I wish the list could continue ...
|
|
|
|
|
|
Thank you for your interest, but (there is allways a but...) those methods require XP+ as an operating sistem (beeing dependent on WMI). This is exacly what I've founded myself.
I am curently looking for an other method, whitch should be suported on a 95-98-me-2000 operating system too, or two methods one for XP+ and one for the rest ...
Anyway, the WMI querry didn't returned the corect string, other programs gave me an other result.
Any further ideeas?
PS: Thank you for your help again...
protected internal static readonly ... and I wish the list could continue ...
|
|
|
|
|
Aaah, the same problem I had, although in my case the client wanted it written in VB6. this[^] is what I based my solution on. Sorry, it really is VB6, but it's largely calling onto the Win32 API so perhaps it'll get you started.
|
|
|
|
|
Thanks, you pointed me on the right track...
protected internal static readonly ... and I wish the list could continue ...
|
|
|
|
|
Hy,
I need some tools (classes not exe) to export/trnasform some text(reports) in XLS, HTML, PDF, DBF, XML... format.
Tranks,
Mihai
|
|
|
|
|
Oh that's easy.
using RG = System.ReportGenerator;<br />
<br />
ReportGenerator _generator = new ReportGenerator(new StreamReader(@"c:\sourcefile.txt"));<br />
_generator.OutputType = ReportTypes.Text;<br />
_generator.OutputType = ReportTypes.Html;<br />
_generator.OutputFile = @"c:\outputreport.html";<br />
_generator.Generate();
- Malhar
|
|
|
|
|
Hello,
Thank for your reply. It's very easy what you say, but i don't have the class System.ReportGenerator in my Microsoft .NET Framework 1.1. What framework you use? Or ReportGenerator it's a other class, not from .NET framework. If you fave this class, please send me (mihai@sln.ro).
Tranks,
Mihai
|
|
|
|
|
I was not serious about that piece of code i wrote. There is no class built in .Net framework which allows you to perform such operations.
Each of the formats (Text, PDF, XML, Excel, HTML) are meant for different purposes. There is no one-fit-all solution which allows you to perform any-to-any conversion.
It is up to you to implement the logic for this. For example, you'd have to define how to take care of
a) images in the PDF file when converting to text .. or
b) how to convert a text file containig some article in XML .. or
c) What is it that you want to "convert" from HTML to Excel .. the tags / tables / text ..?
- Malhar
|
|
|
|
|
Can anyone help me?
I have a service written in C# which runs under the System Account, and seems to be working fine. But one of the things i need to do is get the current logged in user (i.e. the person who logged into the workstation), but can't seem to get it.
I’ve tried using the Environment.UserName Property but all this seems to return is the account of person who started the current thread. Does anyone have any ideas how to get the information while running with a service?
Cheers
Paul
|
|
|
|
|
DUKEMAN wrote: But one of the things i need to do is get the current logged in user (i.e. the person who logged into the workstation), but can't seem to get it.
Uhh, I don't think you can get that with 100% certainty. The whole point of services is to insulate your code from requiring a user to be logged in. What would it return when no-one was logged in?
Maybe you could fudge it by iterating over the running processes at some interval and look for User Name not equal to "SYSTEM" or "NETWORK SERVICE" or "LOCAL SERVICE". If someone was logged in, something would be running under their context.
You can get an array of running processes with this code:
System.Diagnostics.Process.GetProcesses()
You can get the contexts of the processes using WMI with code here[^] ( I haven't tried it).
Share and enjoy.
Sean
|
|
|
|
|
Hi Sean,
Having gone over other articles and notes I think you right the only way to get the current user would be to check the running process list and cross match this with the in build accounts and this should get you the current username/s.
Cheers for this
Paul
|
|
|
|
|
Answer me this ...
I have an application that is built in .net 2.0.
It references an assembly built in .net 1.1
What happens internally when my application uses the 1.1 assembly?
Does it create a new process for the 1.1 CLR? Is it seamless?
This is important to me because if there are cross process calls I presume that there will be some sort of performance impact, am I correct?
Thanks
Ryan
|
|
|
|
|
I am not aware if the .NET Runtime (the v2 one) does run the 1.1-code itself (in that case, there should be no performance hit) or if the two runtimes interop (in that case, there WILL be a performance hit) in some kind.
Interesting question, does anyone have some answers?
Cheers,
Sebastian
--
Contra vim mortem non est medicamen in hortem.
|
|
|
|
|
The 1.1 assembly will run in the 2.0 runtime; so there is no impact on performance.
|
|
|
|
|
Some of my forms are taking some time to fully draw (say 1-2 seconds).
During this time, the form flickers, and I can see the controls which have been drawn briefly as black outlined blobs on the screen. This only lasts a second or so, but does not look very professional?
What can I do?
I have tried editing the form Visible properties during Load ..
Form_Load()
{
this.Visible = false;
// rest of code to build and bind controls
this.Visible = true;
}
but it doesn't seem to make any difference at all. I figured putting these in the constructor wouldn't make any difference, as the Load() event is first triggered just as the form is becomming visible anyway!
Any suggestions?
Thanks
"imagine how stupid the average person is ...
now imagine that half the planet is more stupid than that!"
|
|
|
|
|
I don't know exactly why your form flickers, there can be several reasons, but usually it helps if control is set to use double buffer. You can turn on double buffering by add
this.SetStyle(System.Windows.Forms.ControlStyles.OptimizedDoubleBuffer, true);
to contol's constructor.
If you already have double buffer turn on and it still flicker it can be so because of too complicated rendering, slow graphical card or maybe there are some flaws in code. To find flaws in your code we need to see it.
"Please! For the love of God! Can you help me unlearn VB?" -Jeremy Falcon
-- modified at 9:41 Friday 3rd February, 2006
|
|
|
|
|
hmm ... there is no "ControlStyles.OptimizedDoubleBuffer"
only "ControlStyles.DoubleBuffer"
Is the optimised one a customised effort? or a .NET 2.0 feature?
I have tried using the method with DoubleBuffer, but it has had no effect.
"imagine how stupid the average person is ...
now imagine that half the planet is more stupid than that!"
|
|
|
|
|
Martiankeeper wrote: Is the optimised one a customised effort? or a .NET 2.0 feature?
Yes it is a .NET 2.0 feature. In .NET 1.1 it was ControlStyles.DoubleBuffer and it should have the same effect.
"Please! For the love of God! Can you help me unlearn VB?" -Jeremy Falcon
|
|
|
|
|
Second Question ..
All of my forms inherit from a Base_Form class.
If I place:
this.SetStyle(ControlStyles.DoubleBuffer |
ControlStyles.UserPaint |
ControlStyles.AllPaintingInWmPaint,
true);
this.UpdateStyles();
in the constructor for Base_Form .. would that then enable it for all objects in my project?
Do I have to set the Styles for EVERY user control, or just the form?
Do I have to set the styles for EVERY inherited form, or just the Base_Form?
thankyou again
Martiankeeper
"imagine how stupid the average person is ...
now imagine that half the planet is more stupid than that!"
|
|
|
|
|
Martiankeeper wrote: Do I have to set the Styles for EVERY user control, or just the form?
Do I have to set the styles for EVERY inherited form, or just the Base_Form?
1. Yes (but not the UserPaint option, only on ones you draw from scratch)
2. No
xacc.ide-0.1.2.3 Now with full keyboard customization
|
|
|
|
|
Ok, so let me get this straight.
I have a Base_Form class, which is a Windows Form.
In the Base_Form constructor I put the code:
this.SetStyle(System.Windows.Forms.ControlStyles.DoubleBuffer, true);
I then create a form called "MainForm" which inherits from "Base_Form".
I place a number of tab controls and listview controls.
1) Do I need to add any more code for DoubleBuffering to work? (do I need "this.UpdateStyles();" ???)
2) Do I need to manually apply double buffering to the tabcontrols and listview controls?
3) Do I need to apply double-buffering to MainForm, having already placed it in Base_Form?
4) Am I correct in placing the double-buffering code in the constructor, or should it be in the "Load" event?
Last Question.
5) I create a User Control class called MyControl. I drop MyControl onto MainForm. Do I need to add the code "this.SetStyle(System.Windows.Forms.ControlStyles.DoubleBuffer, true);" to the MyControl
class code, or do I set it from the MainForm class' code?
Thankyou ever so much. I know this is a lot of questions, but I really want to fully understand this.
Martiankeeper
"imagine how stupid the average person is ...
now imagine that half the planet is more stupid than that!"
-- modified at 10:25 Friday 3rd February, 2006
|
|
|
|
|
Martiankeeper wrote: 1) Do I need to add any more code for DoubleBuffering to work? (do I need "this.UpdateStyles();" ???)
General answer is YES. See MSDN Doc[^]
Martiankeeper wrote: 2) Do I need to manually apply double buffering to the tabcontrols and listview controls?
You can't. It's protected property. You can apply double buffering only to your own controls(which of course have to inherit(directly or indirectly) from System.Windwos.Forms.Control class).
Martiankeeper wrote: 3) Do I need to apply double-buffering to MainForm, having already placed it in Base_Form?
NO. It's inherited. See the protected property Control.DoubleBuffered to see if your form is double buffered.
Martiankeeper wrote: 4) Am I correct in placing the double-buffering code in the constructor, or should it be in the "Load" event?
It's OK in constructor.
Martiankeeper wrote: 5) I create a User Control class called MyControl. I drop MyControl onto MainForm. Do I need to add the code "this.SetStyle(System.Windows.Forms.ControlStyles.DoubleBuffer, true);" to the MyControl
class code, or do I set it from the MainForm class' code?
You need to add "this.SetStyle(System.Windows.Forms.ControlStyles.DoubleBuffer, true);" line and "this.UpdateStyles();" line to constructor of your MyControl class. Once again, DoubleBuffered property is protected so you can't set it from other class.
There is a nice article[^] on how to creating your own control.
Hope this helps, I'm not native english speaker, my english is limited therefore I can't be more descriptive.
"Please! For the love of God! Can you help me unlearn VB?" -Jeremy Falcon
|
|
|
|
|
Thankyou very much.
Couldn't have asked for a better response.
PS - Your english is perfectly good. I wouldn't have known if you hadn't told me
"imagine how stupid the average person is ...
now imagine that half the planet is more stupid than that!"
|
|
|
|