|
Thanks! I am testing this right now..I have a small doubt bit trivial.
I use embed the NetworkStream in a StreamReader like this
NetworkStream aStream = _client.GetStream();
StreamReader reader = new StreamReader(aStream);
calling reader.Close() does it safely close also the NetworkStream
underlying or do I have to keep a reference to the NetworkStream and close it explicitly?
|
|
|
|
|
I'm trying to run this code within Visual Studio 2010, however, having set a breakpoint at line 39, the execution does not seem to get to line 39 where I have set a break point. As a matter of fact, when checking under Visual Studio 2010 Server Explorer > Servers > {puter name} > Application > ASP.NET 4.0.30319.0, there are no relevant events written. I also tried checking within the Windows Event Viewer. For Win XP (Control Panel > Administrative Tools > Event Viewer > Application sub node).
Is this a bug with .NET 4 or Visual Studio 2010? Does this issue happen to anyone else?
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Drawing;
using System.Diagnostics;
public partial class ErrorTestLog : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void cmdCompute_Click(object sender, EventArgs e)
{
try
{
decimal a, b, result;
a = Decimal.Parse(txtA.Text);
b = Decimal.Parse(txtB.Text);
result = a / b;
lblResult.Text = result.ToString();
lblResult.ForeColor = Color.Black;
}
catch (Exception err)
{
lblResult.Text = "<b>Message:</b> " + err.Message + "<br /><br />";
lblResult.Text += "<b>Source:</b> " + err.Source + "<br /><br />";
lblResult.Text += "<b>Stack Trace:</b> " + err.StackTrace;
lblResult.ForeColor = Color.Red;
EventLog log = new EventLog();
log.Source = "DivisionPage";
log.WriteEntry(err.Message, EventLogEntryType.Error);
}
}
}
NOTE:
1. Beginning ASP.NET 3.5 in C# in 2008 - From Novice to Professional (ISBN: 978-1-59059-891-7) P.268 (306)
Jon
|
|
|
|
|
Does your exception block throw an exception? Do you have a generic exception handler? Does your IIS user have access to write to the event log? Did you use System.Diagnostics.EventLog.CreateEventSource and System.Diagnostics.EventLog.WriteEntry? (Probably not, since you new'd EventLog)
|
|
|
|
|
Does your exception block throw an exception?
No, but throwing the exception prior to calling the event log makes the logging code unreachable, and, this works fine within Visual Studio 2010.
Do you have a generic exception handler?
No, because it is not required for now.
Does your IIS user have access to write to the event log?
I am using Administrator on a local PC, what user does VS 2010 use (to confirm)?
Did you use System.Diagnostics.EventLog.CreateEventSource and System.Diagnostics.EventLog.WriteEntry? (Probably not, since you new'd EventLog)
System.Diagnostics.CreateEventSource is not even shown up within Visual Studio 2010, even though it's a static method. Problem with Intellisense maybe.
Jon
|
|
|
|
|
|
It's interesting. I'm noting that when I load my testpage on the browser (Google Chrome, Mozilla FF) the page remains 'waiting for cache...' when building it. Code here.[^] Screendump here.[^
Related links
Article 1[^]
Article 2
Jon
|
|
|
|
|
I have been using XNA for a while now and have gotten comfortable accustomed to its elegant design however a quick read on my upcoming University course shows that I will need to learn Direct X in C++ soon...
Would continuing to learn XNA benefit me for what awaits?
(I do know C++ by the way )
|
|
|
|
|
Yes, a lot of it works the same. Not everything though - XNA makes some things easier by hiding "the complicated stuff" if you do things the normal way. Of course, as soon as you need something out of the ordinary, things get dirty - such as setting up a non-default device on a non-default adapter (so it's hard to get it to work with PerfHUD and I never even got it working 100%).
The rendering itself is pretty much the same, but with less options in XNA.
|
|
|
|
|
Hi!!
i need to know about TSR(terminate and stay resident) programs in C#...
plz.. guide me...
i wanna learn how to make TSR programs in C#
|
|
|
|
|
TSR? I haven't seen that notion for the last 10 years. If you mean a program that loads once, and sits idle waiting to help you somehow, maybe visible in the task bar (with a NotifyIcon and a ContextMenu), yes those are just plain Windows applications. Examples are plenty here and elsewhere; I have one here: LP#TrayIconBuster[^]
|
|
|
|
|
Since Windows allows multiple programs to be loaded at the same time, TSR is no longer something special. Your C# programs are already TSR programs.
|
|
|
|
|
TSRs are rare (Extinct?) these days, I don't think it is possible in .net.
You can look at writing a service in .net (plenty of stuff on the Internet about .net services), this will probably achieve what you need.
[edit]
You can tell who the old people are on this forum, because we know what a TSR is !
Dalek Dave: There are many words that some find offensive, Homosexuality, Alcoholism, Religion, Visual Basic, Manchester United, Butter.
Pete o'Hanlon: If it wasn't insulting tools, I'd say you were dumber than a bag of spanners.
|
|
|
|
|
My flight sim requires 620k of base memory do I don't like pesky TSR's.
|
|
|
|
|
Make sure you have sufficient EMS and XMS. And write the IRQ and DMA for your sound card on the side of the monitor...
|
|
|
|
|
Wow, I forgot all about that, kicking TSRs into upper memory with EMM386 when wanting to play F15 Strike Eagle. Happy days!
Dalek Dave: There are many words that some find offensive, Homosexuality, Alcoholism, Religion, Visual Basic, Manchester United, Butter.
Pete o'Hanlon: If it wasn't insulting tools, I'd say you were dumber than a bag of spanners.
|
|
|
|
|
|
Dear all.
I want to access the user.config file from the installer itself, the problem is that I don't know how to get the path of the newly installed application. I know that the user.config file for my main application is somewhere in "'user'\AppData\Local\.... but I don't know how to access this area from the installer itself.
In my main application it is very simple, I just call:
Configuration _usrConfigLoc = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
Inside the installer I have tried:
Configuration _usrConfigLoc = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal); This returns the path of the config file of the installer (and not my main application)
Does anybody have a way to find the freshly installed user.config file from the installer application?
|
|
|
|
|
protected override void OnAfterInstall(System.Collections.IDictionary savedState)
{
string t_path = this.Context.Parameters["assemblypath"].ToString();
Configuration _usrConfigLoc = System.Configuration.ConfigurationManager.OpenExeConfiguration(Path.Combine(t_path,"user.config"));
base.OnAfterInstall(savedState);
}
|
|
|
|
|
Thanks for the quick reply, however this doesn't work exactly as I want to.... When running this code I get the C:\Program Files\..... folder and the corresponding .config file.
However I want to access the .config file which lies in:
"Users\user\AppData\Local\CompanyName\AssName++++\VersionNo\user.config"
Any ideas?
|
|
|
|
|
Application.UserAppDataPath
It'll return like follow:
"C:\\Documents and Settings\\mis-hongwenshi\\Application Data\\ccc\\WindowsApplication11\\1.0.0.0"
|
|
|
|
|
Thanks again for the very quick replies, however my problem is that I want to find the main application path and not the installer path.
If I call Application.UserAppDataPath inside the installer it gives me:
C:\Users\Kåre Tragethon\AppData\Roaming\Microsoft Corporation\Windows Installer - Unicode\5.0.7600.16385
I want to be able to find the main application path:
C:\Users\Kåre Tragethon\AppData\Local\Tragethon_Teknikk\EasyNetTools.exe_Url_mxn53vo4iinbepot2fslrsybsd0vtoiz\0.8.4.9
Let me know if anything is not clear and I will try to explain some more.....
|
|
|
|
|
How about this
AppDomain.CurrentDomain.BaseDirectory
I think you deploy the project use the clickonce,am I right?
|
|
|
|
|
Thanks again for the very quick replies, and for helping me out and sorry for my bad English and explanations.
No I don't use clickonce. I will do some more explaining:
I have a main project (main application) which can be installed on any computer. This application contains user settings (user.config) which lies in the following directory:
C:\Users\Kåre Tragethon\AppData\Local\Tragethon_Teknikk\EasyNetTools.exe_Url_mxn53vo4iinbepot2fslrsybsd0vtoiz\0.8.4.9
This is the standard location of user settings file, however when the main application changes version a new folder is created, e.g.:
C:\Users\Kåre Tragethon\AppData\Local\Tragethon_Teknikk\EasyNetTools.exe_Url_mxn53vo4iinbepot2fslrsybsd0vtoiz\10.8.4.9
I also have an installer application in my project (the standard VS built-in installer). When I un-install the application I want to access the user.config file and get all the settings from this file (and I will save all the settings in the TEMP directory) so that when I install the application again I am able to retrieve all the settings (access the user.config file and write all the previously saved settings).
Most often the reason for uninstall->install is that I have made a new version of the software and therefor I cannot rely on a static path to the user.config file, I will have to get it programmaticly.
|
|
|
|
|
|