|
Hi,
I'm looking for a way to convert a Doc file into an image object with c#.
I need this project in order to create an application that will enable the user to give evaluations on paperworks originated by MS Word.
My goal is to create a panel that will enable the user to view the doc as an image and paint on it.
My thinking was to create two panels, MainPanel and ChildPanel. The ChildPanel will be hosted by the MainPanel.
The MainPanel backgroud will be an image of the Word document and the user will be able paint on the ChildPanel.
I use Main and Child panels so I can have it as layers, so if the user like to make changes to his evaluations he can do so by erasing/adding changes to the child panel without altering the main document.
tnx
Leeoz
|
|
|
|
|
Hi all,
I am trying to show the current files which have been opened on my system in my program ...Plz guide me about it.Is there any API for showing the current files opened on my system?
|
|
|
|
|
Use OpenFiles.exe[^] to get the information.
जय हिंद
modified on Saturday, June 13, 2009 4:41 AM
|
|
|
|
|
d@nish wrote: EnumWindows in User32.dll might help as well.
From the doc: The EnumWindows function enumerates all top-level windows on the screen ...
The OP's requirement is to find all the files that are opened. I don't see how EnumWindows() can help.
It is a crappy thing, but it's life -^ Carlo Pallini
|
|
|
|
|
Corrected.
जय हिंद
|
|
|
|
|
Hello!
You can go through the code provided with this article: Listing Used Files[^]
It is a crappy thing, but it's life -^ Carlo Pallini
|
|
|
|
|
|
|
I don't believe there's a repeat property. There IS an event that gets fired when the player changes state, you can catch the state for the track ending, and start it again.
Christian Graus
Driven to the arms of OSX by Vista.
"! i don't exactly like or do programming and it only gives me a headache." - spotted in VB forums.
I can do things with my brain that I can't even google. I can flex the front part of my brain instantly anytime I want. It can be exhausting and it even causes me vision problems for some reason. - CaptainSeeSharp
|
|
|
|
|
|
void MediaPlayer_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)
e.NewState is what you want, and the values come from an enum, they will be an int in .NET. I'm sorry, a quick google is not getting me the state values.
Christian Graus
Driven to the arms of OSX by Vista.
"! i don't exactly like or do programming and it only gives me a headache." - spotted in VB forums.
I can do things with my brain that I can't even google. I can flex the front part of my brain instantly anytime I want. It can be exhausting and it even causes me vision problems for some reason. - CaptainSeeSharp
|
|
|
|
|
Hi all,
In C#.Net, how to choose printer from the window printer list and config the printer selected (e.g. color, page size,...) just like those commercial software packages does when user print document ?
Thanks
|
|
|
|
|
|
See also the PrintPreview control and dialog and the PageSetupDialog, if you want to make things like the commercial packages.
CQ de W5ALT
Walt Fair, Jr., P. E.
Comport Computing
Specializing in Technical Engineering Software
|
|
|
|
|
Im trying to make an app, that i can download my mails from my account.
For the test i have 4 mails, total 200kb. When i download the mails, it takes 30 secs.. aprox.. A LOT! and i dont know how to improve the velocity.
Thanks!
The code that i use to download is this:
ns = networkstream from a TCP, buffer 8192.
private string getemailtest2(int indexservidor)
{
StringBuilder resp1 = new StringBuilder();
bool begin = true;
int compa = 8193;
System.Text.ASCIIEncoding enc = new System.Text.ASCIIEncoding();
while (true)
{
byte[] dataaleer = new byte[8192];
if (ns.DataAvailable || begin)
{
int a = ns.Read(dataaleer, 0, 8192);
}
resp1.Append(enc.GetString(dataaleer).Trim('\0'));
if (begin)
{
compa = Int32.Parse(resp1.ToString().Split(' ')[1]);
begin = false;
}
int leng = enc.GetBytes(resp1.ToString()).Length;
if (leng >= compa)
{
if (!ns.DataAvailable)
{
break;
}
}
}
return resp1.ToString();
|
|
|
|
|
Who is responsible for that mess?
Have you checked the CPU activity, say with Task Manager?
if it is high and you don't get real bandwidth, it indicates you are wasting lots of CPU cycles.
Here are some pointers:
1.
Every iteration of the while loop, you create a new buffer (even when no data available); you read data into it, then trim the entire buffer, i.e. you scan all of it to find out it is empty or only partially filled, whereas Read did return the exact length.
2.
Every iteration of the while loop, you perform an enc.GetBytes() on a string that is always growing; however you already know the previous length, and how much got added. IMO you don't need GetBytes at all.
3.
StringBuilder is said to be cheaper than string for a sequence of operations. However, when it needs to grow, it doubles its capacity by allocating a new array and copying all the data; you can create a StringBuilder with a specific initial capacity, reducing/avoiding the need for such copies.
Suggestions:
1.
with ASCII encoding, what would be the difference between the number of bytes received, and the number of characters in the final text?
2.
throw your code away, and start afresh.
Luc Pattyn [Forum Guidelines] [My Articles]
DISCLAIMER: this message may have been modified by others; it may no longer reflect what I intended, and may contain bad advice; use at your own risk and with extreme care.
|
|
|
|
|
Also:
If you call ToString on the StringBuilder in every iteration in the loop, that will force it to allocate a new buffer and copy the data to it when you continue to add data to it. You lose any benefits of using the StringBuilder, the performance gets as bad as using += on a string. So you will have shuffled around several gigabytes of data before you are done reading the 200 kilobytes.
Despite everything, the person most likely to be fooling you next is yourself.
|
|
|
|
|
Hi ,
Can we get the query to check whether a particular table exist or not in the database.
|
|
|
|
|
Hi,
for SQL and MySQL there is a SHOW command.
This[^] is one of many Google hits.
Luc Pattyn [Forum Guidelines] [My Articles]
DISCLAIMER: this message may have been modified by others; it may no longer reflect what I intended, and may contain bad advice; use at your own risk and with extreme care.
|
|
|
|
|
I have a peculiar bug that's got me baffled. I'm working on a C# winform app in VS2005 and I was trying to make one of its menus dynamic (built from data read from a database). Somewhere along the line the new menu items became doubled so I tried to reverse out the code changes. But no matter what I did these new menu items persisted. I've removed all new code. I've deleted the form's resx. I've emptied the obj and bin directories. I've rebooted my PC. I've saved the form's code in a notepad session, the designer code in another notepad session, deleted the form, then recreated it from the two notepad sessions. The find function cannot locate the text of the new menu items, nor does anything reveal itself when stepping through in debug. No trace shows in the IDE designer. Yet somehow when I run the program there they are!
How is this possible? Where is this being persisted? The workaround was to change the parent menu's ID string, so its not urgent ... but I'd still like to understand what's going on.
|
|
|
|
|
Have you checked the content of the database?
Luc Pattyn [Forum Guidelines] [My Articles]
DISCLAIMER: this message may have been modified by others; it may no longer reflect what I intended, and may contain bad advice; use at your own risk and with extreme care.
|
|
|
|
|
I can't see anything suspicious in the database. Besides, all access is screened through stored procedures and I never coded for menus to be stored or retreived from the database (just a simple function that returned a list of strings from which the 'magical' menus were built - that code has since been removed).
But just to be sure I took the database offline: the 'magical' menus still appear.
|
|
|
|
|
Without seeing your code, I wouldn't know a definitive answer (I probably wouldn't have one, even after seeing your code either ), but is there any chance that your routine is being called twice?
Henry Minute
Do not read medical books! You could die of a misprint. - Mark Twain
Girl: (staring) "Why do you need an icy cucumber?"
“I want to report a fraud. The government is lying to us all.”
|
|
|
|
|
Nope. I've commented out large swathes of code so that now all that happens is the form's constructor calls InitialiseComponents. I've verified this by stepping through every line in debug. Additionally, while the text of the original menus can be found using the IDE's search function, the text of the 'magical' menus cannot be found.
|
|
|
|
|
Another piece of the puzzle: whatever is bringing back these dynamic menus (that I no longer create but still appear) is happening after the form's Load method has run and before the first time the form's Activate method is run. (This was determined by stepping through the code and looking at the number of submenus listed in the IDE's "Locals" window on the last line of the Load and the first line of the Activate ... 14 submenus had been added between these two points.)
|
|
|
|