473,394 Members | 1,739 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,394 software developers and data experts.

Timeout while DDE linking to a VB application.

Now that it finally works, I'm in the process of converting my large
rapid-prototyped Access app into production VB, one DDE-linked piece at
a time. One piece now already in VB takes ~2 seconds to run all by
itself, but when I start running other gigantic resource hogs like
Dragon NaturallySpeaking and SAPI at the same time, its execution time
goes WAY up - past the 5 seconds needed to time out a DDE link, so I get
an Error 286 DDE LinkTimeout error from a DDEExecute statement in the
remaining unconverted Access code.

There are plenty of postings about related problems, all saying to
adjust the LinkTimeout property. Unfortunately, there doesn't seem to be
a LinkTimeout property in the Access 97 that I am using.

Is there some way past this problem that hopefully doesn't require
complete reconceptualization of the interfaces?

Thanks in advance for your help.

Steve Richfie1d
Dec 25 '05 #1
3 3698
DDE, as far as I know, has only been kept around to maintain compatibility
with past efforts, and has had problems in the last few releases. It's not
something I've ever had need to use, even when it was "current technology",
though... COM automation replaced DDE in the development arsenal, and might
be a better choice for communication.

Without a good deal more information, I wouldn't be able to offer
suggestions for alternatives. Yours may be an exception, but I have rarely
seen an Access database application that would benefit from conversion to
VB, in a client-server environment. I have seen quite a few that appeared to
be Access written as though it were VB, and which could stand extensive
redevelopment to use Access to full advantage.

Perhaps with some clarification, someone might be able to suggest an
approach that would work for you.

Larry Linson
Microsoft Access MVP

"Steve Richfie1d" <St***@NOSPAM.smart-life.net> wrote in message
news:41*************@individual.net...
Now that it finally works, I'm in the process of converting my large
rapid-prototyped Access app into production VB, one DDE-linked piece at a
time. One piece now already in VB takes ~2 seconds to run all by itself,
but when I start running other gigantic resource hogs like Dragon
NaturallySpeaking and SAPI at the same time, its execution time goes WAY
up - past the 5 seconds needed to time out a DDE link, so I get an Error
286 DDE LinkTimeout error from a DDEExecute statement in the remaining
unconverted Access code.

There are plenty of postings about related problems, all saying to adjust
the LinkTimeout property. Unfortunately, there doesn't seem to be a
LinkTimeout property in the Access 97 that I am using.

Is there some way past this problem that hopefully doesn't require
complete reconceptualization of the interfaces?

Thanks in advance for your help.

Steve Richfie1d

Dec 26 '05 #2
Larry,
DDE, as far as I know, has only been kept around to maintain compatibility
with past efforts, and has had problems in the last few releases. It's not
something I've ever had need to use, even when it was "current technology",
though... COM automation replaced DDE in the development arsenal, and might
be a better choice for communication.
It has the considerable dual advantages of being both simple and
operable on just about any platform from'95 to XP, from Office '97 to
C#, etc. When it fails, it is pretty obvious what the problem is.
Further, it provides COMPLETE isolation between applications - well
almost complete as my problem illustrates.

Note in passing that I am also having problems with COM for the very
same reasons! Dragon NaturallySpeaking uses COM for its internal
communication, and RPC calls also have similar completion times
associated with them, and sometimes THEY are timing out, which causes
errors in its speech recognition! Unfortunately, the builders of this
product protected it from having its priority adjusted, so I can't just
jack it up when I know that CPU cycles are getting tight. Unfortunately,
I can't even see these problems from my application.

This is a "conversational" system, which means that both speech
recognition and speech synthesis are running, sometimes at the SAME
TIME, e.g. you pause while speaking and the computer starts talking back
at you WHILE it continues to figure out what you just said and how to
fully respond to it. Such systems are and will probably always be
overloaded, because if they aren't overloaded, then someone will just
crank up the amount of analysis being done until they are overloaded.
This is now often done automatically in some AI software. By their
nature, overloaded systems always have unpredictable delays in their
internal communications, especially when priorities are being jerked
around every second or two, e.g. shifting priority from recognition to
synthesis as recognition proceeds while the computer is speaking. This
is a little like "tournament mode" in some chess playing programs - they
are ALWAYS busy, even when it is your turn. Hence, whatever I do must
NOT involve any short fuses, be they DDE or COM in nature.

To illustrate, Dragon NaturallySpeaking runs at about the same speed on
a 2GHz system as it does on a 300MHz system!!! Why? It plans to keep up
with real time, and adjusts its depth of analysis accordingly. Hence, my
competition for the CPU probably won't slow it down, but it will degrade
its speech recognition accuracy.

Some people have suggested that this application would be trivial on a
3-computer client mini-network - one to speak, one to listen, and one to
think. Unfortunately, as a product this would be a horrible flop, even
if everyone who DID have their own little 3-computer desktop bought it!
Without a good deal more information, I wouldn't be able to offer
suggestions for alternatives.
I can see LOTS of alternatives. I was just hoping for some way to make
what I have work until later when the Access routine on the other end is
converted to VB, whereupon I will have access to the LinkTimeout
controls I need to make this problem go away.
Yours may be an exception, but I have rarely
seen an Access database application that would benefit from conversion to
VB, in a client-server environment.
This may indeed be the exception. This is a distributed AI application
where inquiries require some part of a minute of CPU time, even with
compiled code. This would crush a server if dumped on it. It didn't
start out so heavy on the CPU and was OK in Access until people found so
many new and CPU intensive things that just had to be in there. Creeping
requirements - you probably already know about those.
I have seen quite a few that appeared to
be Access written as though it were VB, and which could stand extensive
redevelopment to use Access to full advantage.
This isn't going to get completely out of Access - just the pieces that
really need the speed, which we wish to distribute onto computers w/o
Access, and where we wish to hide some of the whiz-bang technology. The
DB maintenance will still all remain in Access.
Perhaps with some clarification, someone might be able to suggest an
approach that would work for you.
The simplistic approach appears to just abandon DDEExecute and the
built-in completion handshake (with its 5 second timer), and send the
work to be done over and periodically check a control via DDE to see if
it is done yet. Just a few lines of code to change from what I now have
- but ugly, and a possible problem for Dragon NaturallySpeaking as
timers have a nasty habit of messing up both speech recognition and
speech synthesis. I just HATE stuttering computers!

Thanks for your thoughts and offer of help.

Steve Richfie1d
====================== "Steve Richfie1d" <St***@NOSPAM.smart-life.net> wrote in message
news:41*************@individual.net...
Now that it finally works, I'm in the process of converting my large
rapid-prototyped Access app into production VB, one DDE-linked piece at a
time. One piece now already in VB takes ~2 seconds to run all by itself,
but when I start running other gigantic resource hogs like Dragon
NaturallySpeaking and SAPI at the same time, its execution time goes WAY
up - past the 5 seconds needed to time out a DDE link, so I get an Error
286 DDE LinkTimeout error from a DDEExecute statement in the remaining
unconverted Access code.

There are plenty of postings about related problems, all saying to adjust
the LinkTimeout property. Unfortunately, there doesn't seem to be a
LinkTimeout property in the Access 97 that I am using.

Is there some way past this problem that hopefully doesn't require
complete reconceptualization of the interfaces?

Thanks in advance for your help.

Steve Richfie1d


Dec 26 '05 #3
Steve Richfie1d <St***@NOSPAM.smart-life.net> wrote in
news:41*************@individual.net:
Larry,
DDE, as far as I know, has only been kept around to maintain
compatibility with past efforts, and has had problems in the last
few releases. It's not something I've ever had need to use, even
when it was "current technology", though... COM automation
replaced DDE in the development arsenal, and might be a better
choice for communication.


It has the considerable dual advantages of being both simple and
operable on just about any platform from'95 to XP, from Office '97
to C#, etc. When it fails, it is pretty obvious what the problem
is. Further, it provides COMPLETE isolation between applications -
well almost complete as my problem illustrates.


I would basically say that if you're using DDE to get *data* out of
an MDB, then it's a mistake. If you're using DDE to automate Access,
then it may or may not be a mistake (I'd consider it a mistake, but
in some contexts, it may work better than COM automation).

Again, if Access is only used as a data store, and you're using DDE
to get at the data, then you're fundamentally mis-using the
technologies, in my opinion, because you're using full-fledged
Access simply to load Jet, and you don't need *any* of Access to use
Jet and Jet data. ODBC or ADO would be vastly preferable (as well as
substantiall more efficient, and not requiring the installation of
Access to work) if all you need is the data.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Dec 26 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: MrLr | last post by:
Greetings, I have an ASP web application that is written in VBScript, uses MS Access 2000 for record storage, and is running on a Windows 2000 Professional SP4 computer with IIS 5. The...
3
by: Hermes | last post by:
Hi All, Is there a way to specify the server timeout for IIS in an asp file rather than with IIS. As I would just want one page to have a long timeout period but limit the other pages in the...
18
by: Mark P | last post by:
I have a bit of vb code that uses Tables.Append to programatically link tables from Oracle and DB2 datasources. The problem I am having on some client machines is that the link will take anywhere...
1
by: ruca | last post by:
Hi, CONFIGURATIONS I have set a timeout for my application to 5 minutes. For that I use Session.Timeout = 5. In IIS Timeout the value is the default: 20 minutes and 90 seconds for ASP Script...
6
by: B B | last post by:
Okay, here is what's happening: I have a reasonably fast laptop (1.4 GHz Mobile M, so comparable to 2.5GHz P4) doing .net development. Running Windows XP pro, SP2 IIS is installed and running...
1
by: Jean Stachler | last post by:
We have a VB app that is set off automatically when a file exists in a certain directory. The file contains a listing of part numbers which the program reads and than retrieves drawings which are in...
10
by: Atul Shukla | last post by:
Hi, How can I avoid application timeout? Generally a web application time out is 20 minutes, however, we can define this timeout in web.config to any number of minutes. After giving 500 minutes of...
5
by: aholley0628 | last post by:
I have a custom application that I have completed. I have used the HTML Help workshop to create a custom help .chm file. How do I link the .chm to my access application? I also have a custom ribbon...
7
by: David Thielen | last post by:
Hi; How do I set how long until IIS 7 drops a session for an ASP.NET 2.0 web app? I want to set it for 8 hours. thanks - dave david@at-at-at@windward.dot.dot.net Windward Reports --...
1
by: DZur | last post by:
Hello, I have constructed a Website which requires user login and password. There is a Checklogin.asp page which checks for the correct username and password as entered in the Registration Form by...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.