|
abc is a pointer to a pointer to a double .
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
what about this :
double d1;
double* d2;
double** d3;
double* d4[];
...?????????
you don't have it ? ok, i'll help you, but you will have to study a bit more the C/C++ language.
double d1; declares d1 as a double. (easy, isn't it ?)
double* d2; declares d2 as a double*, that means pointer to double. this is the same as double *d2;,double*d2; and double * d2;
double** d3; declares d3 as a double** (i'm sure you start understanding), that means pointer to double*, that means in fact pointer to pointer to double. you have it now ?
more difficult, but quite the same as the previous one. Let's see this :
double* d4[]; declares d4 as an array of double*, and as you know, arrays are pointers to the first element. Such code declares so a pointer to pointer to double.
see you
TOXCCT >>> GEII power [toxcct][VisualCalc]
|
|
|
|
|
Using MFC for Print and Print Preview, i cannot get it to work with CDC::SelectClipRgn to print in just a specified region. Even Print Preview never clips the output correctly. How could this be? I cannot find any information that would say clipping isn't working in Print and Preview modes, but it's not!!!
Please help me!!!
|
|
|
|
|
It complies and links but shows no output.It is suppose to enlist the application log files.
#include <windows.h>
#include <stdio.h>
void DisplayEntries( )
{
const int BUFFER_SIZE=1000;
HANDLE h;
EVENTLOGRECORD *pevlr;
BYTE bBuffer[BUFFER_SIZE];
DWORD dwRead, dwNeeded, cRecords, dwThisRecord = 0;
// Open the Application event log.
h = OpenEventLog( NULL, // use local computer
"Application"); // source name
if (h == NULL) { printf("yahooo1");}
// ErrorExit("Could not open the Application event log.");
pevlr = (EVENTLOGRECORD *) &bBuffer;
// Opening the event log positions the file pointer for this
// handle at the beginning of the log. Read the records
// sequentially until there are no more.
while (ReadEventLog(h, // event log handle
EVENTLOG_FORWARDS_READ | // reads forward
EVENTLOG_SEQUENTIAL_READ, // sequential read
0, // ignored for sequential reads
pevlr, // pointer to buffer
BUFFER_SIZE, // size of buffer
&dwRead, // number of bytes read
&dwNeeded)) // bytes in next record
{
while (dwRead > 0)
{
// Print the event identifier, type, and source name.
// The source name is just past the end of the
// formal structure.
printf("%02d Event ID: 0x%08X ",
dwThisRecord++, pevlr->EventID);
printf("EventType: %d Source: %s\n",
pevlr->EventType, (LPSTR) ((LPBYTE) pevlr +
sizeof(EVENTLOGRECORD)));
dwRead -= pevlr->Length;
pevlr = (EVENTLOGRECORD *)
((LPBYTE) pevlr + pevlr->Length);
}
pevlr = (EVENTLOGRECORD *) &bBuffer;
}
CloseEventLog(h);
}
int WINAPI WinMain(HINSTANCE h,HINSTANCE p,LPSTR l,int n)
{
DisplayEntries();
return 0;
}
|
|
|
|
|
it uses windows.h and stdio.h headers
|
|
|
|
|
brilliant101 wrote:
printf("%02d Event ID: 0x%08X ",
...
int WINAPI WinMain(HINSTANCE h,HINSTANCE p,LPSTR l,int n)
These are mutually exclusive statements. WinMain() assumes a GUI application whereas printf() assumes a console application. For testing purposes, I would change WinMain() to be main() instead.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
This is the code from MSDN, using the api SetupDiGetClassDevEx () fuction to retrieve the list of current devices. But this program does not complies.
Please debug the code so that it can enlist all the hardware devices in the computer.
#include<windows.h>
#include<stdio.h>
HDEVINFO DoDeviceEnum( GUID InterfaceClassGuid )
/*
Routine Description:
Retrieves the device information set that contains that contains
the devices of the specified class.
Parameters:
InterfaceClassGuid - The interface class GUID.
Return Value:
If the function succeeds, the return value is a handle to the
device information set.
If the function fails, the return value is zero.
*/
{
HDEVINFO DeviceInfoSet;
HDEVINFO NewDeviceInfoSet;
// Create a device information set that will be the container for
// the device interfaces.
DeviceInfoSet = SetupDiCreateDeviceInfoList(NULL, NULL);
if(DeviceInfoSet == INVALID_HANDLE_VALUE) {
Err = GetLastError();
printf( "SetupDiCreateDeviceInfoList failed: %lx.\n", Err );
return 0;
}
// Retrieve the device information set for the interface class.
//int WINAPI WinMain(HINSTANCE h,HINSTANCE p,LPSTR l,int n)
//{
NewDeviceInfoSet = SetupDiGetClassDevsEx( InterfaceClassGuid,
NULL,
NULL,
DIGCF_PRESENT | DIGCF_DEVICEINTERFACE,
DeviceInfoSet,
NULL,
NULL
);
if(NewDeviceInfoSet == INVALID_HANDLE_VALUE)
{
Err = GetLastError();
printf( "SetupDiGetClassDevsEx failed: %lx.\n", Err );
return 0;
}
return NewDeviceInfoSet;
|
|
|
|
|
it uses windows.h and stdio.h headers
|
|
|
|
|
brilliant101 wrote:
But this program does not complies.
Why doesn't it? What error(s) are you receiving?
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
I am trying to implement an ATL based .EXE server , with Connection Point Support
I am trying to Call a handler in the client with two variables
BSTR fileName
VARIANT result (intended to be a UINT)
The first variable is successfully passed to the client
while the VARIANT is not getting passed properly . it points to VT_NULL in my client
Code from my CoClass
STDMETHODIMP CMySrvr::OpenModel(BSTR FileName)<br />
{<br />
<br />
_bstr_t str(FileName);<br />
bool res = mgr.OpenModel((string)str);<br />
<br />
VARIANT result ;<br />
result.vt= VT_UINT ;<br />
if(res)<br />
result.uintVal=0x01;<br />
else<br />
result.uintVal=0x00;<br />
<br />
Fire_XmlOpenResponse(FileName,result); <br />
<br />
return S_OK;<br />
}
Here is the IDE generated code for Fire_XmlOpenResponse
HRESULT Fire_XmlOpenResponse(BSTR fileName, VARIANT result)<br />
{<br />
CComVariant varResult;<br />
T* pT = static_cast<T*>(this);<br />
int nConnectionIndex;<br />
CComVariant* pvars = new CComVariant[2];<br />
int nConnections = m_vec.GetSize();<br />
<br />
for (nConnectionIndex = 0; nConnectionIndex < nConnections; nConnectionIndex++)<br />
{<br />
pT->Lock();<br />
CComPtr<IUnknown> sp = m_vec.GetAt(nConnectionIndex);<br />
pT->Unlock();<br />
IDispatch* pDispatch = reinterpret_cast<IDispatch*>(sp.p);<br />
if (pDispatch != NULL)<br />
{<br />
VariantClear(&varResult);<br />
pvars[1] = fileName;<br />
pvars[0] = &result;<br />
DISPPARAMS disp = { pvars, NULL, 2, 0 };<br />
pDispatch->Invoke(0x2, IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD, &disp, &varResult, NULL, NULL);<br />
}<br />
}<br />
delete[] pvars;<br />
return varResult.scode;<br />
<br />
} IDL definition of the above
dispinterface _IEACEepromSrvrEvents<br />
{<br />
properties:<br />
methods:<br />
[id(1), helpstring("method Event1")] HRESULT Event1();<br />
[id(2), helpstring("method XmlOpenResponse")] HRESULT XmlOpenResponse([in] BSTR fileName , [in] VARIANT result);<br />
};
Here is my client code
client .h file
static _ATL_FUNC_INFO dataInfo = {CC_STDCALL, VT_EMPTY, 0, 0};<br />
static _ATL_FUNC_INFO xmlOpenInfo = { CC_STDCALL, VT_EMPTY,2,{VT_BSTR , VT_UINT}};<br />
<br />
class CEacEepromClient : public IDispEventImpl<0,CEacEepromClient ,&DIID__IEACEepromSrvrEvents,&LIBID_EEPROMSERVERLib,1,0><br />
{<br />
public:<br />
void Use1();<br />
CEacEepromClient();<br />
virtual ~CEacEepromClient();<br />
<br />
BEGIN_SINK_MAP(CEacEepromClient)<br />
SINK_ENTRY_INFO(0,DIID__IEACEepromSrvrEvents,1,HandlerEvent1,&dataInfo)<br />
SINK_ENTRY_INFO(0,DIID__IEACEepromSrvrEvents,2,HandleXmlFileOpen,&xmlOpenInfo)<br />
END_SINK_MAP()<br />
HRESULT __stdcall HandlerEvent1();<br />
HRESULT __stdcall HandleXmlFileOpen(BSTR fileName , VARIANT result);<br />
protected :<br />
<br />
IEACEepromSrvrPtr m_srvr;<br />
IUnknownPtr iPtr ;<br />
<br />
<br />
};
Handler code in the client.cpp file
STDMETHODIMP CEACEepromSrvr::OpenXmlModel(BSTR xmlFileName)<br />
{<br />
<br />
_bstr_t str(xmlFileName);<br />
bool res = mgr.OpenModel((string)str);<br />
<br />
<br />
VARIANT result ;<br />
result.vt= VT_UINT ;<br />
if(res)<br />
result.uintVal=0x01;<br />
else<br />
result.uintVal=0x00;<br />
<br />
Fire_XmlOpenResponse(xmlFileName,result);<br />
<br />
<br />
return S_OK;<br />
}
Please help
|
|
|
|
|
Wrong last parameter in line
<br />
static _ATL_FUNC_INFO xmlOpenInfo = { CC_STDCALL, VT_EMPTY,2,{VT_BSTR , VT_UINT}};<br />
should be VT_VARIANT instead of VT_UINT.
Professional C++ libraries for getting images from any TWAIN or DirectShow compatible device on www.neatcpp.com
|
|
|
|
|
Can anybody advise me a right forum where i can discuss the questions about neural networks and OCR???
|
|
|
|
|
Hi,
I'm trying to create a balloon tooltip window that has a close button.
Like this one (taken from MSDN)[^]
I've tried to add the TTS_CLOSE style, but it didn't change anything...
How do i create this close button?
Thanks in advance!
Koo
|
|
|
|
|
Hi,
I've been trying for some time to establish reliable serial comms for a 4-port system, i.e. with the two regular COM1 and COM2 on the motherboard and with a dual PCI serial card (COM3 and COM4). The serial class I have works fine with COMs 1 and 2, but I can only read from COMs 3 and 4, not write. Other applications seem to work fine with all the ports, so it's not a hardware issue. Is there something special I need to do when dealing with COMs on a PCI card? (I am using Win2000 on a Celeron 1.2GHz)
Many Thanks,
Karl
|
|
|
|
|
Hello,
How can I detect the border sizes of an MFC dialog? I want to draw something on the dialog bar. First I resize the dialog to some run-time detected size. Then I want to re-position and redraw some controls inside accordingly. The upper boundary is OK since the first pixel of the dialog is defined as (0,0) for the client. But for example, if I click on the leftmost pixel (or convert it with ScreenToClient() since I know the start point of the dialog) of the left border I get (-3,y) as the client value. Then I can say that the thickness of the vertical border of the dialog is 3.
Can I be sure that the lower border thickness is the same as the vertical ones? Or is there some function to diagnose it (regarding that it will change w.r.t. your Windows settings)?
I would appreciate any help
Thanks in advance
caykahve
|
|
|
|
|
|
Thanks!
How I exactly got the border:
int HBorder = GetSystemMetrics(SM_CXDLGFRAME);
int VBorder = GetSystemMetrics(SM_CYDLGFRAME);
int CaptionHeight = GetSystemMetrics(SM_CYCAPTION);
int UpperBorder = CaptionHeight + HBorder;
|
|
|
|
|
"(GetWindowRect - GetClientRect)/2"
Professional C++ libraries for getting images from any TWAIN or DirectShow compatible device on www.neatcpp.com
|
|
|
|
|
hi,
i got a special TTF file and i want to use it in my Dialog.
i just to put a text using this special font on an EditBox.
how can i do that? i didn't manage to figure this out by myself...
Avi.
|
|
|
|
|
|
Hi,
I'm having problems with this static library I'm writing. It seems that every time I use the new or malloc commands, I get a pointer of 0x00000000 returned! Is there somthing important that I'm forgetting to do?
Thanks in advance.
Joel Holdsworth
Wanna give me a job this summer?
Check out my online CV and project history[^]
|
|
|
|
|
Strange. Can we see some of the code?
|
|
|
|
|
What's stranger is that the problem only seems to occur in debug mode!
Joel Holdsworth
Wanna give me a job this summer?
Check out my online CV and project history[^]
|
|
|
|
|
Anyone could please tell me in which plateform the language smalltalk is used.
|
|
|
|
|
I suppose it could be used on any platform, as long as the compiler supported it.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|