简介:志新一个朋友让他倒出一个BP机,不想警察找上门来.
志新和莉达在酒吧见面:
(描述一个人)
莉达:志新!你老看着我干嘛呀?瞧你,小西装也穿上了,小领带也打上了—-小眼睛
也睁开了,哎呀混身上下,怎么这么……不对劲呢?
(对比)
莉达:嗯,志新,哟,怎么了?怎么迷迷灯灯的?嗯小西服也脱了小领带也解了小眼睛也
闭上了,你这是受谁的折磨了?
(最损女孩子的话,与一个很久不见的女孩子见面的时候使用)
志新:哦,明白了,有主儿了是不是?嫁人了?傍上一大款?甭问肯定错不了,最损也是
一美藉华人—-七十几了他老人家?
莉达:你就损吧你,我们女孩子偏得傍着别人呐?告诉你吧,我现在呀—-自己做生意呢
(点一支烟)
(美了自己还损了别人)
志新:啊,知道有差距就好,啊,迎头赶上,就得了,十全十美的人哪儿有啊?不怕你不
信啊,连我都有缺点更何况你呢?
警察来到家里:
(招待人)
志新:什么话……信不过我?这这,警民一家人嘛,不是一家人不入一家门儿,你们大老
远来的,我也不会招待个人儿,啊那什么小张(起身)沏茶上烟拿瓜子儿(边向下
走)剥糖切西瓜……
男刑警:(站)回来!
志新和莉达在酒吧最后的话:
(夸张自己喜欢吃什么,当别人问你喜欢吃什么的时候使用)
莉达:事到如今,我还有什么可说的,说我恨你吧,我太不忍了,说我爱你吧,又太伪心了,
全怪我好吃懒做,落到今天这一步,这进到里头,懒做是懒不了了,都得劳动改造,
好吃这毛病兴许可以保留,唉对了,我赶紧告诉你我愿意吃什么,等你以后看我想
着给我带
志新:行行行行,说说说我记着……
莉达:饭,我比较喜欢吃西餐,日本饭也能将就,这个泰国饭和印尼饭揭长补短的换换口
味还可以但总吃我受不了……
志新:唉唉唉您放心您进的是中国监狱,不能老让您吃印尼风味,(向两警察)是吧?
莉达:(起)啊,逢年过节的你想着给我带点儿应时当令的,什么端午节的粽子啦八月十
五的月饼正月十五的元宵,不是稻香村的我可不吃……唉大年三十的饺子你得到
沈阳的老边饺子馆……
志新:行嗨嗨嗨嗨,您是坐监狱还是坐月子呀?
志新:唉唉,等会儿(起身上前),还有话跟我说……
莉达:这个,送饺子的时候,想着给我带点儿醋……
志新:嗨!
莉达:(边下)别忘了带点儿香油……
志新:行行行行嗨……走……(坐)
一次在客户那里安装一个ASP.NET的系统, 使用的是Oracle数据库和IIS,费了好长的时间装好了oracle和DotNet Framework,结果打开页面连接数据库的代码处出现错误: Microsoft OLE DB Provider for Oracle 没有注册!
就是OleDb 的oracle组件没有在系统中注册。 很奇怪, 我们在注册表里找了,已经注册了啊, 为什么提示没有注册呢?
我们用。net编了一个桌面程序,来连接oracle数据库,结果一下子就可以连接上了(我们用Administrator登录的系统)。
又以为是因为操作系统是XP的缘故,干脆还是换Win2000吧,兼容性好点。 可是等我们费了好大劲又装好了win2000,oracle,.Net环境, 一打开页面,还是一样的错误!
桌面程序可以连接上oracle,说明OleDB驱动应该是没有问题的。 为什么IIS就不能连接上呢? IIS和桌面程序唯一不同的就是它们的访问的用户是不一样的。 因为发现安装oracle的分区是NTFS格式,所以推断应该是权限问题。 IIS访问oracle数据库的用户的权限不够,所以不能访问。
但因为不知道IIS的用户到底是哪个,是IUser_MachineName,IWAM_MachieName,ASPNET,哪个呢? 结果把这些用户的权限都够上,赋予所有权限,可以了。 但是这样的安全性大大降低了,怎么能够这样用呢。
后来网上偶尔搜索到资料,原来早有人遇到这样的问题。 oracle还有官方解决资料,如下:
Problem Description ——————- When running an application that connects to Oracle and uses the Authenticated User privilege (such as Microsoft’s Internet Information Server (IIS)) via Oracle’s 9.2 client software and any of these programmatic interfaces
1.Oracle Provider for OLE DB
2. Microsoft OLE DB Provider for Oracle
3. Oracle ODBC Driver
4. Microsoft ODBC for Oracle
5. Oracle Objects for OLE (OO4O)
you will receive one of the following errors:
a) Oracle Provider for OLE DB Error Type: Microsoft OLE DB Service Components (0×80070005) Access is denied.
b) Microsoft OLE DB Provider for Oracle Error Type: Microsoft OLE DB Provider for Oracle (0×80004005) Oracle client and networking components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3.3 or later client software installation. Provider is unable to function until these components are installed. Or Error Type: Microsoft OLE DB Provider for Oracle (0×80004005) Oracle error occurred, but error message could not be retrieved from Oracle.
c) Oracle ODBC Driver Error Type: Microsoft OLE DB Provider for ODBC Drivers (0×80004005) Specified driver could not be loaded due to system error 5 (Oracle in OraHome92).
d) Microsoft ODBC for Oracle The Oracle(tm) client and networking components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3 (or greater) client software installation. You will be unable to use this driver until these components have been installed.
e) Oracle Objects for OLE i. while using a GLOBAL.ASA file Error Type: Active Server Pages (0×0) An error occurred while creating object ’OraSession’. ii. not using a GLOBAL.ASA file Error Type: Microsoft VBScript runtime (0×800A0046) Permission denied: ’CreateObject’ (6)
f) Other miscellaneous errors
The Specified Module Could Not Be Found Solution Description ——————– You need to give the Authenticated User privilege to the Oracle Home by following these steps:
i. Log on to Windows as a user with Administrator privileges.
ii. Launch Windows Explorer from the Start Menu and and navigate to the ORACLE_HOME directory.
iii. Right-click on the ORACLE_HOME folder and choose the "Properties" option from the drop down list. A "Properties" window should appear.
iv. Click on the "Security" tab on the "Properties" window.
v. Click on "Authenticated Users" item in the "Name" list (on Windows XP the "Name" list is called "Group or user names").
vi. Uncheck the "Read and Execute" box in the "Permissions" list (on Windows XP the "Permissions" list is called "Permissions for Authenticated Users"). This box will be under the "Allow" column.
vii. Check the "Read and Execute" box. This is the box you just unchecked.
viii. Click the "Apply" button.
ix. Click the "OK" button.
x. You may need to reboot your computer after these changes have been made. Re-execute
the application and it should now work.
Explanation ———– If you install Oracle9i Release 2 (9.2.0.1) on a computer running Windows with an NTFS partition, the contents of ORACLE_HOME directory will not be visible to users who are authenticated on that machine. These permissions were not set properly when the software was installed. Applications that were working fine with previous versions of Oracle software will stop working when they upgrade to Oracle 9.2.
NOTE: The application will continue to work if the user has logged onto the machine as an Administrator. Any application that is using the Authenticated User privilege will not work. A notable example would be IIS which might service some of the requests based on the Authenticated User privileges. To demonstrate the problem in further detail, you can log on to the operating system as an authenticated machine user. You won’t be able browse the contents of the ORACLE_HOME directory demonstrating your inability to load any Oracle DLLs or make a connection.
References ———- Bug:2498880 – Oracle 9I Release 2 Installation Issue on Windows 2000 NTFS File System Additional Search Words ———————– OLEDB
这里的原因说的太清楚了,还是Oracle 9.2的问题。
这个版本的oracle安装在NTFS格式的分区上时对Authenticated Users用户的权限设置没有设置好,造成Authenticated Users对 ORACLE_HOME 目录是不可访问的。 而IIS就是使用 Authenticated Users 用户权限来访问的。 因此不能访问到ORACLE_HOME目录,也就提示 Microsoft OLE DB Provider for Oracle 没有注册 这样的错误了。 而使用Windows 桌面程序来访问oracle,因为是用administrator用户来登录的,所有就有权限访问。
解决方法也很简单。 把ORACLE_HOME 目录的Authenticated Users 用户的权限那里的钩去掉,然后再购上,最后重启,就OK了。
启示:
1. 看来遇到问题还是上网找找好, 常见的问题肯定有人已经碰到过,就不必浪费时间自己去研究那么久了。 如果是不常见的问题,可能才要自己研究。
2. 出现问题一定要按照正确的思路分析,采用不同的方法进行测试,从而来分析问题到底出在那里,不可能出在那里, 从而可以避免走弯路去做一些无畏的尝试。