Visual C++ :: Accessing User Directory In Win 7 Pro?

Jul 12, 2013

I have been using the code below to extract the current user directory in order to read and write to certain files, presumeably independent of whether or not the user has administrative privileges. This has been necessitated in Win 7 because applications installed in the customary C:/Program Files(x86)/ are not allowed full access to files in the installed app root directory. This was working just fine until just this week when suddenly, for the first time, I found that the user directory retrieved was different when the app was run without administrative privileges in 'Start without debugging' configuration, both in Debug and Release configuration. Note that I have tested the identical app on Win2K and Vista and in neither case is it a problem on those OS machines. More mysterious is the fact that this ONLY happens on Win7 (VS2010 Ultimate) when run in the IDE. Run from the windows explorer double click, the app runs just fine in release and debug mode and monitoring the debug version using DbgView indicates that the expected 'Roaming' User directory is retrieved.

For example:

- without debugging (both Debug and Release configuration) the code below produces:

m_csUserDirectory =: C:UsersMPLIAMAppDataLocalPliaTechUeberKrypt

- with debugging (both Debug and Release configuration) the code below produces:

m_csUserDirectory =: C:UsersMPLIAMAppDataRoamingPliaTechUeberKrypt

Either this has been the situation from the outset and I just never noticed it (hard to imagine as I've been on this project for 6 months with 50+ builds), a recent Windows update has changed things, a bug, or I'm just plain stupid (not hard to imagine at all).

From a practical standpoint, if this is the way things are to be, my installer will need to install necessary files in both user directories and the app will need to access both depending upon user privileges.

Code:
/// This routine retrieves the process's environment block
/// using GetEnvironmentStrings, parses that block pointed to
/// by the generic international text pointer LPTCH, and returns
/// the requested string lpszVarStr as a string.
/// Note that the block lpvEnv environment variable substrings
/// are separated by NULL byte, and the block is terminated by a NULL byte.
/// The header files <windows.h>, <tchar.h>, <stdio.h>, <string>, and
/// <iostream> need to be included.

[code].....

View 5 Replies


ADVERTISEMENT

C :: How To Get User Home Directory

Oct 20, 2014

I want to obtain the user's home directory. I know it can be done with getenv("HOME"), but if I'll inspect the value of the enviroment variable HOME, it might work when I run it now, but it won't work on Windows, since windows uses HOMEPATH to save the user's home directory.

Is there a different, more cross-platform way to do it?

View 5 Replies View Related

C++ :: Get User Name And Surname In Active Directory?

Sep 11, 2013

I have a logined user and my running program as system process (not user process).

I want to get user name and surname from AD.

1. GetUserName() dont useful becouse it gets name for current process owner(for SYSTEM in my case).

2. There are userLogin, userName, userSurname and userDisplayedName in user properties of AD. Its possible to get userDisplayedName by NetUserGetInfo(), but
I want to know is it possible to get userName and userSurname?

View 1 Replies View Related

C :: Make A File In Directory That Cannot Be Deleted By User Out Of Program

Jul 4, 2013

I have two questions about C programming here :

1. I want to make a file in the program directory that can't be deleted by user out of the program make that file.for example if I make a file named "123.xyz" by the program named "text.exe" and then exit test.exe ,if I tried to delete the file 123.xyz I faced the error and I could not do it but by the test.exe program that make that file.

2. I heard about a function called "Parbegin()".any way i want to know is there any possible way to run two or more functions of a file.c together,like the parbegin function did an do in OS?

View 2 Replies View Related

C++ :: Allow User To Select Arbitrary File From Working Directory?

Apr 28, 2014

I know how to open a specific files by using

ifstream infile("something.txt");

but how do you let the user select an arbitrary file from the working directory?

View 12 Replies View Related

C/C++ :: Create A Directory / Folder Using It In Visual Studio

Jan 26, 2014

C-> Visual studio 2010-> windows 7

How to create a directory / folder.( to browse/save my files to a directory.) how to specify the path?

I googled , but i cant able to find appropriate as it is showing all in the C#, C++ , objective C. But not in C.

Here i am writing a sample program to my POS device .problem here is it is not taking mkdir(direct/dir.h header file)function. Any alternative is there to make a directory?

View 1 Replies View Related

Visual C++ :: Initializer List - No Such File Or Directory

Oct 21, 2013

I have a project that compiles fine with VS 2010. As I compile it with VS 2012 it generates the entitled error. Why?

View 5 Replies View Related

Visual C++ :: Getting Free Disk Space Of Certain Directory?

Nov 23, 2014

Code:

_int64 free_space_64bit;
PULARGE_INTEGER lpFreeBytesAvailable, lpTotalNumberOfBytes,lpTotalNumberOfFreeBytes;
//char currentPath[MAX_PATH];
//GetCurrentDirectoryA(MAX_PATH, currentPath);
GetDiskFreeSpaceExA("H:C", lpFreeBytesAvailable, lpTotalNumberOfBytes,lpTotalNumberOfFreeBytes);
free_space_64bit = lpFreeBytesAvailable->HighPart << 32 | lpFreeBytesAvailable->LowPart;

This directory "H:C" does exist, if I comment out the GetDiskFreeSpaceExA line, the program doesn't crash, but it leads to some peculiar results (some uninitialized and random value, but at least it doesn't crash)

View 8 Replies View Related

Visual C++ :: Passing Message Using Active Directory?

Jan 29, 2015

I have a DLL developed using pure VC++ (all unmanaged code that doesn't use .NET framework). This DLL will be deployed in different client PCs within a network and will act like an agent.

Now I have establish a communication between this DLL and a WCF web service, that will be deployed in a server PC. The Service will first get a list of PCs either name or IP Address within a network using LDAP (Active Directory) and once, we get the PCs, I have to establish a communication between the web service and the agents that reside in these client PCs,

How can I accomplish this?

View 3 Replies View Related

Visual C++ :: How To Set Starting Root Directory That Selects A Folder Name

Jan 22, 2013

The following code is useful to allow a user to select a particular folder in the disk directory.

Code:
void OpenFolder() {
LPMALLOC pMalloc; //,pMalloc2;
CString strDirectory;
BROWSEINFO bi;
// Gets the Shell's default allocator
wchar_t pszBuffer[MAX_PATH];

[Code] ....

However, if one uses this code over and over, one quickly becomes tired of threading one's way all the way from root directory C:. There is undoubtedly some way to designate a starting directory. The most obvious candidate to set such a target is the:

Code:
bi.pidlRoot = NULL;

But attempting to set bi.pidlRoot to a CString (directory address) errors because 'no suiitable conversion from CString to LPCITEMIDLIST exists'

How can I set the code to open at a designated address in the directory tree?

View 14 Replies View Related

Visual C++ :: CFileDialog - Overriding Default Behavior Of Selecting Initial Directory

Oct 31, 2013

There was an "impovement" since Windows 7 in algorithm for selecting the initial directory, which is described here OPENFILENAME structure. Briefly:

Windows 7:

If lpstrInitialDir has the same value as was passed the first time the application used an Open or Save As dialog box, the path most recently selected by the user is used as the initial directory. Otherwise, if lpstrFile contains a path, that path is the initial directory.

Otherwise, if lpstrInitialDir is not NULL, it specifies the initial directory. If lpstrInitialDir is NULL and the current directory contains any files of the specified filter types, the initial directory is the current directory. Otherwise, the initial directory is the personal files directory of the current user. Otherwise, the initial directory is the Desktop folder.

The problem that this behavior is not what users of my program expect. Another constraint is that I need to use old CFileDialog dialog, not Common File Dialogs. I've tried to use advises described on StackOverflow and on MSDN. This solution by EllisMiller works perfectly:

Specifying a full path (including filename) in lpstrFile. The filename of course shows up in the filename box which is annoying. I ended up using a filename of "." and adding a bit of code to clear the filename combobox once the dialog is open.

BUT I can't figure how to clear the filename combobox. I've tried to add hook procedure, enumerate windows and clear text, but this didn't work for me. So, my question is: how can I clear text in the filename combobox of CFileDialog?

View 12 Replies View Related

Visual C++ :: How To Log Off A User When Workstation Is Locked

Nov 30, 2013

I wrote a Windows application that comes with two modules: service and user-mode exes. The service implements its own scheduler and may log-off a user at a predefined time. For that I was using the following call that is triggered from my user-mode module exe in a logged-on user session that has to be logged off:

Code : BOOL result = ExitWindowsEx(EWX_LOGOFF, reason);

This works fine, except of the situation when a user's account is locked. In that case that API doesn't seem to do anything at all even through I get 1 returned from it.

So I was curious, is there any other way to log off a user when their account is locked? (One condition I have in this case is that if that user had any unsaved documents then the log-off should not be forced.)

View 9 Replies View Related

C :: Multi User Chat Over TCP/IP In Visual Studio

Jun 1, 2014

I want to have a multi user chat over TCP/IP. I already have the code for both the server and the client and so far I am able to send messages from the client to the server. Now I want to make it a multi user chat. I am executing the codes using Visual studio's Command prompt(not Windows Command Prompt). I have read somewhere that we have to use select() function.

View 2 Replies View Related

Visual C++ :: Allow User To Enter A Value As C String In Certain Form

Oct 14, 2013

My program was to allow the user to enter a value as a C string in the form: xxx,xxx,xxx,xxx,xxx.xx, where x can be any digit. Well, so far here is my attempt. I think the question is, would I have to implement a switch statement for the digits, the comma, and the decimal, so that when a user inputs, let say 52,000.00 the switch statements would read the 1st digit, checks for decimals/commas and if not, proceed to read 2nd digit, and repeat?

Code:
#include <iostream>
#include <string>
int main() {
using namespace std;
char buffer[256];
char tempBuff[256] = {'

[Code] ....

View 3 Replies View Related

Visual C++ :: Allowing User To Input Decimal?

Oct 21, 2013

This code is near complete, the only task that is left is allowing the user to input a decimal and then two integers, or automatically using .00 decimal.

The automatic part: /*This is not correct.

printf(".%.2d
", number);
*/

But that does no good for me. Question: Do I have to create a some sort of while loop again, to allow the user to input a decimal followed by integer?

Code:
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
int j , i = 0, k = 0;
int number;

[code]....

View 1 Replies View Related

Visual C++ :: How To Tell If User Account Is Set Up With Roaming Profile

Nov 22, 2013

Is there a way to know from a Windows service application (running as a local-system) if a specific logged in interactive user account is configured with a roaming profile? I need this to be compatible with Windows XP SP3.

View 9 Replies View Related

Visual C++ :: User Callback And CResource Exception

Oct 8, 2014

In my Project, I'm using my Parent Dialog(TestDlg) as a background dialog.

Child Dialog 1 = Main.cpp & Child Dialog 2 = Dummy.cpp

1. I like to call both dialog continuously one by one.

Using Timer function i called continuously the dialogs.

After 5 minutes getting an error, "0xC000041D An unhanded Exception was encountered during a User Callback".

2. Then, I'm using CGdiPlusBitmap.cpp file to load PNG image into buttons.

After 5 minutes getting an error - "CResource Exception".

For reference test code attached.

View 14 Replies View Related

Visual C++ :: Taking Decimal Input From The User

Feb 21, 2015

I want the input for the price in decimal format(15.00). If the input is in integer format then I want to convert it to decimal format.

The maximum price for a sale is 999.99 and minimum is 0.00.

I have tried so far:

Code:
#include<iostream>
using std::cout;
using std::cin;
void main(){
float eventPrice;

[Code] .....

A valid input will be:

1.8,
0.8,
0.00,
0,
9,
99

View 2 Replies View Related

Visual C++ :: Creating Containers That Respond To User Actions?

Oct 16, 2013

I am looking for direction on what topic I should be reading up on. I am new to C++ and Windows MFC.

This is my real world problem, in the context of the application user. (these term do not refer to OPP concepts)

I want to create shapes (containers) in an application that will respond and collect other objects;

Imagine a Windows frame, containing several 2 dimensional squares. I want to be able to drag and drop marbles into the squares,and have the square retain and display the marbles in the square, in the order that they were dropped in.

How do I create the shapes, and how will the square sense when a marble is over it?

How would I create irregular shapes (a combination of lines and curves) that would be responsive to the marbles?

View 2 Replies View Related

Visual C++ :: Program That Take Input From A User And Calculate It In A Do While Loop

May 15, 2013

I'm trying to create a program that will take input from a user and calculate it in a do-while loop. The program does the calculation but the answer is wrong. The loop also doesn't work. The purpose of the program is to see how much an item will cost after a discount is taken off and tax is added.

#include <iostream>
#include <cmath>
using namespace std;
double original_cost;
double discount;
double tax;
double total;
char answer;

[Code]...

View 2 Replies View Related

Visual C++ :: How To View Line Length In Cm To User (using Map Mode)

Nov 3, 2012

My program allow user to draw lines and the user should know the length of the line that he draw in centimeter (.cm)

I did use

SetMapMode(MM_LOMETRIC) function to convert the device units into logical units

and it works correctly but I don't know how the line length will appear to the user to let him draw in correct length

I think to make the length appear on the mouse when the user draw but I don't know how I calculate and display it.

View 2 Replies View Related

Visual C++ :: Showing Time For A User While Entering Some Characters

Dec 26, 2014

Im working on my project for college and i want to know how to add sth similar to a chronometer for user to see how much time have passed while entering some characters using cin.getline function.

View 2 Replies View Related

Visual C++ :: Find The Location Of Certain Digits From User Input

Sep 24, 2013

I have been trying to finish this code (function) for a while now, but am stuck on the last part. In this code, I prompt the user to select a number of integers and any number of digits and then find the smallest and largest value within these digits. On the next part, I am supposed to determine which of the given digits the smallest and largest are located such that the output should be:

Digit _ can be found in integer number(s): _, _

Here is what I have tried:

Code:
int digitSizeLoca() {
int userNumInteger;
int* iPtr;
int* iPtr2;
int* iPtr3;
int value;

[Code] ....

Seems to do the job, but it always outputs 1, 2...

View 4 Replies View Related

Visual C++ :: Moment When All Interactive User Accounts Have Been Logged Out

Nov 17, 2013

I'm writing a Windows service using WinAPIs and C++. One of the options is that I need to send the system into sleep after all users are logged out. The log-out command is started from the UI (which can notify my service), the problem is knowing how long it takes for all user accounts to be completely logged out before putting the system to sleep.

I first thought to introduce an artificial delay from the moment when the log-out command is issued and before entering the sleep mode, but in a situation when some user account was configured with a roaming profile, the log-out process may well exceed my delay.

how to know if all user accounts are logged out "for sure"?

View 10 Replies View Related

Visual C++ :: Using Loop To Take User Input And Keep Running Sum Until 0 Entered

Feb 28, 2013

I am stuck on an exercise where i am supposed to use a loop to take user input and keep a running sum until the user enters a 0. the code i have so far is:

#include <iostream>
int main() {
using namespace std;
int num;
int total = 0;
int x;

[Code] ....

The full text of the error message is: error c2678:binary'>>':no operator found which takes a left-hand operand of type 'std::istream' . and one more thing i was wondering, is there a difference between c++ and visual c++?

View 4 Replies View Related

Visual C++ :: Create A File That Ask The User To Enter His Info

Nov 9, 2014

What I want to do is create a file that will ask the user to enter his info,n then store it in a text file The screen will ask the user if he wants to update his info. if he says yes then the screen will be cleared and the old info will be printed on the screen. The user will enter his new info that will be stored in a new file. My problem is that once the user finishes entering his input the program just closes D: and the rest of the program won't run.

Code:

int main()
{
string ans;
ofstream Xfile("original.txt");
cout <<"Enter your name and address please"<<endl;
cout<<"Press Ctrl+Z+Enter when you are done"<<endl;
string name_and_street;

[Code]...

View 3 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved