Run As Other User Using Process.start Works On XP, Not On 7?
Oct 6, 2010I use following code to run process as other user [with admin privileges]
[Code]...
I use following code to run process as other user [with admin privileges]
[Code]...
I thought I postet this yesterday but I can't find my thread so if this is a duplicate please point me at the original one. Background: I need to create a user account and Modify it's registry before the user logs on the first time. Creating the account is done by using the Winnt provider (works great). To create the profile I'm trying to use Process.start to launch a process as the newly created user. With the use of loaduserprofile property the users profile gets created and i can do my regwrites without problem.
[Code]...
I have a Windows Service that needs to start other processes under a user context other than that used by the service. I've seen other posts related to this but have seen no resolutionI've tried many things and have been unsuccessful in starting the process from a Windows Service when a username, password is supplied. orking as it's a requirement of our system to do this and it worked fine until recently and only fails on Vista and Windows 7 (works on XP).
The following code is used to start the process.
Dim P As New Process
P.StartInfo.Domain = Domain
[code].....
I have a vb.net 2008 application that is supposed to run at startup. After meeting certain conditions, the PC is supposed to restart. Below is the code that is failing:
System.Diagnostics.Process.Start("shutdown", "-r -t 00 -f", myUsername, myPassword, myDomain)
myUsername and myDomain are both strings while myPassword is a SecureString. The application works properly when execute manually, but give the following error when executed from startup (either by placing in the startup folder or by adding to the registry):
The directory name is invalid
Also, the program executes properly when the last 3 arguments are left out and the user has the necessary rights.
How do I force a restart using an specific, alternate user credentials on startup?
I'm using Process.Start to start an external command line application and using the StartInfo.Arguments method to send parameters to the application. I imagine I'll need to use a loop... but I can't figure out exactly how yet.I need to send anywhere from 1 - an infinite number of files names to this application. Each file has to be sent one after the other. So once the first one is done, I need to loop back around and past the second one.I can probably use the Directory.GetFiles method to get all of the files, but I don't know how to assign them.
View 7 RepliesVisual Basic 2010 - Net Framework 4.0 Client
I have an application (application #1) running with Administrator privileges on Windows 7.
I want application # 1 to start another application (application #2) without Administrator privileges so application #2 is running as a standard user.
Is there a way to do this? I have been using Process.Start.
Here's what I currently have:
[Code]...
I've commented out various things to limit it to specifically this command (example, I can swap mklink out with notepad and it works fine). The command runs fine from a DOS window, but can't be found when I use it this way. I also tried using the SHELL command just to test and I get the same results. No idea why it can't be found, as like I said it executes from the command prompt just fine.
I have written a windows service that is meant to launch a notepad when a specific action happens. The problem i have is that even though the service launches notepad, the actual notepad it self is NOT visible. I know that it has been launced because i can see the process in the task manager. By the way the process is listed as a SYSTEM process rather than a process under my user name (i believe that is because my process is a "LocalSystem" one).
View 4 RepliesMy app starts an On-Screen Keyboard process like this:
Dim PID as System.Diagnostics.Process
:
PID = Process.Start("C:WindowsSystem32osk.exe")
:
[CODE]...
It seems to work 90% of the time. However, sometimes the PID.Kill() fails because it says the process already exited. At this point the OSK is always still there on screen. Yes, I know my code should be testing to see if the process is still running before trying to kill it, but given that the OSK is still on screen..
I have a program that starts another program after setting the regkeys basically the program continually syncs the calandar of outlook and another application.I set the regkeys than launch the c:sync.exe app. I have tried a simple process.start and launching the process as a thread and they both do the same thing: The other process starts and works as it should but my main program goes "White screen" or "not responding" until the process.start has exited.
I want the process.start to run in the background so if users click in my main app it responds and truly that they can access the context menu of my main app from the taskbar while the process.start is running.
Trying to create a button that when clicked will check to see if a certain process image is running and if that process is running give the process focus. If the process is not running then start the application.
View 9 RepliesWhats happening is I run the code below and get the following error "The system cannot find the file specified". I've read that with UseShellExecute set to false that you can't use WorkingDirectory.
Dim Password As String = "password"
Dim SecureStringPassword As New System.Security.SecureString
For Each c As Char In Password
[Code].....
How would I go about starting a new process without it being the child of the calling process.
Example:
Main Program (Caller.exe)
process.start("file.exe")
i use System.Diagnostics.Process.Start to run a process
example :
Dim p As New System.Diagnostics.Process
p = System.Diagnostics.Process.Start("D:ProjectApplication.exe")
it works perfectly during run time. but after i deploy to server.... this code did nothing, it did not call out this process
I am writing an application that in the end needs to execute another executable at some point, the problem is that the executable has dependencies in the directory it runs in that are required to operate. When I use the Process.Start to run the executable it errors out because it's looking for the dependencies in my applications directory.
I tried the startInfo.WorkingDirectory option but that didn't seem to do it either (not sure if I did it right) - here is how I used that:
Process.Start("my.exe").StartInfo.WorkingDirectory = "C:Test"For the life of me I cannot find how to set the "Start In" directory. I looked everywhere, so unless it's under a different name, I'm at a loss.
Recently i created a programme , making it work only in a certain process.
e.g: my programme only works in My Documents. something like that ?
I am trying to create an app that will perform actions on specific times (much like the Windows Task Scheduler). I am currently using Process.Start() to lunch the file (or exe) required by the task. I am initiating a process by calling a file (an .mp3) and the process starts WMP (since it is the default application), so far so good. Now I wan't to kill that process. I know that it is normal behavior for the Process.Start(string, string) to return nothing (null in C#) in this case. So I am asking how can i close WMP when I called it through Process.Start(string, string)??
[Code]...
need to know exactly how does the API functions Read/Whrite Process works. I'm so confused while working. I know that I have to work using something like sectors. But I don't know how. Can someone give me an example. I dont know hoe to do it. for an example, for you to give me. Create a basic programa with a button and a textbox the button searchs what is in the textbox in a process memory. Search the title of a program for example.
View 2 RepliesFrom the exception it throws, it cannot find a critical database file called cakecreationdb.accdb. I am at my wits end over this problem and have been up all night trying to solve it. I am quickly running out of time to do so.
The copy to output is set at copy if newer. I have also tried copy always and still get the same result.
We have a WCF service hosted in IIS that currently calls a VB6 DLL to do part of its job. This works fine, but we can't deploy the service to a 64-bit target environment without configuring IIS to run it in a 32-bit worker process.I am currently investigating ways around that restriction. Porting the VB6 DLL to .NET is not possible for various reasons, so I created an ActiveX EXE wrapper around the DLL in VB6, so that the service can run in 64-bit and the VB6 parts in 32-bit.
When I tested the service I got this error:
Type: System.UnauthorizedAccessException
Message: Retrieving the COM class factory for component with CLSID {9AE7303B-D159-43F6-B1A5-52D297581820} failed due to the following error: 80070005.
After some Googling I found that this is due to either:
Calling an MS Office component
DCOM permissions not being configured
NTFS file permissions not allowing read/exec access to the IIS worker process identity (ASPNET in my environment)
Of these:
Definitely not applicable Also not applicable; I am not hosting the EXE in DCOM or COM+, just a simple COM out-of-process activation
This looks likely; however, I checked the permissions, and NTFS reports that the Users group (which ASPNET is a member of) does indeed have read/exec access to the file I tried calling the EXE from a unit test fixture, which is executed in my admin-level account rather than the IIS worker process account, and it worked fine, so the error is definitely something to do with permissions. I'm not sure what to do next.
UPDATE:The IIS virtual directory is configured for Anonymous+Windows access; the WCF service uses only Anonymous authentication, the Windows authentication is for the VS debugger. Task Manager reports that the aspnet_wp.exe process is definitely running in the ASPNET account.I explicitly granted Read and Execute access to the ASPNET and IUSR_<machine> accounts on all the COM exes and dlls involved. This made no difference.
I explicitly granted Local Launch and Local Activation access to the ASPNET and IUSR_<machine> accounts on the relevant interfaces in the DCOM configuration. This made no difference either.Keep trying to get this working somehow.Go the whole hog and host the EXE in COM+.Give up. Tell users that the WCF service must be configured to run in a 32-bit app pool on 64-bit Windows.
Is it possible to use system.diagnostics.process.start("Process.exe")But the process would not be seen by the user? For example, I want to play an audio in the background using windows media player, the audio will play but wmp won't be visible. Is it possible?
View 1 RepliesHow To Start Process From URL
View 9 RepliesI have a form where the user chooses a facility and then the list of patients for that facility are displayed in a data grid view. When I click to add a resident, the last name field on the data grid view is highlighted in blue below the last record that already exists.If I try to start typing without clicking in that cell, the facility changes - it looks like the control is still in the facility drop down box. How can I code it so that the user can just start typing in the data without having to physically click in the cell to start entering data?
I'm trying to execute a 3rd party application, called from a .cmd batch file, called from a self-hosted WCF service. Like this:
WCF --> .cmd --> 3rd party app
For whatever reason, using the Shell command doesn't work fully. It will call the .cmd file, but the 3rd party app won't kick off (I know the .cmd is firing because I have before/after ECHO statements populating a log file). If I double-click the .cmd file from explorer, the 3rd party app will start just fine. So, I figured, maybe try something besides the Shell command from my WCF service.
So I tried the following code, but it won't kick off the .cmd file at all (echo statements not firing). What am I missing here?
Dim psi As New ProcessStartInfo("cmd.exe", "/C " & System.Configuration.ConfigurationManager.AppSettings("ExStream_CMD_File_Path"))
Dim proc As New Process()
proc.StartInfo = psi
proc.Start()
proc.WaitForExit()
The path in the app.config file is valid (just double-checked). Is there anything wrong with the above code?
Is there any way I can install a global hook or something else on the start of external process. WH_CBT hook, as it appears can only intercept events for processes that have windows, but what if I want to intercept the start/stop of a windowless application or a windows service? Is there any way to do it using .NET?Generally, I want my application to receive a notification of some process being launched knowing only an executable name.Presently I simply use a timer to iterate through running processes, but I wonder if there a better way to do it?
View 4 RepliesI know how to launch a file or executable in VB .NET 2005. The file will launch and execution in the code continues immediately.
Process.Start("MyProg.exe")
But what if I need to start the program, wait until it finishes executing, read the exit code that it sends back, and take some action based upon the action code? How do I do that?
Is it possible to start a process by passing a stream instead of passing a FilePath?
View 9 Repliesok i figured out how to call a different program but i have like 7 things here and i dont know what one to use.....i want to click a button and another program shows up.
first off is this right.
system.diagnostics.process.start()
then my folder path thing is
[code].....
I am trying to run a process started with the following VB statement.
The process will start fine with the proper admin ID that I specify. I have verified this by starting a CMD shell and batch files. They all show the user is my local admin account. However, if I try to run defrag or chkdsk, both commands tell me that I do not have authority to run them. Even though the processes are running under the admin account (shown by Task Manager).
The program is compiled on a Win XP SP3 machine (32-bit) using VB Express 2010. The executable seems to work fine on XP. But when I copy the .EXE file that it generates to my Windows 7 64-bit system, I get the above problem about it not having authority to run these two utilities.
I cannot get process.start work now. I have tried wrapping it as a call outside of my class, but it doesn't matter...it does absolutely nothing.No error msgbox either...
Heres my code
Private Sub mnuWizard_Click(ByVal Ctrl As Microsoft.Expression.Web.Interop.Legacy.CommandBarButton, ByRef CancelDefault As Boolean) Handles mnuWizard.Click
''''''''''''''''''''''''''''''''''''
'Handles Wizard Click Event
[code]....