1. Compare text Listener.ora and tnsnames.ora files.
They place in:
$ORACLE_HOME/network/admin - directory
and
they should be something like this:

---------------- LISTRNER.ORA ----------------------------
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = YOUR_HOST_NAME or IP ADDRESS)(PORT = 1521))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
)
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = c:\orant)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = YOUR_HOST_NAME or IP ADDRESS)
(ORACLE_HOME = c:\orant)
(SID_NAME = YOUR_SID)
)
)

check is correct : YOUR_HOST_NAME or IP ADDRESS
check is correct : YOUR_SID

---------------- TNSNAMES.ORA ----------------------------

YOUR_SERVICE_NAME =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = YOUR_HOST_NAME or IP ADDRESS)(PORT = 1521))
)
(CONNECT_DATA =
(SID_NAME = YOUR_SID)
# or
# (SERVICE_NAME = YOUR_SERVICE_NAME)

)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

check is correct : YOUR_SERVICE_NAME
check is correct : YOUR_HOST_NAME or IP ADDRESS
check is correct : YOUR_SID
-----------------------------------------------------------
if need then correct your parameters.

2. Check haw work LISTENER manually:

- open command prompt window
- enter command:

lsnrctl
..
> status
check is status correct and then:

> reload (if you change any parameter in listener.ora)

you can do simple:

> stop
> start
> status

...
> exit

3. check sqlnet connection:

in command line prompt: tnsping YOUR_SERVICE_NAME
if you have any domain name then check file
sqlnet.ora

for example:
NAMES.DEFAULT_DOMAIN = YUOR.DOMAIN
NAMES.DIRECTORY_PATH= (TNSNAMES)

------------------------------------------------------
Good luck! Olga K.