|
Vaclav_ wrote: Then I discovered "file handle " !
Is "handle" an ancient "windows OS" term ?
Pretty sure that it existed before windows.
I believe I was using "file handles" in Fortran/Pascal just about the time Bill Gates was still figuring out that college just wasn't for him. But perhaps that is a generic term rather than a specific one.
modified 23-May-19 12:09pm.
|
|
|
|
|
File handles certainly existed in MS-DOS (2.0 and later, released March 1983), and the term probably wasn't new even then.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
Daniel Pfeffer wrote: File handles certainly existed in ... 1983 and were a good decade old by then. Unix dates from the early 1970s, and the concept and terminology of file handle was well established.
(With apologies to JSOP, "I'm old. I know things." )
Peter
Software rusts. Simon Stephenson, ca 1994. So does this signature. me, 2012
|
|
|
|
|
OK. I thought that Unix called them descriptors.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
Daniel Pfeffer wrote: I thought that Unix called them descriptors
I think that is the formal way it is used. But I found the other usage elsewhere.
|
|
|
|
|
jschell wrote: "file handles" in Fortran/Pascal Maybe in Pascal. (Early) Fortran used Unit numbers
Cheers,
Peter
Software rusts. Simon Stephenson, ca 1994. So does this signature. me, 2012
|
|
|
|
|
I wrote a very small program in VCPP long ago.
I have a Debug Folder and a Release Folder.
I cannot run the Debugger to access original source code.
I have Windows 7 Pro on 32-Bit HP 515n Pavilion, and it is not compatible.
Best advice heard- Put XP in VM and run it there.
I really do not want to do that if there is another way.
|
|
|
|
|
I've had a few programs which won't run on any Windows version later than XP (one of them being a game named Stars! which I kind of miss).
If you cannot or do not want to use a VM, I guess your best bet is to develop it on a supported Visual C++ release. If it is small, it may take less time and effort than to try to run an unsupported version of a now quite-old IDE.
noop()
|
|
|
|
|
I can run my small program called Notebook, and I can set compatibility for notebook.exe, but not notebook.dsw. It is presently a dialog box that asks a Question, and then provides the Answer.
I cannot use the debug folder to run debug.
I cannot rebuild.
I cannot compile.
I think it is just not compatible with Windows 7 Professional.
I am considering putting Windows XP SP3 in a VM, and running it there.
Mainly, I just wanted to see my original written form of Visual C++ 6.0 coding.
Then I can add Rich Text Format to the text entered.
Later on, I want to add vector graphic calculations to the result.
|
|
|
|
|
Michael Hinton wrote: but not notebook.dsw .dsw files are generally opened by either Borland C++ compiler or Visual Studio. It does not seem to be an executable file (like an .exe file is); thus, there is no "compatibility mode" for dsw files.
Michael Hinton wrote: Then I can add Rich Text Format to the text entered.
Later on, I want to add vector graphic calculations to the result. Since you may add further functionalities to your project, redevelopping it under a more recent platform may allow you to find more resources, or at least to find them more easily.
Good luck anyway on your new development trip
noop()
|
|
|
|
|
Go to the Debug or Release folder (as appropriate) in Windows Explorer. Right click the mouse on the executable program, and select "Properties". You can then set it to run in compatibility mode; no guarantees but it often works.
|
|
|
|
|
I can run my small program called Notebook, and I can set compatibility for notebook.exe, but not notebook.dsw. It is presently a dialog box that asks a Question, and then provides the Answer.
I cannot use the debug folder to run debug.
I cannot rebuild.
I cannot compile.
I think it is just not compatible with Windows 7 Professional.
I am considering putting Windows XP SP3 in a VM, and running it there.
Mainly, I just wanted to see my original written form of Visual C++ 6.0 coding.
Then I can add Rich Text Format to the text entered.
Later on, I want to add vector graphic calculations to the result.
|
|
|
|
|
Michael Hinton wrote: can set compatibility for notebook.exe, but not notebook.dsw Well a .dsw file is not an executable so why would you want to set compatibility mode for it? And having set compatibility mode for notebook.exe, what happens when you run it?
|
|
|
|
|
This is not a Joke!
A few weeks ago, the NSA released a disassembly tool, ghidra, into the public domain. It is in theory only downloadable from the USA, but no one outside the USA has ever heard of VPNs. /s
I've used it on some object code, and managed to reconstruct a C version at a level that allowed me to understand what the object code was doing. It's not good enough to recompile, but you should be able to see how the code works.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
I can run my small program called Notebook, and I can set compatibility for notebook.exe, but not notebook.dsw. It is presently a dialog box that asks a Question, and then provides the Answer.
I cannot use the debug folder to run debug.
I cannot rebuild.
I cannot compile.
I think it is just not compatible with Windows 7 Professional.
I am considering putting Windows XP SP3 in a VM, and running it there.
Mainly, I just wanted to see my original written form of Visual C++ 6.0 coding.
Then I can add Rich Text Format to the text entered.
Later on, I want to add vector graphic calculations to the result.
|
|
|
|
|
So you can open your project with VC6, but you can't debug it? Or can you not open the project at all?
I still use VC6 on a Windows 7 machine for one of my main projects still today and it works just fine. When I initially put it on that machine 5+ years ago, I had to tweak some files to get it going (because it was 64-bit), but it has run fine ever since.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
|
|
|
|
|
I can run my small program called Notebook, and I can set compatibility for notebook.exe, but not notebook.dsw. It is presently a dialog box that asks a Question, and then provides the Answer.
I cannot use the debug folder to run debug.
I cannot rebuild.
I cannot compile.
I think it is just not compatible with Windows 7 Professional.
I am considering putting Windows XP SP3 in a VM, and running it there.
Mainly, I just wanted to see my original written form of Visual C++ 6.0 coding.
Then I can add Rich Text Format to the text entered.
Later on, I want to add vector graphic calculations to the result.
|
|
|
|
|
Michael Hinton wrote:
I cannot use the debug folder to run debug. What exactly does this mean?
Michael Hinton wrote:
I think it is just not compatible with Windows 7 Professional. Your app or VC6?
Michael Hinton wrote:
Mainly, I just wanted to see my original written form of Visual C++ 6.0 coding. So are the H/CPP files not present?
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
|
|
|
|
|
Do you have all the needed source files? Or you only nave a .dsw one?
Do you have some VS installed on your PC? Which one?
|
|
|
|
|
Hi Victor,
I am not sure I am using the CodeProject System correctly!
Am I expected to give an up or down vote with the red and green triangles?
I am using Visual Studio 6.0. The dsw file just brings up the program in workbook form.
I can only go into Properties from Notebook.exe for XP Compatibility plus Run as Admin, and that is not helping me to get the coding I want to look at. I want to add RTF to my text, and later graphics in the Answer section.
The Notebook program was written in Visual C++ but mostly C++.
It is a simple Q & A dialog box I programmed for study questions and answers.
I wrote that program in Feb. 2004, and I am now retired, so I want to get back to learning.
I have a considerable investment in the VCPP6 and VB6 library volumes.
I want to stay with VS6 because the programs will be only for me, and I do not intend to write many.
I can see the compiled code, but I cannot regenerate my original write-up code from that!
If I run the debug there is supposed to be a way to make a file that tracks my code, but that is during the original compile and debug process. Only Windows XP is compatible with my program.
I have Windows 7 Pro now on my HP Pavilion 515n 32-bit computer and running compile, rebuild, or debug just destroys the program. Fortunately I keep backups of Notebook. It runs fine on Win7, but not much use to understand my original write-up code way back then!
I mainly use the 32-bit to backup my Palm Pilot monthly and run a free-space drive wipe after.
Don't worry, I have an HP ENVY 700-210xt SSD 64-bit on Windows 10, but free-space wipe on it would be write steps that burn SSD life (read is fine, but not write). Also, I want to keep my programming mess away from the 64-bit computer.
I am currently looking into using a VM with Windows XP inside to run my program with all functions.
|
|
|
|
|
|
|
Try:
CListCtrl and Displaying a Tooltip[^]
MFC List Control with Tooltip and Menu Ability[^]
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
|
|
|
|
|
It's easy to add to any window using just the Windows API ..
So you have a window Handle (hWnd) and you have a char* tooltip you wish to display
First you must make sure commoncontrols is kicked
#include <commctrl.h>
#pragma comment(lib, "comctl32.lib") // Shortcut to add library rather than manual add
INITCOMMONCONTROLSEX icex = {
.dwSize = sizeof(INITCOMMONCONTROLSEX),
.dwICC = ICC_STANDARD_CLASSES
};
InitCommonControlsEx(&icex);
Now create the tooltip window .. we will default to same area as window itself you can size it if you want
HWND TTWnd = CreateWindowEx (WS_EX_TOPMOST, TOOLTIPS_CLASS, NULL,
WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP | TTS_BALLOON,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
hWnd, 0, 0, NULL);
if (TTWnd)
{
TOOLINFO ti = { 0 };
SetWindowPos(TTWnd, HWND_TOPMOST, 0, 0, 0, 0,
SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE);
ti.cbSize = sizeof(TOOLINFO);
ti.uFlags = TTF_SUBCLASS;
ti.hwnd = hWnd;
ti.hinst = 0;
ti.uId = 0;
ti.lpszText = tooltip;
GetClientRect(hWnd, &ti.rect);
SendMessage(TTWnd, TTM_ADDTOOL, 0, (LPARAM)&ti);
}
Try it on any window you like
In vino veritas
|
|
|
|
|
First of all I cannot use MFC.
I have made WM_MENUSELECT handling in the dialog:
case WM_MENUSELECT:
return OnMyMenuSelect(LOWORD(wpar), HIWORD(wpar), (HMENU)lpar);
However function IsMenu((HMENU)lpar) returns FALSE. Does anybody has idea why ?
|
|
|
|