|
I guess you have to download the latest version of Windows Platform SDK. MSDN article Obtaining the Complete SDK tells you how.
Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo
|
|
|
|
|
How I can read data from bitmap files using opengl? I need to construct a 3D image from a series of 2D slices of that image which are located in bitmap files.
|
|
|
|
|
I may be missing your goal here but I do not see OpenGl as an issue. Just read the bitmap image with anycode you are comfortable with. I do not do much with bitmaps but did look at Davide Pizzolato's code http://www.codeproject.com/bitmap/cximage.asp and feel that I could use it to do handle basic chores. There are many more samples in the http://www.codeproject.com/bitmap/ bitmaps and paletts section. If your slices a lines you will need a schem to create the lines from the points found.
|
|
|
|
|
Hi,
I'm looking for a way to produce a program that will allow the user to store records of particular things they want, but they initially choose what type of data they want to store for the records.
For example, if the user wants to store loads of records consisting of three string types, all the program would need to store are three CStrings (or whatever).
If they want to store say two strings, two true and falses and a number, the program would need to be able to store two CStrings, two BOOLs and an int.
Basically it would be like a custom database, but the problem I've got with it is setting up how the storage would work in an array and saving to file.
At present, I've got 12 fields available (4 strings, 4 BOOLs and 4 ints) and the user can tick or untick them if they want them or not. All fields are stored.
But not only is this wasteful in terms of storage and memory in terms of the fields not being used, but it doesn't give the user as much control as I want to.
I know using an existing database engine would be a lot easier, but has anyone got any ideas or pointers as to how to go about creating a custom one?
Many thanks,
Peter Pearson
|
|
|
|
|
How would I go about making certain labels in my dialog blue, and when you click on them it takes you to a web page? I can't use the MFC class (just using straight Win32), and I can't get the WTL CHyperLink class to work
|
|
|
|
|
The WTL class should work, what problems are your having?
|
|
|
|
|
The ATL declarations in stdafx.h:
// the following lines are required for ATL support
#include "atlbase.h"
extern CComModule _Module;
//#include "atlcom.h"
#include "atlapp.h"
#include "atlwin.h"
#include "atlctrls.h"
#include "shellapi.h"
#include "atlctrlx.h"
The usage of CHyperLink:
CHyperLink MyLink;
// Mesage handler for about box.
LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
MyLink.SubclassWindow(GetDlgItem(hDlg,IDC_MYEMAIL));
return TRUE;
The error:
C:\WINDOWS\Desktop\WP\WulframPoller.cpp(1173) : warning C4003: not enough actual parameters for macro 'SubclassWindow'
C:\WINDOWS\Desktop\WP\WulframPoller.cpp(1173) : error C2059: syntax error : '('
|
|
|
|
|
Is it possible to make a tabbed property sheet, using non-MFC Win32? If so, how?
|
|
|
|
|
Yes.
InitCommonControls();
hwndTab = CreateWindow (WC_TABCONTROL, "",
WS_CHILD | WS_CLIPSIBLINGS | WS_VISIBLE,
0, 0, rcClient.right, rcClient.bottom,
hwndParent, NULL, g_hinst, NULL); Note that a tab control is not a property sheet. An MFC property sheet contains a tab control (and property pages).
/ravi
"There is always one more bug..."
ravib@ravib.com
http://www.ravib.com
|
|
|
|
|
How would I make the tab control cycle between different dialog templates?
|
|
|
|
|
By selectively showing/hiding modeless dialogs (based on the different templates) depending on the currently selected tab. It's not impossible, but non-trivial. MFC's CPropertySheet makes this easy.
/ravi
"There is always one more bug..."
ravib@ravib.com
http://www.ravib.com
|
|
|
|
|
Unless I can find an example, I think doing it that way would be too difficult for me
|
|
|
|
|
Even if you find an example, it's a lot more work and is much harder to maintain. I would much prefer to use MFC.
/ravi
"There is always one more bug..."
ravib@ravib.com
http://www.ravib.com
|
|
|
|
|
I'm using NT with the latest service packs (both NT and Visual Studio).
Anyone else noticed this? According to MSDN, GetFileTitle() is supposed to return just the filename without the extension. If you open "wankitywank.txt" and then call GetFileTitle(), it should spit out "wankitywank". It even says so explicitly with an example (not the same filename )
Trouble is, that's not what it does. GetFileTitle() returns the same as GetFileName(). Why are they lying to me?!
CFile f;
f.Open("someexistingfile.txt", CFile::modeRead);
cout << (LPCTSTR) f.GetFileTitle() << endl;
cout << (LPCTSTR) f.GetFileName() << endl;
J
|
|
|
|
|
|
Great. That code is no good for me, but now I know that when I religiously uncheck "Hide file extensions for know file types" in explorer after every re-install, I control GetFileTitle().
Thanks a bunch. But man, all I wanted was a quick access method that would give me the filename WITHOUT the extension. You'd think MFC could handle this...
J
|
|
|
|
|
Quit complaining at Microsoft for making a function that does what it's supposed to. It would take all of about 2 seconds for you to write your own.
CString strFilename="MyDOcumenttxt";
CString strTitle;
int nPos;
strTitle= ((nPos=strFilename.Find('.')) != -1) ? strFilename.Left(nPos) : strFilename;
Sorry to dissapoint you all with my lack of a witty or poignant signature.
|
|
|
|
|
I'd use ReverseFind().
/ravi
"There is always one more bug..."
ravib@ravib.com
http://www.ravib.com
|
|
|
|
|
Ouch.
Indeed, it did only take 2 seconds to write my own. I was hoping that I wouldn't have to, since the documentation (save the aforementioned additional article) makes it appear as if MFC does what I need.
J
|
|
|
|
|
That will break if the filename is something like "C:\foo\bar.1\baz". You need to find the last dot and backslash, and check that the dot is after the backslash before truncating the filename.
--Mike--
"COM didn't solve the old version of DLL hell - it just provided us with a new and improved version of hell."
-- John Simmons, 1/22/2002
My really out-of-date homepage
Sonork - 100.10414 AcidHelm
Big fan of Alyson Hannigan.
|
|
|
|
|
|
Perfect. Thanks.
CFile f("c:\program files\crappysoft\wankitywank.txt", CFile::modeRead);
CString strPath = PathRemoveExtension(f.GetFileTitle());
Hopefully guaranteed to work in all situations... ?
J
|
|
|
|
|
No, because that GetFileTitle() returns a CString. You'll need to save the return value to a CString and call GetBuffer() on that string to get a non-const pointer to the filename.
--Mike--
"COM didn't solve the old version of DLL hell - it just provided us with a new and improved version of hell."
-- John Simmons, 1/22/2002
My really out-of-date homepage
Sonork - 100.10414 AcidHelm
Big fan of Alyson Hannigan.
|
|
|
|
|
Wowsers... didn't read the spec completely. What the hell type of function modifies a string buffer in place?
I suppose the GetBuffer() would be safe since PathRemoveExtension() shouldn't try to expand the string at all.
CFile f("c:\program files\microsnot\wankitywank.txt", CFile::modeRead);
CString strTitle = f.GetFileTitle();
PathRemoveExtension(strTitle.GetBuffer(0));
strTitle.ReleaseBuffer();
Except, now I need to link in shlwapi.lib... I'm going back to my ReverseFind('.')...
Thanks though.
J
|
|
|
|
|
If you're using the code snippet above, be aware that it will break if the filename is something like "C:\abc\foo.1\bar" You need to find the last dot and last backslash, and make sure the dot is after the backslash before truncating at the dot.
--Mike--
"COM didn't solve the old version of DLL hell - it just provided us with a new and improved version of hell."
-- John Simmons, 1/22/2002
My really out-of-date homepage
Sonork - 100.10414 AcidHelm
Big fan of Alyson Hannigan.
|
|
|
|