|
Hi Joshua,
There are some instances where we don't need to use ";" like in macros and comments.
Before you start c++, make sure to orient yourself with the basics of the subject first (the syntax, how to use the IDE, the capabilities of C++) for you to at least have an idea what's in store for you ahead. There are lots of C++ tutorials online, just to guide you along the way.
=waxie=
|
|
|
|
|
I think you are missing a #include file name, and possibly you're using those strange slanty quotes. You need to do something like this:
#include <iostream>
using namespace std;
int main()
{
cout << "Every age has a language of its own\n";
return 0;
}
|
|
|
|
|
Hello,
Is there a way to make a connection to an access database using the .NET framework? So I'm looking for functionality like what is in System.Data.SqlClient, but I'd like to connect to an access database.
Also, when you pass a "connection string" to a SqlConnection object, you need to include a database name.. Does that name refer to an ODBC connection or just to the name of the database in SQL server?
Thank you,
-Jordan
|
|
|
|
|
Check out this article.[^]
ed
~"Watch your thoughts; they become your words. Watch your words they become your actions.
Watch your actions; they become your habits. Watch your habits; they become your character.
Watch your character; it becomes your destiny."
-Frank Outlaw.
|
|
|
|
|
Thanks Ed. It looks like I need to use an OleDbConnection.
--Jordan
|
|
|
|
|
Hey all, I have the Visual Studio Express Beta 2 with Team System in there including the code coverage and testing stuff. Does anyone know of a tutorial I can check out on how to use the code coverage?
When I did try to use the "New Test" menu item, it auto generated a bunch of code that looked like C#. I tried to add in my own C++ stuff but the compile failed terribly with over 8000 (yes that's right 8 thousand) errors (and it was still going when I canceled it). Perhaps you can only use the code coverage for C# code and not C++?
Thanks
azbok
|
|
|
|
|
Hi folks,
I'm creating a simple Visual C++ program which is supposed to display an animation: A timer event
calls a panel_Paint() which writes the graphics on screen.
My problem is that I cannot store data anywhere that will tell the panel_Paint() function
at which frame of the animation it is so it knows which file to display -
if I initialize a variable inside the function, it will be re-initialized next time it is
called, and if I try to initialize a variable outside the function, I am told that I can only initialize static variables there.
I'm new to Visual C++ and this kind of event-driven programming, maybe somebody can tell me
where I can store data for my functions to use. Thanks in advance.
-- modified at 20:59 Friday 20th January, 2006
|
|
|
|
|
I need more information about the structure of your program to answer this question - But normally the data would be stored in a member variable of the class that contains the callback function.
Steve
|
|
|
|
|
I have a plain Form class in which I have a function "timer1_Tick" which is executed on each tick event. In this function I use this line in order to call up a panel1_Paint function, which is also part of the Form class:
[code]
panel1->Paint += gcnew System::Windows::Forms::PaintEventHandler( this, &Form1::panel1_Paint );[/code]
And that's it. I just need a place where to initialize data. Obviously I can't initialize the data inside my timer1_Tick or inside the panel1_Paint function because it'd be initialized again and again.
I tried initializing some values in the constructor Form1():
[code]
int a;
Bitmap^ bitmap;
Form1() {
InitializeComponent();
int a = 20;
Bitmap^ bitmap = gcnew Bitmap("test.gif");
}
[/code]
But when I try to use them in my panel1_Paint function further down I see that they, while they have been initialized, they have not been assigned values yet. This is a variable scope problem I guess.
|
|
|
|
|
I would think that if you declare the variable as static it will retain it's value between invocations of the function. It would still retain function scope.
void funct (int sumpin, char *stuff)
{
static int var = 0;
[other code]
}
Lilith
|
|
|
|
|
Yes, but I need non-static variables..
I've solved the problem anyway -- I initialized the variable
twice, inside and outside of the function - so two instances of the variable, one with class scope and one with function scope were created. Yea, newbie mistake, so embarrassing
Still, thanks a lot guys for the quick help.
|
|
|
|
|
I don't understand exactly what you're getting at - But based on my understanding (possibly flawed) here's what I'd do:
<code>class CMyClass
{
public:
CMyClass()
{
m_SomeVariable = 3;
}
void SomeFunction()
{
}
private:
int m_SomeVariable;
}</code><pre>
Steve
|
|
|
|
|
This raises a question for the assembled experts here. Under most circumstances a variable declared as static in a function retains its last value on re-entry to the function. I can understand if an object is destroyed and re-created that the variable resets. Variables declared as static in a class are available (common) to all objects of the class. Static class methods don't receive the 'this' pointer to the object.
Now, what about static variables inside class methods? Do they still retain their value on exit upon re-entry? Or is there something about the way classes act that changes this behavior?
Lilith
|
|
|
|
|
Static variables inside functions, be they global, member or static member functions, are initialised on first use and retain the value between invocations. If the class that contains the member with a static local variable is destroyed and re-created the variable still retains its value - It does not reset.
Steve
|
|
|
|
|
Folks,
First post here - sorry if wrong forum or has been asked before.
I'm looking for an API call or "a strategy" to allow my program to
determine if it is being run during a normal interactive Windows logon
process (for example, as part of a logon script) versus afterward.
This program will only be run on W2K and above. Been looking at the
LSA functions, not seeing anything obvious.
Thinking about things like enumerating processes and like, looking for
some kinda context.
Anyone see anything about doing this kinda thing, on this board or
elsewhere.
-Shawn
|
|
|
|
|
If you want to determine if you are being run during logon by a script you may want to look at your parent processes. I believe, don't remember right now, but during logon the scripts are executed by USERINIT.EXE and not WINLOGON.EXE (If they are executed by WINLOGON.EXE USERINIT.EXE will still be present and it goes away after you have logged in).
So, either a) your parent process or parent's parent will be USERINIT or it will be WINLOGON and USERINIT will still be running and present on the system.
You should do some experiments with walking your parent process. USERINIT does not go away until all logon scripts have run (They are synchronous unless you start a seperate process and don't wait). So, even if USERINIT is your parent after logon, USERINIT goes away so you will see it as the parent of explorer, but the process will not exist anymore.
This is one way; there are other methods which can be attempted some more complex and require system components.
8bc7c0ec02c0e404c0cc0680f7018827ebee
|
|
|
|
|
Toby,
Yes, this is exactly the information I was seeking (except you
filled in the details so eloquently) ... I will try this strategy
this weekend and report back.
Thank you again.
-Shawn
|
|
|
|
|
You can find the logon sid of window station winsta0 if that is same as the logon sid of the process it means that the process is running in interactive logon session.
I have some code in the following article
http://www.codeproject.com/buglist/dbgfix.asp[^]
There is some code that finds out whether the user is interactive user or not
|
|
|
|
|
Thanks Rama,
Well, it not so much that I want to find-out if the user
is interactive or not. Its more to do if whether he is currently
being logged-in or not.
Point being - I have an executable i want him to be able to run
from his login script, but not afterwards ... And if this user
was to manually kick-off his login script (therefore this
program) later, that it would detect this, and the program
would alert.
Do you still think there is anything in your article worth
investigating because to be honest, my ideal solution would
be something more "straight-forward" like your suggesting.
-Shawn
|
|
|
|
|
I am afraid that will not work. You have to find out the parent process of your script and see if it is userinit.exe as suggested by Toby.
-- modified at 15:50 Friday 20th January, 2006
|
|
|
|
|
WlxActivateUserShell() will start the USERINIT process which occurs after the user has logged in and I also believe at this time switches to the interactive desktop. Then the login scripts are run (I don't remember if they are run on the interactive desktop or security desktop but I belive the interactive desktop).
If this is true, this means that you would not be able to determine if you were run during the login process/scripts by using this detection as you would already be logged in. You also couldn't find out what the current desktop is to determine this if you are already on the interactive desktop when the scripts are run, which I believe is the case.
8bc7c0ec02c0e404c0cc0680f7018827ebee
|
|
|
|
|
I misunderstood the question. The logon scripts are run in interactive desktop so my method will fail.
|
|
|
|
|
Toby, Rama
You guys are great help. The other thing is, this strategy has to work
with both Windows XP Professional Fast Logon Optimization AND with
login scripts running synchronously or non-synchronously.
So again, looks like my best bet is enuming userinit.
Cant say thanks enough.
-Shawn
|
|
|
|
|
You can also look if explorer is running yet (unless the shell was replaced) as a backup verification.
8bc7c0ec02c0e404c0cc0680f7018827ebee
|
|
|
|
|
Ok gents ... just walked my procs on a typical logon ... here's are
the results (proc.exe is my proc).
pid=1484 proc=proc.exe
pid=3412 proc=cmd.exe
pid=3120 proc=userinit.exe
pid=972 proc=winlogon.exe
pid=892 proc=smss.exe
pid=4 proc=System
pid=0 proc=[System Process]
so looks like userinit is the ticket, unless you guys see something
else I should be keying in on.
|
|
|
|