|
well i got it sorta working. The thing I'm having trouble with is one of the cells is merged
D to G
if i insert values "('A,'B','C','D')"; i get an error saying it can't expand.
I also tried putting '' for column e,f,g and that didn't work either.
Any idea how to insert a value into the merge cell? i tried to find some info online about this but came up try.
|
|
|
|
|
I have developed a C# application. The application's main page contains a Web-Browser control. I will load a dynamic website in that web-browser control.
The application runs on the task bar. The application works fine for some time, after that it hangs. I am not able to continue to work on that application. Finally i have to kill the process and then have to restart to work on that.
The dynamic website is also developed using asp.net, C#.
My Question is
Is there any possibility that my application hangs due to some problems in dynamic website?.
I have checked the win application code, i couldn't find any hanging loops.
Please advice on the various possibilities that an application can hang.
Thanks,
Balaji.R
|
|
|
|
|
BalajiRamasamy wrote: Is there any possibility that my application hangs due to some problems in dynamic website?.
Imposible. Server creates HTML corresponding script. It isn't limited to ASP.NET, even Python and PHP does that. Webcontrol only renders your HTML. It does not get aspx page it self or a php script.
BalajiRamasamy wrote: I have checked the win application code, i couldn't find any hanging loops.
This could happen because inproper use of threads. It isn't limited to loops.
|
|
|
|
|
Hi Saksida,
Thank you for your reply. I will check all the threads now and I will post if I have any problems.
Thanks,
Balaji.R
|
|
|
|
|
There is an infinite number of ways for an application to hang; the majority of them involve programming errors. Since you didn't tell much about the content of your app, I have to speculate. I suggest you carefully read this[^].
|
|
|
|
|
hi,
i have a datagridview bound to a datatable.now i want to swap the rows in datagridview but it is giving exception dat row insertion is not possible in datagridview bound to a datatable.is there any way to do that.
|
|
|
|
|
Message Closed
modified 23-Nov-14 6:42am.
|
|
|
|
|
|
In the gridview control a data view is assicated with the grid. Hence you might not be able to change the Grid display without changeing its underlying control's "view" (I am refering to the DataView object here). Hence you may try changing the datatable as per your requirement and "re-bind" the updated DataTable object. Thanks,
Arindam D Tewary
|
|
|
|
|
Hi
Can any body know how to create Virtual Drive using windows app.
exa:
Local drive (Z 25GB
and also i want to create & save the files in the Virtual Drive(Z
Thanks in advance..
Pawan
|
|
|
|
|
|
Can you plz send me the actual link (Direct URL)
Thankyou.
|
|
|
|
|
Pawan Kiran wrote: Can you plz send me the actual link (Direct URL)
Let me think.......NO.
Cant you see a Download link?
And you need to download both Dokan Library and Dokan .NET binding
|
|
|
|
|
|
I'm having trouble following along with your question. I like that you've shown the layout of your XAML, but if you actually showed the XAML you used then I could paste it into Kaxaml or Visual Studio and give it a try myself (I'm not about to type the XAML myself only to find out that you left off some property in your pseudo-XAML). Also, here are some general suggestions for how to ask a question:
- In the future, using the WPF forum will likely generate more replies, since this is really a WPF question.
- When using a PRE block to surround code or text, make sure to specify the LANG attribute. For example, the PRE you have above should probably have a LANG attribute set to "text", which will make it so "this" isn't blue (I think the default LANG, when you don't specify one, is "C++"). A good LANG to use for XAML code is "xml".
Maybe I'm having trouble visualizing what you mean because I don't have the XAML to reproduce your issue, but you may want to restate your question... I don't quite understand it.
|
|
|
|
|
I'm sorry. I hadn't realized there was a WPF forum. I will repost there with the specific details.
|
|
|
|
|
While logged in as an administrator in Windows 7,I create a directory(RS)in the ProgramData directory and a text file. I then write a string to the file. When I log in as a User account, I am able to write to the created file as long as I add the second Access Rule for the user. It does not make any sense to me why I have to add this second rule. I have tried applying the same permissions from the second User rule to the first User rule, and it still will not allow the User account to write to the file. Why do I have to add this second rule? Also why is it that FileSystemRights.FullControl is not really what it claims to be? After all if I gave someone full control of my car they would assume they could do anything with it, wouldn't they?
StringBuilder sbPath = new StringBuilder(40);
sbPath.Append(Environment.GetEnvironmentVariable("ALLUSERSPROFILE"));
sbPath.Append(@"\RS");
// Create a DirectorySecurity object
DirectoryInfo dInfo = new DirectoryInfo(sbPath.ToString());
if (!dInfo.Exists)
{
// Add ACL entrys to Directory before it is created
DirectorySecurity dSecurity = new DirectorySecurity();
dSecurity.AddAccessRule(new FileSystemAccessRule(new NTAccount("Administrators"),
FileSystemRights.FullControl | FileSystemRights.Write, InheritanceFlags.None,
PropagationFlags.None, AccessControlType.Allow));
dSecurity.AddAccessRule(new FileSystemAccessRule(new NTAccount("Users"),
FileSystemRights.FullControl | FileSystemRights.Modify | FileSystemRights.Synchronize,
InheritanceFlags.None,
PropagationFlags.InheritOnly, AccessControlType.Allow));
// *** Need this rule added in order for a user login to get access. Why?
dSecurity.AddAccessRule(new FileSystemAccessRule(new NTAccount("Users"),
FileSystemRights.FullControl, InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit,
PropagationFlags.InheritOnly, AccessControlType.Allow));
dInfo.Create(dSecurity);
sbPath.Append(@"\thefile.txt");
// Create directory under C:\ProgramData
FileStream fs = File.Create(sbPath.ToString());
StreamWriter sw = new StreamWriter(fs);
sw.WriteLine("Some Data");
sw.Close();
fs.Close();Craig
|
|
|
|
|
I wrote a tip[^] about this the other day.
Only the user that creates the files has write/modify rights. This means that even a member of the administrators group doesn't have write/modify without UAC if created by a standard user.
All users naturally have read/execute rights.
|
|
|
|
|
I took a good look at your CommonApplicationData class. It's easy to understand just like most of the documentation I have read on this subject. My experience how ever is different than my understanding. I took the same FileSystemRights that you are using in your class and applied them to my program. Logged on as an Administrator and I am not able to create a simple text file in the directory after I create it. As an administrator I don't have the rights to access it from the same program that created the directory. This makes no sense to me. I am applying the rights like this:
DirectorySecurity dSecurity = new DirectorySecurity();
dSecurity.AddAccessRule(new FileSystemAccessRule(
"Administrators",
FileSystemRights.Write |
FileSystemRights.ReadAndExecute |
FileSystemRights.Modify,
// InheritanceFlags.ContainerInherit |
// InheritanceFlags.ObjectInherit,
// PropagationFlags.InheritOnly,
AccessControlType.Allow));
dSecurity.AddAccessRule(new FileSystemAccessRule(
"Users",
FileSystemRights.Write |
FileSystemRights.ReadAndExecute |
FileSystemRights.Modify,
InheritanceFlags.ContainerInherit |
InheritanceFlags.ObjectInherit,
PropagationFlags.InheritOnly,
AccessControlType.Allow));
Note: the commented out sections have been tried both ways. I'm sure that I am not understanding this properly, but at this point it seems pretty crazy that it won't let me create a file from the same program that created the parent directory for the intended file. Even though I am logged in as an Administrator!!! According to MS documentation FileSystemRights.Write should give me the right as an administrator to create files. So what's up?Craig
|
|
|
|
|
Ok,it is working for me now. The main thing I am doing different is creating the file first, then obtaining the DirectoryInfo object. Before I was creating the DirectoryInfo object, adding the Access Rules and then creating the file. Your sample code in the tips section gave me the idea to change what I was doing. Thanks for your help. Craig
|
|
|
|
|
No problem, glad you've got it sorted
|
|
|
|
|
Hello,
I am developing a windows service that will process
xml files as they come in.
I have a FileSystemWatcher that is watching a folder
and processing the files when the fileSystemWatcher1_Created
event is raised.
I created a FileProcessor class that handles processing a file,
it splits the incoming xml file into many different files and
then pushes data to a database using sqlBulkCopy, etc.
So right now my code looks like this...
private void fileSystemWatcher1_Created(object sender, FileSystemEventArgs e)
{
Logger.AddInformation(string.Format("File {0} {1}.", e.Name, e.ChangeType));
FileProcessor fileProcessor = new FileProcessor(e.Name);
bool retValue = fileProcessor .ProcessFile();
Logger.AddInformation(string.Format("Processed File {0} {1}.", e.Name, retValue ? "Successfully" : "Unsuccessfully"));
}
But I have read that the FileSystemWatcher can be unreliable in some
situations so I wanted to build in a backup mechanism that polls
and checks the folder periodically for files that may have been missed,
or were already in the folder when the service was started, etc.
So my goal was to have some kind of object that maintains a queue
of files that need to be processed.
Then when the fileSystemWatcher1_Created event is raised instead of
processing the file at that time I would just add the file to the queue.
And also when the polling if I encountered a new file I would add it to the
queue as well (making sure that file was not already processed or already
on the queue).
Problem is I'm not really sure how to implement this.
I'm imagining I may need another Thread or Threads.
I have some code that creates another thread and uses a timer so that
could potentially be my backup polling mechanism running every x seconds
scanning folder and adding files to the queue.
But I still don't fully understand how to make it work.
I'm feeling like something would need to manage the queue and keep
processing the files until it's empty, and not sure if that should be
happening on the main windows service thread or a separate thread, etc.
I'm trying to keep the design as simple as possible and hopefully limit it
to just 1 windows service.
I just want to process the files 1 by 1 anyway, so I'm not looking to spawn
a new thread for every file or anything like that.
Can anyone point me in the right direction?
Maybe slap together some skeleton code that would help me understand.
Or are there any good articles or examples of doing something like this or
a design pattern I should look into?
Thanks!modified on Tuesday, March 2, 2010 1:29 PM
|
|
|
|
|
If I understood your real intention, I can help.
You will need a HashSet<string>;
A ManualResetEvent;
And two threads.
One thread can look like this:
while(!stopRequested)
{
GetsAllFilesInTheDirectory
lock(hashset)
AddAllFilePathsToTheHashSet.
if at least one file was added, set the manualResetEvent.
Wait for some time (a minute?)
}
The other thread will look like this:
while(!stopRequested)
{
manualResetEvent.WaitOne();
if (stopRequested)
break;
manualResetEvent.Reset();
lock(hashset)
{
foreach(var path in hashset)
{
... do what you need...
}
hashset.Clear();
}
}
And, the event of the file created, you must:
lock(hashset)
add the path of the file to the hashset.
manualResetEvent.Set();
And that's all.
When finishing your application, you must set stopRequested (which must be volatile) and also must set your manualResetEvent.
|
|
|
|
|
That appears to be rather memory-intensive.
And it doesn't appear to address existent files being updated or replaced (or still being written?).
|
|
|
|
|
I am only saying how it is possible to do it the way the original poster asked.
When I do something "like" that I always consider that processed files will be removed from that directory (in general, go to a OK or Error folder), and that files are never changed. I really don't know what's the intent of the original poster, but I think I answered it.
Also, it does not uses much memory, as a single database connection (as you suggest) needs to keep an active TCP/IP connection (and depending on the driver will have a secondary thread of it's own).
|
|
|
|