I am using the smtpclient class to deliver mail to an smtp server
but I want to know the statues of each recipient in my message whether it receives it or not. Ok, my question will be like this is the smtpclient class works in a transaction? which means that its only objective is to deliver the mail message to the smtp server and not to follow whether this server will send it or not?
I'm writing a class that relies on a TcpClient. The class has a Connect() method that starts a new thread reading data from a server. If the Connect() method has previously been called and the TcpClient is in the process of connecting or is connected I want to throw an Exception. When the connection closes I want to dispose of any resources associated with the TcpClient. Is this the correct way to go about it? I'm guessing not.
public void Connect(string addr, int port)
if (b) throw new InvalidOperationException();
Thread t = new Thread(new ThreadStart(delegate
b = true;
tcpClient = new TcpClient();
networkStream = tcpClient.GetStream();
streamReader = new StreamReader(networkStream);
streamWriter = new StreamWriter(networkStream);
string s = streamReader.ReadLine();
SELECT product.name AS Name, product.[desc] AS Description, product.modelNo AS Model, category.categoryName AS Category, product.MRSP AS [MSRP ($)],
product.retailPrice AS [Retail Price], product.[image] AS [Image]
FROM (category INNER JOIN
product ON product.categoryID = category.categoryID)
When this is bounded to the datagridview, it shows the MRSP as the last column.. I want the image column to be the last
Name | Desc | Model | Category | MSRP($)| Retail PRice | Image
NOW IT IS
Name | Desc | Model | Category | MSRP($)| Image | Retail PRice
If, prior to binding the data set to the grid, you pre-define your collection of grid columns and their individual data bindings (DataPropertyName) in the order you want, and set the AutoGenerateColumns property of the datagridview to false, you should be fine.
once i set the AutoGenerateColumns to false, it does not show anything.
You also need to predefine the location of the columns in the grid either programatically, or by editing the columns collection directly in the grid. If you right-click on the grid, and select 'Edit Columns', you can add the columns you want and set various columns properties including, most importantly in your case, the 'DataPropertyName' which should be the name of the field as defined in the dataset/datatable being bound to the grid via the BindingSource.
When an exception in an event handler is not handled, where does it bubble up to?
It's not bubbling up to anywhere in my Windows Form app. The exception itself gets reported in the debugger output, and the event handler terminates at the offending line of code, and my program runs happily along its way - no "unhandled exception" message is displayed anywhere.
The code doesn't even stop when running hosted/in the debugger. If I wasn't watching the output window, I would have no idea the exception is being thrown.
Is this expected?
I can handle this, I guess, by carefully wrapping all the code in my event handler with Try/Catch. However, I wanted some exceptions to bubble up and be handled in my app - specifically, those *I* throw. But they go nowhere. And I'm realizing... where would they emerge, anyway?
I have had weirdness like this before when I attached the debugger to running code and there were PDB files from a different build (build and deploy on Monday, lose PDB files on Tuesday, add enough code [spaces] to change the file slightly, rebuild and try to attach to the process on Wednesday). The PDB are similar enough to allow the debugger to attach, but stepping through causes very odd behavior. Of course the solution for this is to either get the original PDB files, or rebuild the assembly and debug with the new ones.
I have also seen cases where the output window shows a slew of "MissingMemberExceptions" or other system looking exceptions that happen in the background and doesnt appear to affect my program's execution. I assume these are thrown by dependant or underlying assemblies and handled down there, before they bubble up to the calling application. The output window may just be blindly dumping any exception data from the CLR.
What kind of exception / details are in the window? Can you cut/paste that and a sample of the code that is executed right before and after the exception shows in the output window?
I am trying to create an excel chart using reflection. I need to show the chart on a separate form. The chart gets created accurately but the code throws error while copying it to clipboard. Here is the code peice I am using to copy chart to clipboard.
// Copy the chart area to clipboard
oChartArea = oXLChart.GetType().InvokeMember(
"ChartArea", BindingFlags.GetProperty, null, oXLChart, null);
---> Exception in the line below
---> Exception: Exception has been thrown by the target of an invocation.
---> Inner Exception: Select method of ChartArea class failed.
"Select", BindingFlags.InvokeMethod, null, oChartArea, null);
"Copy", BindingFlags.InvokeMethod, null, oChartArea, null);
// get the chart in bitmap object from clipboard
oImage = new Bitmap((Image)Clipboard.GetImage());
// Set the chart as the image for the picturebox
oPic.Image = oImage;
oPic.SizeMode = PictureBoxSizeMode.AutoSize;
oPic.Left = 10;
oPic.Top = 20;
I am able to read the file from database and save it as a mpp file. But when i tried to open in MS Project, its saying the following error,
"Project cannot recognize this file format"
The following is my code,
DataSet ds = new DataSet();
SqlConnection con = new SqlConnection("data source=hariharan;
SqlCommand cmd = new SqlCommand("select reserved_binary_Data
from MSP_PROJECTS where
proj_name = 'TestProject.Published'", con);
cmd.CommandType = CommandType.Text;
SqlDataAdapter ada = new SqlDataAdapter(cmd);
byte contentArray = (byte)ds.Tables.Rows;
int len = contentArray.Length;
FileStream docStream = new FileStream("C:\\testing.mpp",
docStream.Write(contentArray, 0, len);