• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 519
  • Last Modified:

timeheet program not working since changing sa password

We just changed the sa password on our 2000 sql server and now no one can access their timesheet which is a database on the sql server.  They get this error:
[microsoft][odbc sql server-driver][sql server]login failed for user 'sa'.
After the error the timesheet appears to open but has no data in it.

I'm not sure this problem can be addressed from the sql server angle or whether it has to do with a password embedded in the program -The timesheet program was written by my predecessor and installs to the local computer.  
It is in c:\programs folder along with this logfile entitled unst.log.  Here are the contents:

 %% PLEASE DO NOT MODIFY OR DELETE THIS FILE! %%
 %% This file contains information about the installation of an application. %%
 %% It will be used to automatically remove all application components from your computer if you choose to do so. %%


NOTE: Beginning of the bootstrapper section

*** ERROR: Unable to create a directory named 'C:'
*** DURING THIS ACTION: CreateDir: "C:"

CONFIG: Title: "User's Time Sheet"

ACTION: RegKey: "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "SharedDLLs"

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\VB6STKIT.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\COMCAT.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\STDOLE2.TLB"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\ASYCFILT.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\OLEPRO32.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\OLEAUT32.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\msvbvm60.dll"
(File currently on disk was already up to date)

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\COMCAT.DLL"

ACTION: TLBRegister: "C:\WINDOWS\SYSTEM32\STDOLE2.TLB"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\OLEPRO32.DLL"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\OLEAUT32.DLL"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\msvbvm60.dll"

NOTE: End of the bootstrapper section

NOTE: Now spawning the main Setup program 'Setup1.exe'....

ACTION: CreateDir: "C:\Program Files\TmSht"

ACTION: CreateDir: "C:\Documents and Settings\All Users\Start Menu\Programs\Department Time Sheet Program"

ACTION: SharedFile: "C:\WINDOWS\system32\MSCOMCTL.OCX"
(File currently on disk was already up to date)

ACTION: SharedFile: "C:\WINDOWS\system32\MSSTDFMT.DLL"
(File currently on disk was already up to date)

ACTION: SharedFile: "C:\WINDOWS\system32\MSDBRPTR.DLL"
(File was not found or was an older version -- new file copied)

ACTION: SharedFile: "C:\Program Files\Common Files\DESIGNER\MSDERUN.DLL"
(File was not found or was an older version -- new file copied)

ACTION: SharedFile: "C:\WINDOWS\system32\MSBIND.DLL"
(File was not found or was an older version -- new file copied)

ACTION: SharedFile: "C:\WINDOWS\system32\msado25.tlb"
(File currently on disk was already up to date)

ACTION: SharedFile: "C:\WINDOWS\system32\MSDATLST.OCX"
(File was not found or was an older version -- new file copied)

ACTION: SharedFile: "C:\WINDOWS\system32\MSDATGRD.OCX"
(File was not found or was an older version -- new file copied)

ACTION: SharedFile: "C:\WINDOWS\system32\MSADODC.OCX"
(File was not found or was an older version -- new file copied)

ACTION: PrivateFile: "C:\Program Files\TmSht\TmSht.exe"
(File was not found or was an older version -- new file copied)

ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSCOMCTL.OCX"

ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSSTDFMT.DLL"

ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSDBRPTR.DLL"

ACTION: DllSelfRegister: "C:\Program Files\Common Files\DESIGNER\MSDERUN.DLL"

ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSBIND.DLL"

*** ERROR: No entrypoint for DllRegisterServer() was found in 'C:\WINDOWS\system32\msado25.tlb'
*** DURING THIS ACTION: DllSelfRegister: "C:\WINDOWS\system32\msado25.tlb"

*** ERROR: An error occurred while registering the file 'C:\WINDOWS\system32\msado25.tlb'
*** ERROR: (User Responded with 'Ignore')
*** DURING THIS ACTION: DllSelfRegister: "C:\WINDOWS\system32\msado25.tlb"

ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSDATLST.OCX"

ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSDATGRD.OCX"

ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSADODC.OCX"

ACTION: ShellLink: "Department Time Sheet Program", "User's Time Sheet"

ACTION: RegKey: "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "App Paths\TmSht.exe"

ACTION: RegValue: "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\TmSht.exe", ""


There is a file in the timesheet installation directory called setup.lst - here are the contents of that:


[Bootstrap]
SetupTitle=Install
SetupText=Copying Files, please stand by.
CabFile=TmSht.CAB
Spawn=Setup1.exe
Uninstal=st6unst.exe
TmpDir=msftqws.pdw
Cabs=1

[Bootstrap Files]
File1=@VB6STKIT.DLL,$(WinSysPathSysFile),,,6/18/98 12:00:00 AM,102912,6.0.81.69
File2=@COMCAT.DLL,$(WinSysPathSysFile),$(DLLSelfRegister),,5/31/98 12:00:00 AM,22288,4.71.1460.1
File3=@stdole2.tlb,$(WinSysPathSysFile),$(TLBRegister),,7/25/01 7:00:00 AM,17920,3.50.5014.0
File4=@asycfilt.dll,$(WinSysPathSysFile),,,7/25/01 7:00:00 AM,77824,3.50.5014.0
File5=@olepro32.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,7/25/01 7:00:00 AM,106496,5.0.5014.0
File6=@oleaut32.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,7/25/01 7:00:00 AM,569344,3.50.5014.0
File7=@msvbvm60.dll,$(WinSysPathSysFile),$(DLLSelfRegister),,7/25/01 7:00:00 AM,1388544,6.0.92.37

[IconGroups]
Group0=User's Time Sheet
PrivateGroup0=False
Parent0=$(Programs)

[User's Time Sheet]
Icon1="TmSht.exe"
Title1=User's Time Sheet
StartIn1=$(AppPath)

[Setup]
Title=Time Sheet Installation
DefaultDir=$(ProgramFiles)\TmSht
AppExe=TmSht.exe
AppToUninstall=TmSht.exe

[Setup1 Files]
File1=@MDAC_TYP.EXE,$(AppPath),,$(Shared),6/26/98 12:00:00 AM,8124720,4.71.1015.0
File2=@mscomctl.ocx,$(WinSysPath),$(DLLSelfRegister),$(Shared),5/26/00 12:08:04 AM,1064456,6.0.84.98
File3=@msstdfmt.dll,$(WinSysPath),$(DLLSelfRegister),$(Shared),6/5/01 1:51:37 PM,118784,6.0.88.4
File4=@MSDBRPTR.DLL,$(WinSysPath),$(DLLSelfRegister),$(Shared),6/18/98 12:00:00 AM,299008,6.0.81.69
File5=@msderun.dll,$(CommonFiles)\designer,$(DLLSelfRegister),$(Shared),6/5/01 1:51:37 PM,136192,6.0.88.4
File6=@MSBIND.DLL,$(WinSysPath),$(DLLSelfRegister),$(Shared),6/18/98 12:00:00 AM,77824,6.0.81.69
File7=@msado25.tlb,$(WinSysPath),$(DLLSelfRegister),$(Shared),7/25/01 7:00:00 AM,81920,2.70.7713.0
File8=@MSDATLST.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),6/24/98 12:00:00 AM,232248,6.0.81.69
File9=@MSDATGRD.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),10/13/98 1:38:46 PM,260920,6.0.81.69
File10=@MSADODC.OCX,$(WinSysPath),$(DLLSelfRegister),$(Shared),8/18/98 7:24:40 PM,118064,6.0.81.71
File11=@TmSht.exe,$(AppPath),,,10/4/01 1:40:23 PM,163840,1.3.0.0

; The following lines may be deleted in order to obtain extra
; space for customizing this file on a full installation diskette.

Thanks for any help.
Karen


0
ksilvoso
Asked:
ksilvoso
  • 2
1 Solution
 
SStoryCommented:
That is terrible. I'm sorry for you that the person used the sa (admin) account to do this.  
This is a terrible practice and yes it is probably embedded in the code.  If not, what you are looking for is a connectionstring to the database.  

This is a Visual Basic 6.0 application and he is probably using ADO. If you need to know what the string looks like, visit connectionstrings.com (click on the ADO/ then SQL Server)

It is possible he stored it in the registry (also bad idea), or in a file in the same directory as the program.

If you do find it, I **HIGHLY** recommend that you create a normal user account in your SQL Server, give it the appropriate rights, and change the program to use that account instead of the all powerful sa account.

Do you have the code?  Do you know how to program?  Do you know Visual Basic?
If you do, search all code for "user=sa"  (check connectionstrings.com to be sure this is the right syntax).

If you can't find it, you might go to systeminternals.com, download the regmon.exe and filemon.exe and run those both before running the application to see what registry keys and files the application accesses.

HTH,

Shane
0
 
ksilvosoAuthor Commented:
Thanks for this info - my cohort found the password in a system file in the installation folder and changed the password back and now all is well.
Karen
0
 
SStoryCommented:
Karen,

You are welcome.

You _REALLY SHOULD_ create a new sql server account with limited rights and use that instead of sa, which is "god" mode so-to-speak.  That is if the database is important and especially if it is connected to the outside world.

Thanks,

Shane
0

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now