|
I'm using named pipes as an interprocess communication mechanism in a
distributed application.
This works successfully on Windows NT 4.0; I'm using this mechanism since
several years (since the dawn of NT 3.1 back in late 1992).
Now, with Windows 2000, some things seem to have changed.
When running several application components on a single machine or
across a network that all do use named pipes,
suddenly overlapped I/O on named pipes doesn't work any longer,
that is, ReadFile() (using overlapped I/O!) does not return
immediately but blocks for about a minute.
This seems to be dependent on the number of active named pipe instances;
if I reduce the number of named pipes used, the 'overlapped timeout' does
not occur.
The documentation (MSDN library, October 2000 edition) does not state
any such changes in named pipe functionality.
This is a severe problem, since my distributed application (a process
control system) depends on named pipe usage and eventually we have to
use Windows 2000 instead of NT 4.0. (Which besides the named pipe problem
is a huge advancement)
Has anyone yet made similar experiences or does anyone know a way
to circumvent this problem? Changing from named pipes to something else would
be no feasible solution, due to the amount of source code adaptation necessary.
|
|
|
|
|
Hello,
I was wondering if I can invoke/run my .exe after user log into system or after system is rebooted.
thanks
ns
|
|
|
|
|
There are two ways to do it.
1. You can put your exe in windows/startup folder.
2. You can create an entry in HKEY_LOCAL_MACHINE\software\microsoft\Windows\currentversion\run
Santosh
|
|
|
|
|
I'm completely new to the world of CE. I've been developing COM/ATL/MFC (and Visual Basic when forced) for several years now and though I did playh around with the Palm SDK when I bought my Palm V a while ago, I've really no experience in this arena. Today I was assigned with investigating and creating a Requirements spec and Project Plan for a new project involving the Compaq iPaq PDA. I can't really get into details but suffice it to say it's an application running on Windows CE that will utilize the serial port to send/receive data. The problem is my boss wants me to focus on Windows CE, not Pocket PC. I never knew there was a difference? What IS the difference? Is it simply that the Aero 1550 model is just missing a color LCD and the glitzy software package with the Pocket IE, Pocket Word, Media Player, etc with a slower processor? Are there differences in the SDK or am I limited with Microsoft technology more so with the Aero than with a full featured Pocket PC version like the H3600?
|
|
|
|
|
OEMs can customize WinCE to suite their needs. You will have to read the specs of the device you want to use to determine what is does and does not support and what flator of WinCE it uses (if it uses WinCE at all).
|
|
|
|
|
I want to install a piece of software on my Windows 95 PC but the install program insists that the application already exists. Is there a tool I can use to view the file execution of the install program? I want to find out what file on my computer is causing the installation problem.
|
|
|
|
|
Check out TracePlus Win32 - it's a general tracing utility that shows all the API calls a program makes.
--Mike--
http://home.inreach.com/mdunn/
"Would it save you a lot of bother if I just gave up and went mad now?"
-- Arthur Dent
|
|
|
|
|
I've read about Mainsoft's new version porting tool MainWin.
Does it really work and if does - what about performance of target application on unix?
|
|
|
|
|
Well, Microsoft uses it to port IE to Unix. So it certainly works for them.
As for performance, well, it works by essentially porting Win32 to Unix, which gives a lot of overhead. It won't be as fast as native apps, and will likely use a ton of memory if IE for Unix is any indication.
|
|
|
|
|
I'm using VC++5.0 and my problem is as following:
I want to count my families online time with a program
that always runs and writes a state every 30 secs.
The state should contain of the B-channels used but I can't figure them out with the RasGetEntryProperties() func. That is because I'm using Win95 (WINVER=0x400) as the docu says.
In this ver the multilink part of the certain structure is not implemented. BUT I CAN DO MULTI-LINK CONNECTION?
Does anyone know how I can figure out how many devices I use in a connection?
Thanks for your attention.
-----------------------------------------------------------
Pseudocode is code to demonstrate a concept, not designed to be run.
Like certain Microsoft software.
(Thanks a lot who ever wrote Robert's Perl Tutorial)
|
|
|
|
|
My program calls DeviceIOControl() passing IOCTL_DISK_GET_DRIVE_GEOMETRY. However, the cylinder-count in the returned DRIVE_GEOMETRY structure is incorrect. I'm expecting 16383 cylinders and getting something like 3767. The other information in the structure is correct.
I'm running on W2K and am testing with large disks (18GB, 30GB). The 30GB disk isn't formatted or partitioned in a DOS/Windows way (its a disk from my Tivo, and uses a Macintosh-style partition table).
I obtain the handle to the physical drive using CreateFile(). I have administrator access.
The bios is auto-selecting LBA (Logical Block Addressing?) mode for the drive, but otherwise reports its correct capacity. Windows reports the capacity correctly in the Disk Administrator.
Can anyone give me a clue as to what to try next?
Thanks!
|
|
|
|
|
I am builld a midi related program, windows 95/98 has a unacceptable timer latency. I consult the MSDN which has a article name "overcome the timer-latency problem in MIDI sequencers" mentiond this problem. But the solution it provide is using 16 bit DLL to implement timer procedures, so must do some thunking? What is thunking? how to implement it? thanks for help.
|
|
|
|
|
1. In my project, i want to control over the Hard disk, floppy disk. Can u explain about how to control this?
2. I want to reduce CPU clock speed. Can u suggest that?
|
|
|
|
|
You should investigate the docs at msdn.microsoft.com for the basics of what you are asking.
There are many options for what you ask, and they vary from OS version to version (98/NT/CE/etc.)
|
|
|
|
|
What is the difference between windows 95, Nt and CE in the architecture level?
|
|
|
|
|
Big Question, but I'll give you a very brief rundown:
Windows 95/98/ME:
Ever evolving shell interface that still fundamentally sits on the DOS architecture (although it doesn't use very much DOS anymore). This is the "legacy" architecture for Microsoft, and accounts for the majority of its installs. Fundamentally runs on ASCII internally, and uses FAT disk technology.
Windows NT/2000:
Next generation architecture. Built on "microkernel" design intended to be portable to other architectures (now effectively abandoned), to be capable of utilizing multiple processors in a machine (SMP), adds rich security model (which I can barely understand sometimes ), uses UNICODE internally (but also offers an ASCII model), and offers much more advanced NTFS disk technology. Much more robust, fault tolerant and secure.
Windows CE:
My feeling about CE is that it was developed using a subset of the NT architecture. It is designed for instant on, handheld and embedded devices. It is UNICODE only, which means that there are sometimes porting issues moving older code to the platform. CE separates the OS into at least two distinct portions, Kernel and Interface, so that devices that don't require an interface don't need to bring that code along. Fundamentally a very trimmed down version of the Win32 API shared by all Microsoft platforms, focused on minimal resource requirements.
Please don't take this comments as anything other than an off-the-cuff summary, for a full description, please see the docs from Microsoft.
|
|
|
|
|
Has anyone ever installed a network protocol driver (or any other driver for that matter) programmatically. Our application will require the addition of a network protocol we include with the release and we want to make the installation seamless to the user.
I already have an .INF file and .SYS (driver) file. What I need are some Win32 functions specific to NT4 which will use the INF file to install the driver. I'm trying to avoid having the user enter the Network Control Panel applet, accessing the Protocol tab and pressing Add Protocol.
Specific sample code would help greatly, but additional direction wouldn't hurt.
I've read all the documentation I can find on SetupDi* API functions, but can't quite come up with a solution which works.
Thanks in advance for ANY help.
Mark Koehler
Atlanta GA
|
|
|
|
|
I (very briefly) used a firewall several years ago that needed to mess with the network settings at install time. It is possible to do it yourself, but the calls are completely undocumented.
I wasn't a programmer for the firewall, so I don't know how they managed it. Sorry. But I'm positive that it can be done.
|
|
|
|
|
What u should do is to write another simple program.
This program does the things that INF file just does.
First, U copy the .sys to the system directory using "CopyFile";
Second, U Create/open driver registry key and set its values, using reg API, such as "RegCreateKeyEx".
Third, using "OpenSCManager", "OpenService", "CreateService" etc, U can start the driver.
About how to use these APIs, Look to the MSDN.
|
|
|
|
|
Hi everybody,
I want to develop a linux kernel module in C++ but I don't find makefiles and/or sorce files examples to do this.
When I compile the module, the gcc shows a lot of warnings.
I have tried to use 'extern "C" {}' in my source files, but the result is the same one.
For example:
extern "C" {
#include <linux kernel.h=""> }
Can you help me?
Thanks in advance for your help.
-Abel.
|
|
|
|
|
Hi,
We are developing an application in Visual C++ 6.0 with MFC 4.0. The development will be carried out on Win 95 and the deployment on Win 2000.
We would like to know if there are any problems that we might face while doing this transition. If anyone has done something of this sort before, could you please get back to me?
Also are there any problems in using MFC 4.0 on Windows 2000?
Thanks in advance,
Chinmay
|
|
|
|
|
MFC 4? VC6 comes with MFC 4.21 (though it's called MFC42.dll)
Your primary problems with this approach depend on what kind of work you're doing. In most cases, you'll be ok. If it works on Win95, it will probably work on 2000 as long as it's not a Win95 specific API (the SDK mentions these). Usually you have trouble going the other way. Developing on NT and porting to 95, since 95 has many limitations on things which are not limited under NT/2000.
|
|
|
|
|
hello,
I'm writing an application which has to be executed before the windows desktop appears.Can you help me to come out of this problem.
thanks
|
|
|
|
|
To my knowledge it is not possible to tell the Win32 system when to start any given application program. You
could write an NT Service program, which normally starts before login, or a Win32 Kernel program which
probably starts before Service programs. To write either of these you need lots of systems program experience
and study several books. Check out Advanced Systems Programming that, I think, was written by John Riche.
I attended one of his seminars once a few years ago, and he has got to be the world's most knowledgable person
about Win32 operating system. His books are worth their weight in gold.
|
|
|
|
|
That would be Jeffery Richter, not John Riche.
http://www.wintellect.com/richter_bio.html
|
|
|
|