Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chris Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Delphi / SQL Server / Citrix

Status
Not open for further replies.

StevenK

Programmer
Jan 5, 2001
1,294
GB
I developed a number of applications a couple of years ago using Delphi 5. These worked against SQL Server 7.0 databases on Windows servers.
A pair of these has recently been tested against a Citrix server with SQL Server 2000 running.
One of them works OK without a problem - the other will not operate due to a failure connecting to the database.
My trouble is that both of these applications use the same means / method of accessing the SQL Server database(s).
I am making use of a central TDatabase component which I set parameters in, namely server-name,user-name, password, database-name and the name of the ODBC DSN I make use of.
For the two applications this is the same but only one of them operates.
Does anyone have any knowledge of running Delphi applications on a Citrix server ? I'm new to this and was looking for some clues or a list of pit-falls.
Any thoughts ?
Thanks in advance
Steve
 
Citrix : "Think of you sitting at your desk, having your hands and eyes at the citrix-server keyboard/mouse & screen"

That should solve it...?

HTH
TonHu
 
My last big project was running on Citrix with SQLServer 7 and Delphi 5 with no problems. I was pretty green (still am) about Citrix and installed/setup everthing on the citrix server as if it was a normal PC. Had to then 'Publish' the app and on each citrix client machine, add the IP address of the server(as some couldn't see it) before adding the ICA connection.

On the Citrix server, can you connect to the database thru SQL Explorer? ...and all the usernames, groups are setup in SQL Server?

Are both apps Published apps? Does it fail when you try to run the app directly on the Citrix server or on a client machine via citrix client?

How are the ICA connections setup? I think, if you set the Login (in ICA connection's properties) to use the local login, then if their network login changes, it won't connect.

lou
 
Weez, Thanks as ever for your help / pointers.
These are questions I will ask my client come Monday - I have given them a couple of test applications to better understand where / why the problem occurs.
Not having any experience with Citrix I thought I'd put out a 'cry for help' to test the water.
I'll get some more clues next week.

TonHu - am I missing something ?

Thanks,
Steve
 
hi Steven

There's one thing I forgot to mention but I'm unsure whether this problem will still arise with the later versions of Citrix.

In my last project, I had many users doing updates at the same time and the problem arose where the BDE created temp .MB files when performing an update. As a default these files go in the .exe's dir and sometimes 2 users would perform and update and the app. would create 2 .mb files with the same name which caused crashes to occur. I got round this by dynamically creating a unique dir (on the citrix server) for each user when they logged in and deleted the dir when they logged out. I then assigned the dir to the TDatabase dir property which solved the problem.

lou
 
Weez,
Have only just stumbled on your last comment.
My customer has pinpointed the problem with the application in as much as they get a message :
"Directory is controlled by other .NET file.
Directory: C File:SERVER1\FOLDER1\APP1\TEMPBDE\PDOXUSRS.LCK"
Would this come about due to the principal you mentioned ?
I'm really in the dark with Citrix and short of spending the week (and beyond) getting to grips with the know-how and setting up the server I'm looking for simple answers.
The 'TempBDE' folder indicated in the path above is due to the fact that when I start up my application (where-ever it is run from) I create a 'TempBDE' folder and set this as the application's Session.PrivateDir

A further question would be why would one program work and another (similar in principal) fail at this hurdle ?

Any thoughts on these issues now I've stumbled on a little further ?

Thanks again.
Steve
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top