|
im doing a remoting program. I'm just wondering why i always get this error message "An unhandled exception of type 'System.Runtime.Serialization.SerializationException' occurred in mscorlib.dll. Additional information: Because of security restrictions, the type clsServiceApp.CallContextString cannot be accessed. " on my second test in the client side.
Here's my code in the server:
public static void Main(string[] Args)
{
HttpChannel channel = new HttpChannel(8080);
ChannelServices.RegisterChannel(channel);
WellKnownServiceTypeEntry WKSTE = new WellKnownServiceTypeEntry(typeof(clsServiceApp.ContextBoundType),"TcpCBOService", WellKnownObjectMode.SingleCall);
RemotingConfiguration.RegisterWellKnownServiceType(WKSTE);
Console.WriteLine("Press enter to stop this process.");
Console.ReadLine();
}
---------------------------------
Here's my code in my middle tier:
public interface IContextBoundType
{
void ConnectToServer();
string SendToServer(string strValue);
}
public class ContextBoundType : ContextBoundObject//, IContextBoundType
{
private DateTime starttime;
private HttpChannel channel;
public ContextBoundType()
{
Console.WriteLine("#Connecting...");
starttime = DateTime.Now;
}
public void ConnectToServer()
{
channel = new HttpChannel();
ChannelServices.RegisterChannel(channel);
WellKnownClientTypeEntry remotetype = new WellKnownClientTypeEntry(typeof(ContextBoundType),"http://localhost:8080/TcpCBOService");
RemotingConfiguration.RegisterWellKnownClientType(remotetype);
// CallContext.SetData("ServerThreadData", new CallContextString(remotetype==null ? "Could not locate server" : "#Done Connecting..."));
}
public void DisConnectFromServer()
{
ChannelServices.UnregisterChannel(channel);
// CallContext.SetData("ServerThreadData", new CallContextString(remotetype==null ? "Could not locate server" : "#Done Connecting..."));
}
~ContextBoundType()
{
Console.WriteLine("ContextBoundType being collected after " + (new TimeSpan(DateTime.Now.Ticks - starttime.Ticks)).ToString() + " seconds.");
}
public DateTime GetServerTime()
{
return DateTime.Now;
}
public string SendMessageToServer(string strValue)
{
CallContext.SetData("ServerThreadData", new CallContextString(strValue));
// Console.WriteLine(strValue);
return strValue;
}
}
[Serializable]
public class CallContextString : ILogicalThreadAffinative
{
String _str ="";
public CallContextString(String str)
{
_str = str;
Console.WriteLine(str);
}
public override String ToString()
{
return _str;
}
}
-------------------------------------
Here's my code in the client side:
private void SendMessageToServer()
{
clsServiceApp.ContextBoundType();
clsServiceApp.ContextBoundType _service1 = new clsServiceApp.ContextBoundType();
lvwStatus.Items.Add("Sending messages to server...");
string s = _service1.SendMessageToServer(txtMessage.Text);
lvwStatus.Items.Add("Server already received message (" + ") <" + s.ToString() + ">");//_service.GetServerTime().ToLongTimeString() +
txtMessage.Text="";
}
private void Form1_Load(object sender, System.EventArgs e)
{
clsServiceApp.ContextBoundType _service = new clsServiceApp.ContextBoundType();
_service.ConnectToServer();
}
-chinimimita-
|
|
|
|
|
hello,
Can anybody explain me here how I can save some drawed rectangles in a jpg or bmp file?
thx
mathon
|
|
|
|
|
hi mathon,
try something like:
<br />
Bitmap bmp = new Bitmap(100,50);<br />
Graphics g = Graphics.FromImage(bmp);<br />
<br />
g.DrawString("myText",FontFamily.GenericMonospace,Brushes.Black,0,0);<br />
<br />
bmp.Save("filename.bmp");<br />
best regards,
David 'DNH' Nohejl
Never forget: "Stay kul and happy" (I.A.)
|
|
|
|
|
Hello,
Thank you very much for your reply. Beside the drawed rectangles I have some labels on the form. Is it possible to save also these labels in this bmp file? If yes how does it work?
thx
mat
|
|
|
|
|
mathon wrote:
Beside the drawed rectangles I have some labels on the form. Is it possible to save also these labels in this bmp file?
Don't you want to take a screenshot?
http://www.codeproject.com/csharp/ImageCapture.asp[^]
Never forget: "Stay kul and happy" (I.A.)
|
|
|
|
|
Hello,
I tried it with something like that:
public void DrawStringRectangleF(int a, int b, int c, int d, System.Drawing.Color color, string text)
{
Bitmap bmp = new Bitmap(1400,1000);
Graphics g = Graphics.FromImage(bmp);
System.Drawing.SolidBrush myBrush = new System.Drawing.SolidBrush(color);
System.Drawing.Graphics formGraphics = this.CreateGraphics();
String drawString = text;
// Create font and brush.
Font drawFont = new Font("Verdana", 8);
SolidBrush drawBrush = new SolidBrush(Color.White);
// Create rectangle for drawing.
int x = a;
int y = b;
int width = c;
int height = d;
Rectangle drawRect = new Rectangle( x, y, width, height);
// Draw rectangle to screen.
Pen blackPen = new Pen(Color.Black);
//e.Graphics.DrawRectangle(blackPen, x, y, width, height);
g.FillRectangle(myBrush,drawRect);
GraphicsUnit units = GraphicsUnit.Pixel;
g.DrawString(drawString, drawFont, drawBrush, drawRect);
bmp.Save("filename.bmp");
}
But that does not work. The bmp-file is created but nothing in it. And when I want to open the file, an error occurs that the format is incorrect. Does anbody know what went wrong??
patrick
|
|
|
|
|
hi,
it works fine for me... I did only copy&paste... maybe check input parameters. I've called it with DrawStringRectangleF(0,0,100,100,Color.Red,"Hello");
David
Never forget: "Stay kul and happy" (I.A.)
|
|
|
|
|
hello everybody,
I'm creating a web applocation in ASP.Net using C# as page behind code.
I've one form named WebForm1.aspx and there is a textbox control TextBox1 on it. Then I added a class Class1.cs in the application. There are some functions in the class. Now i want to acces the TextBox1 control of WebForm1.aspx in my class Class1.cs . I think we can not acces Webform controls inside a class. Is there any way to acces the control in the class.
Thanks in advance.
|
|
|
|
|
I am trying to display data from a table using the datagrid. This is the code l have used.
cnnOverdueBooks.Open(); <br />
string querySearch = @"SELECT RefNumber, Title, DateOut, DateDue FROM Book WHERE Status = 'On loan' "; <br />
<br />
OleDbCommand cmdDisplayBooks = cnnOverdueBooks.CreateCommand(); <br />
OleDbDataReader drDisplayBooks; <br />
cmdDisplayBooks.CommandType = CommandType.Text; <br />
cmdDisplayBooks.CommandText = querySearch; <br />
drDisplayBooks = cmdDisplayBooks.ExecuteReader(); <br />
grdOverdueBooks.DataSource = drDisplayBooks;
Error message "Complex databinding accepts as a data source either an IList or an IListSource"
Thanks in advance,
Steve
|
|
|
|
|
You can only use databinding with datasets, collections and arrays, not with a DataReader (you're using an OleDbDataReader).
Yes, even I am blogging now!
|
|
|
|
|
Does any one know how to map a network drive using manage c++/C#?
|
|
|
|
|
You either call NetUseAdd API using P/Invoke or try to execute a "net use" command from with System.Diagnostic.Process.Start
Note that if you need the error and status codes of the mapping operation (e.g., access denied, etc), you'll need to choose the NetUseAdd API.
Yes, even I am blogging now!
|
|
|
|
|
Hi,
I have two software system. Each one has a database in SqlServer 2000. One of both have to use another one database and it is better that there was some relation between some tables in two databases. So I think that I must add all tables of first database to second. But DB management will be so difficult because tables of both systems will mixed together.
Can anyone suggest a solution for this problem?
regards,
Mehdi
|
|
|
|
|
If the relations are simple (and a small number), then it's better doing things "by hand", and keep the database separated:
1. Create triggers to enforce what would be foreign keys, and to keep data in sync.
2. Create views to ease SELECTs.
Yes, even I am blogging now!
|
|
|
|
|
Hello
I want to check whether the given file is opened by other application such as notepad,paint,word,etc.
How can I do this in C#?
I tried using CFileStatus class. But did not get the exact info.
Can I use WMI?
|
|
|
|
|
It's not feasible.
You'll face lots of problems, like Word, which will load the file and lock it (or part of it), so if you try to open the file for exclusive access, it'll fail and you know it has been loaded by someone - you just won't know who.
Some programs like notepad, load the file to RAM and don't lock it, so it's even undetectable.
Yes, even I am blogging now!
|
|
|
|
|
hi all readers,
i want to display the image/bitmap or precisely an icon file in the text box or rich text box using C#. how can it be possibly? plz do reply if any one know this.
|
|
|
|
|
The simplest method is using clipborad.
Other method is converting the image into Windows Meta File (Wmf) and preparting the rtf and finally assigning the rtf to the richTextBox.
The first's solution is as below:
string fileName = string.Empty;
if(System.IO.File.Exists(fileName))
{
System.Drawing.Image myImg = System.Drawing.Image.FromFile(fileName);
Clipboard.SetDataObject(myImg, fale);
DataFormats.Format myFormat = DataFormats.GetFormat (DataFormats.Bitmap);
if(this.richTextBox1.CanPaste(myFormat))
{
this.richTextBox1.Paste();
}
}
Regards,
Jay
|
|
|
|
|
To add to what Jay said, the TextBox control doesn't support adding graphics. You must use a RichTextBox or create your own TextBox control.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Im doing this backpropogation network and so far, i think i would've done it faster and with less lines of code in c++. i don't know still getting used to .net :b
IM PROUD TO BE A GMAIL;
|
|
|
|
|
tom_dx wrote:
i think i would've done it faster and with less lines of code in c++.
Probably that means you still need to learn C# Although C++ wins in terms of container and algorithm support, C# has a lot going for it. you just need time to find it.
Christian
I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer
|
|
|
|
|
ya, i don't know, i tried doing friend neuron and saw that there isn't even a friend keyword; so basically im doing this in functions... which i think would make more sense in oop terms than just plain functions..
IM PROUD TO BE A GMAIL;
|
|
|
|
|
The absence of friend classes is one thing that really sucks in C#.
Christian
I have several lifelong friends that are New Yorkers but I have always gravitated toward the weirdo's. - Richard Stringer
|
|
|
|
|
I agree. There is internal modifier, which *sometimes can* help. Bt yes, C# sux in there.
David
Never forget: "Stay kul and happy" (I.A.)
|
|
|
|
|
check out
Object-Oriented Programming in C#[^]
You can use the internal keyword and have both classes in an assembly, nothing outside the assembly can access the internal method.
Gary
|
|
|
|