|
I'have created a program that copies files from one location to another.
Does anyone know if there is a way for me to limit the transfer speed to 1000kbyte/sec?
Currently using System.IO.File.Copy to copy files
Why?
Trying to avoid using all available network capacity.
Alternative solution.
The only solution I've found so far is to time each transfer, and add a little pause between the files.
Andreas
|
|
|
|
|
You can't do it using standard methods. You can't tell the .Copy() method to pace itself and you can alter the network configuration to slow down on just that process.
You can, however, write your own File Copy process that paces itself. Read a block of the source file, write it to the destination, then Sleep for a little bit, read another block, write it, sleep a bit, ...
You could also look into using the Background Intelligent Transfer Service, BITS[^] for short.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
How can I get constuctor params when using inherited ProxyAttribute class?
public class MyProxyAttribute : ProxyAttribute
{
public MyProxyAttribute()
{
}
public override MarshalByRefObject CreateInstance(Type type)
{
return Activator.CreateInstance(MyProxy(type,args))
}
}
I have no idea how can I get the args array.
|
|
|
|
|
|
I'm using odbc to call stored procedures in a way similar to the small amount of sample code below:
OdbcCommand command = conn.CreateCommand();
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "call proc(?, ?, ?, ?, ?, ?, ?, ?, ?)";
OdbcParameter param = new OdbcParameter("paraName", OdbcType.VarChar, 4);
param.Direction = ParameterDirection.Input;
command.Parameters.Add(param);
command.ExecuteNonQuery();
...and then accessing them like this:
command.Parameters["paraName"].Value;
This has been working great; except now I have encountered a situation where the stored procedure is attempting to return an entire table (instead of a single record) as one of its output parameters. How do I handle this? Is there a special Odbctype that I should be using? And then, how I access each record within the table once it has been retrieved?
Thanks!
|
|
|
|
|
Have you tried OdbcDataReader, DataSet or DataTable?
The most exciting phrase to hear in science, the one that heralds the most discoveries, is not 'Eureka!' ('I found it!') but 'That's funny...’
|
|
|
|
|
Instead of an OdbcType? I actually have tried to store the value of the output parameter directly into a dataset and a datatable and it didn't work.
"Cannot convert System.Data.DataTable to System.Data.Odbc.OdbcType"
|
|
|
|
|
It doesn't work that way. If your server side SQL generates a result set (row[s] of data), instead of filling a series of output parameters, you need to provide a way to deal with the results.
A DataReader is a forward only, connected mechanism for dealing with a server side cursor. It can deal with single or multiple result sets, and you read a row at a time.
DataTables and DataSets are disconnected representations of resultsets - a DataSet is sort of an in-memory database which may represent one or many result sets in DataTables, and a DataTable (which exists in a DataSet) is an in-memory representation of a single result set.
If you're going to use a DataReader (the fastest of the bunch if forward only will do it for you), you should be able to use the ExecuteReader method to get the reader and begin dealing with the result set(s).
If you need to be able to randomly access rows from the result set(s), you may need to use a DataAdapter with your command to fill a DataSet or DataTable. This process is slower than using a DataReader (in fact it uses a DataReader behind the scenes to fill the data structures).
You can't, however, execute some SQL on the server that returns a result set, then stick the result set in an OUT parameter and assign it using ExecuteNonQuery or ExecuteScalar. There is no compatible managed type for doing something like that.
The most exciting phrase to hear in science, the one that heralds the most discoveries, is not 'Eureka!' ('I found it!') but 'That's funny...’
|
|
|
|
|
The PictureBox control has a nice property SizeMode that allows you to stretch or shrink the image it displays. I need to shrink an number of images to be used within a TreeView, but I since I am not using a PictureBox, it seems I need to shrink the image first.
Can anyone suggest how I can do this in C#?
Thanks!
Mark
|
|
|
|
|
You'll need to create a new Bitmap that is the desired size and then draw the original image onto the new bitmap:
Bitmap smallImage = new Bitmap(desiredX, desiredY);<br />
<br />
using (Graphics g = Graphics.FromImage(smallImage))<br />
{<br />
g.DrawImage(originalImage, new Rectangle(0, 0, desiredX, desiredY), 0, 0, originalImage.Width, originalImage.Height, GraphicsUnit.Pixel);<br />
}
"I think I speak on behalf of everyone here when I say huh?" - Buffy
|
|
|
|
|
Hi All,
I have a requirement wherein a user wil enter the data into a asp.net webpage hosted by machine A.
Machine A needs to start a C# application(as a service) when data is received and read that data using the same C#.net application, which is processed later on.
My question is, how to read the data from ASP.NET into C# application. and how to automatically start the C# application(as a service) when data is entered into asp.net webpage.
Regards,
Prax.
|
|
|
|
|
I doubt that this is the best solution to your problem but it is one way that you might go about it.
First, I'll go over the service. I don't know why you would be starting this service frequently. If it starts and stops a lot then it perhaps should not be a service but just a regular application. Do you have a good reason for that? If in really needs to be a service I would just have some code that checks if it is running. If not, there is a program called installutil (it is a part of the .NET framework so it should be there on the machine already. Also, to start processes lookup System.Diagnostics ). You can use that program to install it. Then, you can put this code in your installer
<br />
private void serviceInstaller1_AfterInstall(object sender, System.Configuration.Install.InstallEventArgs e)<br />
{<br />
ServiceController sc = new ServiceController("The name of the service");<br />
if ( (sc.Status.Equals(ServiceControllerStatus.Stopped) ) )<br />
sc.Start();<br />
}<br />
That way, when you install the service it will start running.
Now, as to how no get the information to the service, that IS a bit tricky... What are you trying to get there? If you do end up using an application then you could consider passing it as a paramater? If you use a service... well, you could consider possibly using the MSMQ. Just serialise all your data and send it that way.
I hope this helps,
Please ask me if I can explain any of the stuff better!
Jim
Did I post well? Rate it! Did I post badly? Rate that too!
|
|
|
|
|
Hi Jim..
Thanks for the response. Let me put my question in the right way. A user enters some request in to a browser. The request/data has to be transferred from the asp.net application on the server to another application on the same web server. How could I do this? How can my asp.net application communicate with another C# application. (I guess thru sockets.) How cud I open and transfer data thru sockets from asp.net application??
u'r help is greatly appreciated.
Prax.
|
|
|
|
|
Hi,
In VS 2005, when you click the triangle of the 'Text' property of a TextBox, a multiline input box appears.
Does anybody know how to do this with a custom object which has a text property?
tia.
|
|
|
|
|
What is that custom object
|
|
|
|
|
Just a plain user defined object, with properties like 'Id', 'Name', 'Text', etc.
|
|
|
|
|
Hello,
I've serious problems with dataview/databindings.
Assume the following:
I've got 2 dialogs.
- The first one has a datagrid and five textboxes attached to a dataview.
- The second one is created by the first with a DataRowView-Object, and has five textboxes and
a scrollbar attached to this row.
i)
updating a textbox in my first dialog shows changes only if i activate the datagrid, and vice versa.
ii)
updating a textbox in the second dialog shows changes in first dialog only if i activate the controls, too.
iii)
if i use my scrollbars in the second dialog to change the bound values, i immediately see changes in my first dialog, but nothing happens in the second one.
iv)
if i change the textboxes in my second dialog, and then use the scrollbars, i see no changes after all...
could someone please check out the project, and write one/two sentences to my points? i'm getting mad on this.
thanks
michael
testproject
|
|
|
|
|
Can any one help to me in using RandomNumberGenerator class member functions. Early response is appreciated.
|
|
|
|
|
The class RandomNumberGenerator is an abstract class - that means that you cannot create instances of this class. You can only create instances of class which extends the RandomNumberGenerator class.
Then it should be no problem to use the member functions.
(if you meant something different please tell and give some more info)
|
|
|
|
|
Use System.Random instead.
|
|
|
|
|
Hello C# Developers..
Is it possible to enable a specific row in a DataGrid?I mean your grid enable property is set to false but you want to update a specific row....
If yes ,how can I do this?
Please Help...........
|
|
|
|
|
Is there a way to avoid the flickering when resizing the WebBrowser control in .NET 2.0?
|
|
|
|
|
|
I can wait for it but will they fix it?
|
|
|
|
|
Get out your crystal ball and ask it...
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|