12

I have an interesting problem I have been dealing with for 2 days now.

I have an application connectship warehouse shipping v 6.5 running on Windows 7. I have been in contact with customer service and they unfortunately could not find a solution besides make everyone a local admin on the box.

When i launch CSWShipping.exe located in "C:\Program Files (x86)\ConnectShip\Progistics\CSW\ShippingApplication\CSWShipping.exe"

  • If I log in as a domain user i get run-time error -2146233036 (80131534)
  • If I log in as a domain admin i get run-time error -2146233036 (80131534)
  • If I set my domain user to a local user i get run-time error -2146233036 (80131534)
  • If I set my domain user to a local admin it will work just fine.

The one interesting thing is when I installed the application as a domain admin, I was able to launch it and it worked fine, the user account i used to install the application is not a local admin on the box and the application still works fine.

Things i have tried that don't work:

  • Changed permission on the application and folders to "everyone" and removed inheritance.
  • Changed the compatibility mode for all users
  • Changed the privilege level to "Run this program as an administrator" for all users.
  • Right click run as administrator

When I try to run the application I do not get any UAC warnings

No errors in the event viewer.

I'm at a loss and really do not want to install a bunch of 3rd party software.

Katherine Villyard
  • 18,550
  • 4
  • 37
  • 59
Anthony Fornito
  • 9,546
  • 1
  • 34
  • 124
  • 4
    You don't need a bunch of 3rd party software. Instead, switch your shipping solution to a product from this millennium that doesn't fail without admin rights. – Sven May 03 '16 at 19:56
  • 1
    Bad code is more powerful than good admins. – HopelessN00b May 07 '16 at 01:50

3 Answers3

16

You can monitor what the program is doing using a special diagnostic tool called Process Monitor from Microsoft, and from there potentially determine what is not working.

https://technet.microsoft.com/en-us/sysinternals/processmonitor.aspx

I've used this tool from Mark Russinovich for probably 12-15 years now, when dealing with user rights problems trying to run cruddy old Windows 3.1 / 95 / 98 programs that demand excessive file/registry permissions on NTFS and Windows 2000, XP, and then Windows 7 with UAC.

Though be warned, this tool spews thousands of lines of status data from every running system program when you launch it, so it is often helpful to go down the list and exclude nearly every other running program it detects that you don't care about, before actually running the program you do want to test.

Ref, my own post on SysInternals about this: http://forum.sysinternals.com/exclude-all-processes-currently-in-filter_topic27483.html

The difficulty is not overexcluding to the point that you are missing messages that you told it to suppress from other running system programs, but not also being swamped with thousands of lines of irrelevant logging data.

Explicitly ignoring all "SUCCESS" messages may also help you find errors more easily. Though this is a very advanced tool, and some things it reports are not really serious errors, such as "REPARSE" or "END OF FILE", so it can be difficult to decipher the output from it, and it may possibly not help you at all if you can't figure out how to read its logging output.

Dale Mahalko
  • 755
  • 1
  • 6
  • 17
15

I was able to solve the issue following the steps below

Turn off UAC

Created standard user shippinguser in AD

added domain/shippinguser as a local admin on shippingpc

added shippinguser password to stored credentials.

created shortcut:

%systemroot%\system32\runas.exe /user:domain\shippinguser /savecred "C:\Program Files (x86)\ConnectShip\Progistics\CSW\ShippingApplication\CSWShipping.exe"

Put shortcut all users desktop on mm-dt-ship01

The short will launch CSWShipping.exe as local admin on the computer using domain\shippinguser

When the users double clicks the shortcut they may be prompted for a password.

The user will only have to enter the password once.

I have set the GPO to deny logon locally for this user on any PC under the domain.

Anthony Fornito
  • 9,546
  • 1
  • 34
  • 124
13

I'd never heard of this software, so I googled it. Unfortunately, in my experience some of these specialized software packages for very specific markets... well.

The actual error message is a .NET framework error: An exception was thrown by a type's initializer. That could be a lot of things, but I'm going to guess that those users don't have permissions to access a needed assembly (but local administrators do).

Your choices are looking for related files and granting the user running the application privileges on those files, or granting local admin rights to that user. Since you granted the directory to everyone, maybe the app put something in Windows (or another directory).

Good luck!

Katherine Villyard
  • 18,550
  • 4
  • 37
  • 59