|
Hum Dum wrote: How to use same MDB file over LAN network
Place the db on a place that is accessible for all the pc's in the network (that use your program).
Then you need to alter you connectionstring so that it points to the path where the db is.
Where it comes to locks and performance, it depends on how you'v written your program.
Access isn't the best solution for a multi user environment. And depending on how you'v written your code it could cause db locks or strange behavior when more than 1 user is altering the same data.
Only testing will tell you that.
|
|
|
|
|
thanks for reply.
Tom Deketelaere wrote: need to alter you connectionstring
can i use open dialog box control, so that user can locate the MDB file for 1st time, then store this path on local pc for next uses.
Is it correct way?
Tom Deketelaere wrote: And depending on how you'v written your code it could cause db locks
I am using DataAdapter, then uploading all data in datasets, datatable, then updating back the changes back to original DB as user updates.
Its very helpful of your if you point out to some article or reading stuff, as i know very little about distributed/client-server environment.
I want to know in detail.
regards
|
|
|
|
|
Hum Dum wrote: can i use open dialog box control, so that user can locate the MDB file for 1st time, then store this path on local pc for next uses.
Is it correct way?
That would be the best way yes.
To store the path you can use the settings file (go to project properties --> tab settings).
As to the db locks and such, if there only be 10 users the changes of something going wrong are small, but like others have said you might want to consider going to a different server (sql-express), performance will be better and possible locks are handled better.
If you are staying with access, you might want to consider creating a service or a small tool to 'repair and compress' the database, since it will grow with every update/insert/delete you do.
I don't know of any articles so can't link to them.
|
|
|
|
|
Further to Tom's reply, if the data layer is seperate to the client, it would be better to have an process running locally to the server that can manage the access to the Access DB. With ~10 users it is unlikely, unless it is for data entry, to hit concurrency problems.
A better solution would be to look at migrating the database to one which supports multiple users.
Panic, Chaos, Destruction.
My work here is done.
|
|
|
|
|
thanks for reply.
will you plz point me to some article or website from where i can gain the required knowledge?
about server-client approach i know very little.
|
|
|
|
|
Further to Nagys' reply, it is worth planning for the future. If it is intended for 10 users, then plan for 30! Access is not brilliant at multi-user, and you may find bandwidth problems if the DB gets large (as the query is executed at the local machine, rather than on the server hosting the DB.)
I would sugest a client - server approach would be appropriate - nothing too complex, but have a server app to interface with the DB and keep all unnecessary data off the network. This also allows you to control concurrency issues better than just letting several apps access the same DB directly.
No trees were harmed in the sending of this message; however, a significant number of electrons were slightly inconvenienced.
This message is made of fully recyclable Zeros and Ones
|
|
|
|
|
Hi,
i am trying to do a matrix (2X3 cells) in which i want to set each cell to be with different backcolor and text , and to be able to detect a click event on a cell so i could change the cell backcolor and text.
can i do it wuth the TableLayoutPanel control? how?
thanks,
Samy
|
|
|
|
|
samy100 wrote: can i do it wuth the TableLayoutPanel control
Yes.
samy100 wrote: how?
Create your panel, with the rows and columns you want.
Add a label control to each, and set its Dock property to Fill.
Set its TextAlign property to MiddleCenter.
Set each label Click event to the same click handler.
Make your click event look like this:
private void label_Click(object sender, EventArgs e)
{
if (sender is Label)
{
Label lab = sender as Label;
if (lab.BackColor == Color.Red)
{
lab.BackColor = Color.AntiqueWhite;
lab.Text = "Hello";
}
else
{
lab.BackColor = Color.Red;
lab.Text = "Goodbye";
}
}
}
No trees were harmed in the sending of this message; however, a significant number of electrons were slightly inconvenienced.
This message is made of fully recyclable Zeros and Ones
|
|
|
|
|
We want to open an FTP link in remote desktop machine?
after opening the link we need file information on the FTP link.
How would that happen?
Any help would be appreciated........
Thanks
|
|
|
|
|
do you need to get some files from the remote machine ? if so you could directly put ftp commands in a file and you can run it like,
open machine name
username
password
get a.txt
bye
why are you trying to open a link in the relate machine
Education is not a way to escape poverty — it is a way of fighting it.
modified on Tuesday, June 16, 2009 7:46 AM
|
|
|
|
|
Thanks,
we have requirement to open an FTP link which can only be run in remote machines(any port setting is there perhaps).
|
|
|
|
|
what do you mean by opening a FTP link in remote machine ?
Education is not a way to escape poverty — it is a way of fighting it.
|
|
|
|
|
We have to access a file and that file is on a ftp location and that ftp location can only be accessed by remotely connected server.So the steps that we need to take is as :
1-Remote connection to a server
2-after RMC connect to ftp.
3-check the modified date of a file on ftp location.
I think It calrifies all your doubts.
Thanks,
|
|
|
|
|
As far as I know you can keep a binary or a script on a remote machine which can access the server and ftp the new file to the remote machine.
Education is not a way to escape poverty — it is a way of fighting it.
|
|
|
|
|
Hi,
I'm trying to debug a smallish application which crashes approximately every 10 days with an out of memory exception. Specifically, i've established that the problem lies within a single thread, and I suspect I know which object is causing the problem, but I need to find out when copies of this object are being added and removed from the memory.
If this is not possible, could I perhaps have some general pointers as to when an object is generally added and removed from memory? I realise of course that what is likely happening isn't the application running out of physical memory, but running out of address space, but understanding the problem is getting me no closer to a solution!
Any help would be appreciated,
Thanks,
Nil
|
|
|
|
|
Hi,
proper use of try-catch blocks should pinpoint the problem.
I know of three ways to get an OOM Exception:
1.
the most surprising one: some methods throw OOM on bad inputs, most notoriously: Image.FromFile().
2.
you are really running out of memory; typically that means you are preventing objects from being collected. You can watch your app grow, roughly through Task Manager; more correctly by incorporating a display of Environment.WorkingSet in your app.
One way of keeping objects around is by storing references to lots of, or all, objects you create; maybe for debugging, for statistical information, as a cache, whatever. If so, consider the WeakReference class.
3.
you have objects larger than 80KB; those get allocated on the "large-object-heap", which never gets compacted, and hence could become fragmented, resulting in an OOM even when lots of free memory is still around (but each chunk is smaller than the size needed).
Remember: lots of collections (ArrayList, List< T>, etc) are stored as arrays, and such arrays get doubled in size and copied each time their capacity gets exceeded.
IMO you can't reliably design a long running .NET app if you need large objects, unless you:
- either make them all the same size;
- or perform the entire memory management for large objects yourself.
Both of which may be tedious. A third possibility is making your app restart periodically all by itself.
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.
modified on Tuesday, June 16, 2009 6:33 AM
|
|
|
|
|
Luc Pattyn wrote: IMO you can't reliably design a long running .NET Windows app
Fixed that for you!
No trees were harmed in the sending of this message; however, a significant number of electrons were slightly inconvenienced.
This message is made of fully recyclable Zeros and Ones
|
|
|
|
|
AFAIK the fragmentation issue that exists in the .NET CLR is not fundamentally present in Windows itself, so .NET apps have one reason not to be long-lived that Windows apps don't have.
MS could alleviate the problem by adding a CompactLargeObjectHeap() method to the GC class but I don't expect them to do so any time soon.
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.
|
|
|
|
|
Can you change the code? If so, just put some logging in the constructor(s) and the finalizer.
In terms of when an object gets added and removed from memory, in .NET (for reference types) it gets allocated when you new up a type prior to the constructor call. It gets removed at some indeterminate point in the future when its no longer being used by the .NET garbage collector.
Regards,
Rob Philpott.
|
|
|
|
|
Hi all,
I am trying to manage group policies programaticaly, using C#. I have searched through google from last 2 days and find nothing on it. In one forum I have found that I need to add "GPO Admin 1.0 Type Library" from COM reference into my project. But in Visual Studio 2008 (.NET framework 3.5) does not contain it.
So, right now I do not know whether I can do that or not.
All kind of relative suggestions are welcome. Thanks.
|
|
|
|
|
I've done some programming in C# when it comes to user groups and policys (but probably not the way that you're about to do..). For the user group part I used some netapi.dll methods with p/Invoke. For the policy part maybe you could check the System.Security namespace? It's been awhile since I worked with these things so you have to excuse this kinda vague answer :/ Good luck!
|
|
|
|
|
Hi Calla,
Thanks for the reply. I'll surely try the System.Security namspace.
Yesterday, I have found something interesting in MSDN. They are using scripts (JScript, VBScript or Shell Script) for managing Group Policies. But I dont know even 'S' of scripting langauges. Lets see how much I can progress in that foeld with C#.
Bye.
|
|
|
|
|
hi all, i've encountered some mistake with serial port developement.
I use the compact framework 2.0 with visual studio 2008 pro.
I've developped a simple application which do a serialprt.open() on the port COM1.
(i've tested with COM2, COM3 and COM4 too but same exception).
When I deploy the project with visual studio on my Windows Embedded CE 6.0 device all works fine.
But when i reboot the panel pc (an AFL-07A-LX) and when i try to open a COM port I have an exception :
Exception : IOException
Inner Exception : null
Stack Trace :
at System.IO.Port.SerialStream.WinIOError()
at System.IO.Port.SerialStream.CheckResult()
at System.IO.Port.SerialStream.setBufferSizes()
at System.IO.Port.SerialStream.Open()
I'm searching for the solution from 2 days and i've found nothing at all
N.B : i'm french so don't take care to my bad english.
|
|
|
|
|
I am in the same trouble,have you solved it ? if you have solved it ,can you tell me the way? thank you and my email is shineqiujuan@163.com
|
|
|
|
|
Hi,
How i can send mail to more that one person,
i've looked all over the internet and find only the option to add the Bcc (Blind carbon-copy).
Is there any other option to do so, like at the "TO"?
Thanks,
Tamir
|
|
|
|