|
Well, have you thought of setting the forms visible property to false before calling its show method?
|
|
|
|
|
That doesn't work! Calling show just set visible back to true. Also the form still shows up in the taskbar and Alt-Tab menu. Instead I'm just using a Control instead of a Form.
|
|
|
|
|
I'm not sure exactly what you are trying to do, however, do you need to call Show? just instantiate the form, then do what you need.
|
|
|
|
|
I have a problem .. One of my applications is loading DLLs into memory but isnt unloading it.
I want to wirte a program that will get the address of a particular DLL loaded into memory and then unload it...Any ideas ?? Is it possible
|
|
|
|
|
curiousgal wrote:
One of my applications is loading DLLs into memory
By DLLs are you meaning .NET Assemblies or are you meaning C/C++ DLLs?
Once .NET Assemblies are loaded into an AppDomain they cannot then be unloaded unless you unload the entire AppDomain. Not sure what you can do if it is a C/C++ DLL, you could try calling FreeLibrary but there might be hidden functionality relying on that DLL still being loaded.
James
"I despise the city and much prefer being where a traffic jam means a line-up at McDonald's"
Me when telling a friend why I wouldn't want to live with him
|
|
|
|
|
When I use SOAP format or binary format ... C# error that : ImageList is not mark as serliazation ....? How to mark ImageList as serlization ????
- what is PublicTokenType ?
|
|
|
|
|
I have a COM object that returns a binary string in a BSTR. .NET marshals this to a string. The problem is that some of the bytes get dropped when this happens.
As an example, load a PFD file into a byte array. Convert the byte array to a string, and then convert the string back to a byte array (UTF-8). If you compare the two byte arrays, they aren't the same.
I probably haven't explaied this very well, but I hope I haven't made it too confusing. Has anyone had any experience with this, and what can I do to make it work?
Thanks.
They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.
--Benjamin Franklin, 1759
|
|
|
|
|
Do you mean PDF file? If so what has loading the file got to do with COM? I have written quite a bit of code moving, loading PDFs etc. And I do it as Streams and byte arrays and have yet to see a problem.
Perhaps if you explain in more detail I may be able to help.
|
|
|
|
|
The COM object creates the PDF file on the fly. It's a third party control, so there isn't too much we can do about it.
I think my example of loading and manipulating a PDF file isn't the best example, because it doesn't really simulate the problem.
However, just out of curiousity, is there anything wrong with the following code:
<br />
pdfFile.Read(pdfBytes, 0, length)<br />
<br />
string pdfString = Encoding.UTF8.GetString(pdfBytes);<br />
<br />
string pdfBytes2 = Encoding.Unicode.GetBytes(pdfString);<br />
At this point, pdfBytes and pdfBytes2 should be the same, correct? This is not the behavior I'm seeing. I'm new to C#, and probably have made a very obvious mistake, but I would really appreciate someone pointing it out to me.
They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.
--Benjamin Franklin, 1759
|
|
|
|
|
Hmmm, not sure why the behaviour would be like that. I never have to convert the byte array in a string. I just carry it around till I have to write it out. I am not sure what happens behind the scene when the byte array is converted to a string. Maybe some stuff does not convert. What if you create a byte array with simple text or numbers and try the same. If that works then maybe its something in the PDF that does not convert well to a string. Just guessing. Sorry could not be of more help.
|
|
|
|
|
Unicode is UTF-16, which may be slightly different from UTF-8.
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer
|
|
|
|
|
The interop part of marshaling the BSTR to a string was working ok. The problem was with the conversion from a Unicode array to a byte array. The correct converstion is:
<br />
byte[] pdfBytes = Encoding.Convert(Encoding.Unicode, Encoding.Default,<br />
Encoding.Unicode.GetBytes(pdfString));<br />
What I had been trying to convert to UTF-8, which was what was causing the problems. Converting to Default solved the problem.
Thanks for all the comments.
Dan
They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.
--Benjamin Franklin, 1759
|
|
|
|
|
Thanks for posting the solution. Am sure I will need it one day.
|
|
|
|
|
I'm currently converting some Java code to C# and
if have problems converting this:
Java:
public class MySuperClass {
String generateShowMe() {
return "ShowMe from MySuperClass";
}
public void ShowMe() {
System.out.println(generateShowMe());
}
}
public class MyChildClass extends MySuperClass {
String generateShowMe() {
return "ShowMe from MyChildClass";
}
public void ShowMe() {
super.ShowMe();
}
}
When i call MySuperClass.ShowMe() i get of course
"ShowMe from MySuperClass", but when i call
MyChildClass.ShowMe(), i get "ShowMe from MyChildClass".
-> although the child class calls the base (super) class to show the string, the super class calls generateShowMe() from the child class.
How can i to this in C#?
(i currently simulate this, by using a delegate to call generateShowMe())
thanks,
Carsten
|
|
|
|
|
I think you mean
base.ShowMe();
"When the only tool you have is a hammer, a sore thumb you will have."
|
|
|
|
|
obsolete - don't won't to blame my self
see Richard Deeming post for a working sample.
(I'm not a friend of editing post after someone answered it, but i am to "embarrassed" about my post
Thanks to Philip Fitzsimons and Richard Deeming.
|
|
|
|
|
Could be something to do with the fact that MyChildClass.generateShowMe returns "ShowMe from MySuperClass" instead of "ShowMe from MyChildClass" .
cabo wrote:
public class MyChildClass : MyBaseClass {
protected override string generateShowMe() {
return "ShowMe from MySuperClass";}
public new void ShowMe() {
base.ShowMe();}
}
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer
|
|
|
|
|
lol
"When the only tool you have is a hammer, a sore thumb you will have."
|
|
|
|
|
This should work:
C#:
public class MySuperClass
{
protected virtual string generateShowMe()
{
return "ShowMe from MySuperClass";
}
public virtual void ShowMe()
{
Console.WriteLine(generateShowMe());
}
}
public class MyChildClass : MySuperClass
{
protected override string generateShowMe()
{
return "ShowMe from MyChildClass";
}
public override void ShowMe()
{
base.ShowMe();
}
}
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer
|
|
|
|
|
Thanks, i should know that this works...
But it was in a more complex code, with some unfinished API's, switched between C++/C#/Java and the weather was bad...
|
|
|
|
|
i noticed with a rtf box when i select a text that has diffrent size text to it and diffrent colors,and i change the fontstyle of the selected text...it changes the colors, and font of the entire selected string. and doesnt keep intact the individual styles of each char in the selected text.
The teacher at my school asked us to write a method that would take into account each individual char's size, font, color ect. I have been trying to iterate through the rtf.SelectedText collection and isolate each char but how do i get the font and color of a single char in a rtf box ? Does this question make any sense? if not let me know and ill try to rewrite it . anywho any ideas would help...
Jesse M
The Code Project Is Your Friend...
|
|
|
|
|
You need to go through your selection char by char (you can do a select(i,1) in a loop from start of select to end), and then for each char in selection, you can get the color by the oRTFBox.SelectionColor property.
I just had to do something very similar to this. If you get stuck email me (from link) and I can email a code example.
There are only 10 types of people in this world....those that understand binary, and those that do not.
|
|
|
|
|
i whipped something together...maybe you can help me work with it. it doesnt seem to work correctly because the Rtf.Select() requires a start index....how can i find the start index of a specific char in the selected text ? heres the code i just kinda through together.
<br />
char[] chars = GetMainFormData.MainTextArea.SelectedText.ToCharArray();<br />
Color[] cls= new Color[chars.Length];<br />
int count =0;<br />
int tmp = GetMainFormData.MainTextArea.SelectedText.Length;<br />
for(int i =0;i<tmp;i++)<br />
{ <br />
GetMainFormData.MainTextArea.Select(GetMainFormData.MainTextArea.SelectedText[i],1);<br />
Color tmp1 = GetMainFormData.MainTextArea.SelectionColor;<br />
cls[count] = tmp1;<br />
GetMainFormData.MainTextArea.SelectionFont = fd.Font;<br />
GetMainFormData.MainTextArea.SelectionColor = cls[count];<br />
count++;<br />
}<br />
Any ideas ?
The Code Project Is Your Friend...
|
|
|
|
|
Here is some code I used for my latest project where I had to do something similar.
----------------
<br />
int iIndex = 0;<br />
<br />
while ( iIndex < (oBox.TextLength) )<br />
{<br />
<br />
oBox.Select(iIndex,1);
<br />
if (null != oBox.SelectionFont)<br />
{<br />
iSelectedCharTextSize <br />
= getTextSizeFromFont(oBox.SelectionFont);<br />
}<br />
<br />
if (true != oBox.SelectionColor.IsEmpty)<br />
{<br />
strSelectedCharColor <br />
= getHexColorString(oBox.SelectionColor);<br />
}<br />
--------------
You see, though, I went through the whole box from the beginning...not just using what was selected. So you will probably have to find the beginning index based on what is selected. I wouldn't think it would be that hard.
good luck.
chris
There are only 10 types of people in this world....those that understand binary, and those that do not.
|
|
|
|
|
thanks for the code...ill have to work on it tonight =)...anywho...is getHexColorString , getTextSizeFromFont a function you wrote ? what do those functions do if so ?
thanks
Jesse M
The Code Project Is Your Friend...
|
|
|
|