batch file from controller - how to execute on server side - asp.net-mvc

I understand this might not be the best idea - but I am trying to test running a batch file on a post to send a msg.exe message to a user. This works when using IIS express locally, but once I publish to my intranet site it does not work - no errors just no message. Any ideas?
string filepath = "C:\\msg\\msg.bat";
System.Diagnostics.Process.Start(filepath);

Related

File upload request in SharePoint Website using JMeter proxy recording and load test fails

I have issues recording a file upload request using JMeter Proxy. The file could be selected with the browse option and on pressing the SAVE or SUBMIT button the page refreshes and goes to the initial state.
I'm working on a load test project on a On-Premise SharePoint(v2013) Website with the following conditions,
Form-based authentication - Login and session cookies are working
correctly with JMeter.
Need to pass few dynamic variables like
__EVENTVALIDATION, __VIEWSTATE, __REQUESTDIGEST,
__VIEWSTATEGENERATOR which needs to be extracted using a RegEx
Extractor in JMeter from every request and needs to be passed to
subsequent POST request as parameters.
As a workaround, I used BlazeMeter Chrome Extension to record the file upload requests and all the API calls could be recorded correctly. But has issues replaying it in JMeter. The file upload fails again even though all the requests pass.
All the file upload POST requests passes with a success response code
of 200 and gives the same HTML content as the response, while replaying it in JMeter, but the file never gets uploaded.
If you are absolutely sure that you have HTTP Cookie Manager in place, correlation is working fine, etc. in order to record the file upload request it should be just enough to put the file to JMeter's "bin" folder so HTTP(S) Test Script Recorder could locate it.
Make sure the file is present in the JMeter's "bin" folder during replay as well. Check out Recording File Uploads with JMeter guide for more comprehensive explanation of the limitation.
If it doesn't help your JMeter configuration is still not correct. The common practice is capturing a request from a real browser and from JMeter using a sniffer tool like Fiddler or Wireshark. This way you will be able to inspect requests on a low level and identify the differences. Once you find out the cause - amend JMeter configuration so the request originating from JMeter would look exactly as the one which comes from the browser.

Can Rails pass a shell command to the local machine?

I am trying to get rails to select document attachments, then kick off the email client with the documents attached.
I have it working on my development laptop. If I build a string with the appropriate parameters and pass that to system() then it kicks off the email client with the attachments..
The string looks something like
#email_content = "C:\Program Files (x86)\IBM\Lotus\Notes\notes.exe"
"Mailto:?Attach=C:\Users\cm\RubymineProjects\technical_library\public\images\1\8302_printed.pdf
The first part calls the notes exe and the second part starts and email with the attachments. That worked fine on my laptop.
However, when I moved it to the server, it isn't kicking off the email client. I believe that it is because the shell commands are trying to execute on the server, not on the client.
Is it possible to run a shell command on the client machine? I am trying to get this working with Windows first and then the Mac environmemnt. I tried changing the C:\ to the machine name. i.e. \chrislaptop\Program Files (x86)\IBM\Lotus\Notes\notes.exe. but that didn't work.
No, fortunately that is not possible.
Imagine what happens when a request to some random page on the internet could trigger shell scripts on your local computer...
Arbitrary code execution escaping the browser is too invasive-- your app should not have access to the client's machine.
However, some applications may support URIs that open specific applications outside the browser. You generally see this more on mobile devices, but Spotify for example supports links that look like: spotify:artist:5lsC3H1vh9YSRQckyGv0Up which asks the user whether it is ok to open the Spotify application.
https://news.spotify.com/us/2008/01/14/linking-to-spotify/

404 error when accessing Struts2 Web application

I had created a web application and committed the code in CVS. The web application is working good in my machine. When i tried to import the same code in another machine i am getting 404 error. I tried importing the code via ftp from my machine to another machine and also checking out the code from CVS. But still i get 404 error.
I also noticed that there is no error that had been captured in the console or in the application's log. Could someone help me in how to proceed further in identifying the issue. Please let me know if i need to post any further details regarding the issue.
I notice this issue to be in the Websphere server. I tried hosting the application in different machine and found that in few machine the same code is working good and some it is not. Is there any way to compare the server configuration?
In the WAS server 6.1 i added the below value in the web container and the application worked fine.
Steps:
In the server admin console, click on Application Server--> --> Web container--> custom properties.
Add the name as com.ibm.ws.webcontainer.invokefilterscompatibility and value as true.
Thank you all for the response.

Trying to call svn.exe from batch file called by .NET webpage - odd results

The situation: I have a mvc.net web page which, when called, runs a batch file on my server using System.Diagnostics.Process.Start and cmd.exe. The batch file contains a line that runs "svn.exe update myfilepath" and should therefore update the files on the server.
What's happening?
- the batch file is running, but the call to svn.exe does nothing, nor produces any error messages.
- if I run the batch file by double clicking, the svn command DOES run successfully.
I guess this is a security issue, but I'm no expert on this and I cannot make any headway.
The site is hosted on Windows Server 2008 R2 and the app pool is using the ApplicationPoolIdentity system. I have tried running the app pool as Network Service and also adding Network Service as a user that can Read/Execute to svn.exe.
Please help!
This could be proxy related. It's possible that you access the Internet via a proxy, but that the user profile for the app pool identity isn't configured like this. You may need to use a domain account that you can log on as in order to create a suitable user profile. You will also need to make sure IIS is loading the profile by ticking the appropriate option.
(Another possibility is that the working directory for the process you are starting is not set correctly to the root of your Subversion working copy. We've established this wasn't the problem in your case.)

Deploying an ASP.net application

What is the correct proceedure when deploying an ASP.net MVC application? I am using the built in forms based authentication and deploying using the publish function in VS2008 but when deploying it doesn't seem to deploy the ASPNETDB to the server and I end up with errors like
An error occurred during the execution of the SQL file 'InstallCommon.sql'. The SQL error number is 1802 and the SqlException message is: CREATE DATABASE failed. Some file names listed could not be created. Check related errors.
CREATE FILE encountered operating system error 5(Access is denied.) while attempting to open or create the physical file 'C:\INETPUB\WWWROOT\HOURS3\APP_DATA\ASPNETDB_TMP.MDF'.
I looked this up and attempted to change the sql server to run under the local system account as per
http://forums.asp.net/t/984436.aspx
but that doesn't seem to have helped.
When you try to publish this way, I believe you're going to overwrite your database with the one you are currently developing with. This means if you had any changes in your web environment, such as new users, you would lose them when you overwrote them in a publish. Additionally the reason you're probably getting permission denied, is because the file is already in use by the website, and Windows doesn't like it if you try deleting a file that is in use.
Typically I set my databases to publish in a different methodology than the ASP.net files. I often generate an upgrade script using a tool such as RedGate SQL Compare. This allows me to upgrade the one live on the server instead of copying a new file.

Resources