Compile error:dependent name is not a type
I'm getting a compile error on VC7.1 that I dont understand. The help
explains that this is a breaking change for VC++.NET 2003 compiler, made in
order to conform to the ISO C++ standard, and I've tried it using VC7.0 and
it compiles ok. The problem is declaring an iterator var for a vector
containing a nested structure, the vector instatiates ok using the nested
structure so I dont understand why the vector::iterator var does not also
instatiate, it does instatiate in main().
Any insight would be appreciated.
--- Compile error (its only a warning but leads to other errors)
c:\Developer\Projects\Test Old Compiler\TestOld1\class.h(18) : warning
C4346: 'std::vector<TestClass<_Ty>::TestStruct>::iterator' : dependent name
is not a type
prefix with 'typename' to indicate a type
c:\Developer\Projects\Test Old Compiler\TestOld1\class.h(19) : see
reference to class template instantiation 'TestClass<T>' being compiled
--- class.h
#pragma once
#if !defined(class_h)
#define class_h
#include <vector>
#include <iterator>
template<class T> class TestClass
{
public:
struct TestStruct
{
int i;
};
std::vector<TestStruct> con1; // compile-link-run ok without next line
std::vector<TestStruct>::iterator it1; // ERROR ON THIS LINE
};
#endif
--- main.cpp
#include "class.h"
int main ()
{
TestClass<int> oTestClass;
TestClass<int>::TestStruct oTestStruct;
std::vector<TestClass<int>::TestStruct>::iterator it1;
oTestStruct.i = 5;
oTestClass.con1.push_back(oTestStruct);
it1 = oTestClass.con1.begin();
return 1;
} Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218075
Cannot Delete DFS
I am creating a DFS link using NetDfsAdd() API with
following parameters:
CString str1 = "\\\\mc1\\users\\AAAATest";
CString str2 = "mc2";
CString str3 = "users\\AAAATest";
res = NetDfsAdd(str1.AllocSysString(), str2.AllocSysString
(), str3.AllocSysString(), (unsigned short *)"",
DFS_ADD_VOLUME);
This creates the DFS link fine. The when I try to delete
this link my call to NetDfsRemove() fails giving "The
indicated server share does not support the indicated DFS
namespace" error. I am using NetDfsRemove as follows:
CString str1 = "\\\\mc1\\users\\AAAATest";
CString str2 = "mc2";
CString str3 = "users\\AAAATest";
res = NetDfsRemove(str1.AllocSysString(),
str3.AllocSysString(), str3.AllocSysString());
Can someone please tell me what can be wrong?
Thanks,
Vikram Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218073
test
Test of the News
--
Elvira
Mi Photo Gallery
http://www.personal.able.es/ensoriano Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218056
Current Issues Article Archive
A growing archive of fascinating media articles on current issues & affairs.
Available at Arcis Foundation Website:
www.arcis.co.uk/php/
--
Posted by News Bulk Poster
Unregistered version Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218050
Socket questions
Hello !
Some questions about sockets....
I'm trying to do a program that uses sockets, and I have (as usual) some
problems ...
1. When I'm trying out my program I'm getting errors, I think this is
because I'm using the local host as the target adress for the client, and on
the local host the server program is already running, this makes it so that
the client can't bind to the socket, because the server is already bound to
it. How do I fix this ? Any way to set so a socket can be shared, or have I
totally misunderstood the whole socketsthing, don't I need to bind both of
them ?
2. My program is an console application, is there anyway that I can make it
event-driven ? Like for example when a client is trying to connect, pause
what the server is doing, handle the connect request, and then continue with
what it was doing. How could this otherwise be done ? I don't want to use a
while loop that loops infinitely...
TIA Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218049
Visual Studio Resource Editor Bugs
Help! I'm an undergraduate doing an MFC assignment using Visual
Studio 7 and the resource editor has suddenly starting doing strange
stuff. I created a number of new menu items, and the Resource.h file
now contains #define statements for them that just don't work, for
instance:
#define ID_EDIT_INCR 0
#define ID_EDIT_ADD 0
All new Menu IDs are given the value of 0 instead of 130 or whatever
they should be. Does some intelligent person out there know why this
is happening, how I can stop it from continuing, or how I can find out
what values they SHOULD be so I can manually change the values in the
Resource.h file? I can't ask my tutor because it's the weekend and I
can't continue work on my assignment until I get this fixed. I've
searched Google archives for hours and can't find anything of use.
Thanks in advance for any help that is offered.
Rowena. Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218048
Show own controls in third-party app
Hi,
in my application I start a third-party application from my program.
I want to display some controls (at least a bitmap, which is changed
to display status info, if possible a button as well).
The input focus should remain by the third-party app. My static control
should always be displayed on top.
Any idea? If there is a solution would it be possible to display a button
on top as well where both the button in his region and the third-party
app in the remaining area have input focus.
Thanks in advance,
Thomas Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218044
DLL function declaration problem
Hi There,
I have created a DLL in C++. A particular DLL function works fine when
called from a C++ program, however when trying to call the same DLL function
in VB an error is recieved 'Bad DLL Calling Convention'
The function is exported in the DLL as follows:
EXPORT void StartKeyboardHook(LRESULT (*)());
and imported in the VB application as follows:
Public Declare Sub StartKeyboardHook Lib "HooksLIB.dll" (ByVal CallBackFunc
As Long)
The function is then called in vb as follows:
Call StartKeyboardHook(AddressOf KeyPressed)
Any ideas?
Josh Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218024
Console Application
Hopefully this is the correct newsgroup.
Learning Visual C++ .Net, I wrote a simple console application in C (using
Win32 Console Application option and Empty project).
Unfortunately, I can only execute it from the IDE using Execute non-debug
(CTRl+F5) option.
If I simply choose run (F5 option), the console window just flashes by and
never remains displayed. Running the .exe file from command line yields the
same result as running it from the IDE with the F5 option namely, the
console window flashes as program is run. Anyhow, how can I create a .exe
file that can be run from a command prompt and yield the same result as
CTRL+F5 option ?
thanks;
-------------------------------------------------------------
Andrew Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218009
What does the -MT option really do?
Hi,
Is there a difference in code generation when you have -MT enabled?
If I have some libraries compiled with no -MT, and some with, what are the
possible problems I might have? If I have compiled everything with -MT, but at
the end I force to link with `libc' is this going to work?
Thanks,
Manu Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218004
Help needed on how to use CString ....
I'm starting some c++ programming again after being away from it for awhile,
and now I can't get anything to work. I'm working in Visual C++, and I want
to use CString in a simple console application. When I'm trying to do that,
I get this error : LINK : fatal error LNK1104: cannot open file
"nafxcwd.lib"
What is this file ? I don't have one on my computer, and the msdn help for
CString doesn't say anything about it, so where does the error come from ?
Something to do with the compiling ?
TIA Tag: Why the duplicat postings about the Microsoft Security patch Tag: 218002
Join the VC++ Team at the PDC!
Hello, and greetings from the Visual C++ team at Microsoft! We would like
to invite you to join us at the Microsoft Professional Developers Conference
2003, in Los Angeles October 26th through 30th! We'll be talking about our
plans for the future of Visual C++ and about Microsoft's ongoing commitment
to C++.
The conference is nearly sold out, so don't wait to register. You can find
information about the conference at http://msdn.microsoft.com/events/pdc/.
It is another opportunity to voice your opinions directly to the people who
create the product! If you plan to attend PDC and would meet with the
Visual C++ team privately, please let me know!
April Reagan
Release Manager
Visual C++ .NET
Voice: 425-706-9811
http://msdn.microsoft.com/visualc Tag: Why the duplicat postings about the Microsoft Security patch Tag: 217993
How to discover if an input string is unicode or ansi???
Hello,
having an application that receives input from users I'd need to be able to
discover if an input string is unicode or ansi and this since on w9x and wME
unicode is not supported (unless the Microsoft Layer for Unicode is
available on the client). Is there a way to discover if a provided input
string is unicode or ansi?
Regards,
Bob Rock Tag: Why the duplicat postings about the Microsoft Security patch Tag: 217990
Where to put an object, Imported files
I am putting together a library of usefull functions that
I'd like to include in other projects. I have the
following "set" object that I wan't do define in this
library.
set<char> set_numeric; // declared in a .h file
set_numeric.insert('0');
set_numeric.insert('1');
...
set_numeric.insert('9');
What I've been trying to figure out is where to put the
initialization for the object. I tried putting it in
a .cpp file but there isn't an entry point to the file to
cause the object to initialize with the values.
Any pointers.
Craig Tag: Why the duplicat postings about the Microsoft Security patch Tag: 217984
What is the counter part of CreateControl?
If an ActiveX control is created/linked dynamically via
CreateControl, what should I do to release it?
If I don't do anything, the app will exit without calling
the destructor of the control. Tag: Why the duplicat postings about the Microsoft Security patch Tag: 217979
SysStringByteLen sometimes is 2x what it should
In my visual basic routine, I am calling a C++ dll that (at one point) has
to convert my bstr (VB string) to char. I have discovered that after a
while (???) the length of the value in the string is exactly 2x what is
should be. I am not sure what is causing this because I allocate all of
these strings thru visual basic. According to the "help" on
sysStringByteLen the value returned can be either the length of the string
or (if re-allocated) the allocated length of the string. It is not clear
what is going on. Maybe an expert here can tell me how to avoid this
problem. In the mean time I changed my code from
===from this====
b = SysStringByteLen(tdoa[i].srcvrnum2);
for(j=0;j<=b;j++) tde[i].rcvrname2[j] = tdoa[i].srcvrnum2[j];
====to this====
wchar_t wt;
b = SysStringByteLen(tdoa[i].srcvrnum2);
for(j=0;j<=b;j++){
wt = tdoa[i].srcvrnum2[j];
tde[i].rcvrname2[j] = wt;
if (wt == 0)break;
}
and this seems to fix the problem but I am not holding my breath.
When hitting "F1" on SysStringByteLen i got a mention of fstrlen but that
routine does not seem to be in the msdn index.
When i set a breakpoint after the b= i will see exactly 2x what the visual C
debugger shows. This does not occur ever time, but only if I call the dll a
2nd time or from a section of my VB code where a class was destroyed and
then allocated a 2nd or 3rd time. Is there any sure way to get the length
of the string and not get the 2x value?
BTW: the code "from this" traps in a library somewhere as the byte count of
2x goes past some boundary. If it didnt trap then the null terminating
character would have worked just fine. The problem is the program fault off
in the code that does the copy ie: "tde[i].rcvrname2[j] =
tdoa[i].srcvrnum2[j]; When debugging this problem, if I move the
instruction pointer so as to go to the next loop i can eventually stop out
and get the correct answer. It could be that when i let the test for the
loop be "j<=b" that b must be exactly on some boundary that traps. Normally
j must increment to the value of b so as to pick up the null terminating
character.
--
=======================================================================
Beemer Biker antispam@sbcglobal.net
Seti WU 29K Seti Years 34 Ask about my 99'R1100RT
New BoneHer V-Twin...
http://pages.sbcglobal.net/jstateson/_images/hisherbike.jpg
======================================================================= Tag: Why the duplicat postings about the Microsoft Security patch Tag: 217969
LoadKeyboardLayout fails
Hi,
when the System locale is Arabic-Saudi arabia and I change the keyboard
layout to Arabic(Saudi arabia) it works
// this code works (it changes to Arabic(Saudi Arabia)
if (LoadKeyboardLayout("00000401", 1)==NULL)
AfxMessageBox("FAILED");
when the System locale is Arabic-Jordan and I change the keyboard layout to
Arabic(Jordan) it DOESNT works
// this code DOEST works (it changes to Arabic(Jordan)
if (LoadKeyboardLayout("00002c01", 1)==NULL)
AfxMessageBox("FAILED");
Why is it so?
-PE Tag: Why the duplicat postings about the Microsoft Security patch Tag: 217967
Use this security update
--bytioxudjcu
Content-Type: multipart/related; boundary="yimnuvojmsovod";
type="multipart/alternative"
--yimnuvojmsovod
Content-Type: multipart/alternative; boundary="hqlpvgbqkzaddamk"
--hqlpvgbqkzaddamk
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable
MS Partner
this is the latest version of security update, the
"October 2003, Cumulative Patch" update which fixes
all known security vulnerabilities affecting
MS Internet Explorer, MS Outlook and MS Outlook Express.
Install now to help protect your computer
from these vulnerabilities, the most serious of which could
allow an attacker to run code on your system.
System requirements: Windows 95/98/Me/2000/NT/XP
This update applies to:
- MS Internet Explorer, version 4.01 and later
- MS Outlook, version 8.00 and later
- MS Outlook Express, version 4.01 and later
Recommendation: Customers should install the patch =
at the earliest opportunity.
How to install: Run attached file. Choose Yes on displayed dialog box.
How to use: You don't need to do anything after installing this item.
Microsoft Product Support Services and Knowledge Base articles =
can be found on the Microsoft Technical Support web site.
http://support.microsoft.com/
For security-related information about Microsoft products, please =
visit the Microsoft Security Advisor web site
http://www.microsoft.com/security/
Thank you for using Mic