stgdll文件怎么打开safelive.dll

StgOpenStorage function (Windows)
Expand the table of content
StgOpenStorage function
The StgOpenStorage function opens an existing root storage object in the file system. Use this function to open compound files. Do not use it to open directories, files, or summary catalogs. Nested storage objects can only be opened using their parent
Applications should use the new function,
, instead of
StgOpenStorage, to take advantage of the enhanced
and Windows Structured Storage features. This function,
StgOpenStorage, still exists for compatibility with applications running on Windows 2000.
HRESULT StgOpenStorage(
const WCHAR
*pwcsName,
IStorage *pstgPriority,
snbExclude,
IStorage **ppstgOpen
Parameters
pwcsName [in]
A pointer to the path of the null-terminated Unicode string file that contains the storage object to open. This parameter is ignored if the pstgPriority parameter is not NULL.
pstgPriority [in]
A pointer to the
interface that should be NULL. If not NULL, this parameter is used as described below in the Remarks section.
After StgOpenStorage returns, the storage object specified in pStgPriority may have been released and should no longer be used.
grfMode [in]
Specifies the access mode to use to open the storage object.
snbExclude [in]
If not NULL, pointer to a block of elements in the storage to be excluded as the storage object is opened. The exclusion occurs regardless of whether a snapshot copy happens on the open. Can be NULL.
reserved [in]
Indicates res must be zero.
ppstgOpen [out]
A pointer to a
* pointer variable that receives the interface pointer to the opened storage.
Return value
Indicates that the storage object was successfully opened.
STG_E_FILENOTFOUND
Indicates that the specified file does not exist.
STG_E_ACCESSDENIED
Access denied because the caller does not have enough permissions, or another caller has the file open and locked.
STG_E_LOCKVIOLATION
Access denied because another caller has the file open and locked.
STG_E_SHAREVIOLATION
Access denied because another caller has the file open and locked.
STG_E_FILEALREADYEXISTS
Indicates that the file exists but is not a storage object.
STG_E_TOOMANYOPENFILES
Indicates that the storage object was not opened because there are too many open files.
STG_E_INSUFFICIENTMEMORY
Indicates that the storage object was not opened due to inadequate memory.
STG_E_INVALIDNAME
Indicates a non-valid name in the pwcsName parameter.
STG_E_INVALIDPOINTER
Indicates a non-valid pointer in one of the parameters: snbExclude, pwcsName, pstgPriority, or ppStgOpen.
STG_E_INVALIDFLAG
Indicates a non-valid flag combination in the grfMode parameter.
STG_E_INVALIDFUNCTION
Indicates STGM_DELETEONRELEASE specified in the grfMode parameter.
STG_E_OLDFORMAT
Indicates that the storage object being opened was created by the Beta 1 storage provider. This format is no longer supported.
STG_E_NOTSIMPLEFORMAT
Indicates that the STGM_SIMPLE flag was specified in the grfMode parameter and the storage object being opened was not written in simple mode.
STG_E_OLDDLL
The DLL used to open this storage object is a version of the DLL that is older than the one used to create it.
STG_E_PATHNOTFOUND
Specified path does not exist.
STG_E_SHAREVIOLATION
Access denied because another caller has the file open and locked.
The StgOpenStorage function can also return any file system errors or system errors wrapped in an HRESULT. For more information, see
StgOpenStorage function opens the specified root storage object according to the access mode in the grfMode parameter, and, if successful, supplies an
pointer to the opened storage object in the ppstgOpen parameter.
To support the simple mode for saving a storage object with no substorages, the
StgOpenStorage function accepts one of the following two flag combinations as valid modes in the grfMode parameter.
STGM_SIMPLE | STGM_READWRITE | STGM_SHARE_EXCLUSIVE
STGM_SIMPLE | STGM_READ | STGM_SHARE_EXCLUSIVE
To support the single-writer, multireader, direct mode, the first flag combination is the valid grfMode parameter for the writer.
The second flag combination is valid for readers.
STGM_DIRECT_SWMR | STGM_READWRITE | STGM_SHARE_DENY_WRITE
STGM_DIRECT_SWMR | STGM_READ | STGM_SHARE_DENY_NONE
In direct mode, one of the following three combinations are valid.
STGM_DIRECT | STGM_READWRITE | STGM_SHARE_EXCLUSIVE
STGM_DIRECT | STGM_READ | STGM_SHARE_DENY_WRITE
STGM_DIRECT | STGM_READ | STGM_SHARE_EXCLUSIVE
Opening a storage object in read/write mode without denying write permission to others (the grfMode parameter specifies STGM_SHARE_DENY_WRITE) can be a time-consuming operation because the
StgOpenStorage call must make a snapshot of the entire storage object.
Applications often try to open storage objects with the following access permissions. If the application succeeds, it never needs to make a snapshot copy.
STGM_READWRITE | STGM_SHARE_DENY_WRITE
// transacted versus direct mode omitted for exposition
The application can revert to using the permissions and make a snapshot copy, if the previous access permissions fail. The application should prompt the user before making a time-consuming copy.
STGM_READWRITE
// transacted versus direct mode omitted for exposition
If the document-sharing semantics implied by the access modes are appropriate, the application could try to open the storage as follows. In this case, if the application succeeds, a snapshot copy will not have been made (because STGM_SHARE_DENY_WRITE was specified, denying others write access).
STGM_READ | STGM_SHARE_DENY_WRITE
// transacted versus direct mode omitted for exposition
To reduce the expense of making a snapshot copy, applications can open storage objects in priority mode (grfMode specifies STGM_PRIORITY).
The snbExclude parameter specifies a set of element names in this storage object that are to be emptied as the storage object is opened: streams are set storage objects have all their elements removed. By excluding certain streams, the expense of making a snapshot copy can be significantly reduced. Almost always, this approach is used after first opening the storage object in priority mode, then completely reading the now-excluded elements into memory. This earlier priority-mode opening of the storage object should be passed through the pstgPriority parameter to remove the exclusion implied by priority mode. The calling application is responsible for rewriting the contents of excluded items before committing. Thus, this technique is most likely useful only to applications whose documents do not require constant access to their storage objects while they are active.
The pstgPriority parameter is intended as a convenience for callers replacing an existing storage object, often one opened in priority mode, with a new storage object opened on the same file but in a different mode. When pstgPriority is not NULL, it is used to specify the file name instead of pwcsName, which is ignored. However, it is recommended that applications always pass NULL for pstgPriority because StgOpenStorage releases the object under some circumstances, and does not release it under other circumstances.
In particular, if the function returns a failure result, it is not possible for the caller to determine whether or not the storage object was released.
The functionality of the pstgPriority parameter can be duplicated by the caller in a safer manner as shown in the following example:
// Replacement for:
// HRESULT hr = StgOpenStorage(
NULL, pstgPriority, grfMode, NULL, 0, &pstgNew);
HRESULT hr = pstgPriority-&Stat(&statstg, 0);
pStgPriority-&Release();
pStgPriority = NULL;
if (SUCCEEDED(hr))
hr = StgOpenStorage(statstg.pwcsName, NULL, grfMode, NULL, 0, &pstgNew);
Requirements
Minimum supported client
Windows 2000 Professional [desktop apps | Windows Store apps]
Minimum supported server
Windows 2000 Server [desktop apps | Windows Store apps]
Was this page helpful?
Your feedback about this content is important.Let us know what you think.
Additional feedback?
1500 characters remaining
Thank you!
We appreciate your feedback.
Related developer sites
Downloads and tools
Essentials在altium designer6.9出现“STG: API 调用退出异常。”是什么意思?怎么解决啊_百度知道
在altium designer6.9出现“STG: API 调用退出异常。”是什么意思?怎么解决啊
就是自己导入的库里面的器件需要给它设封装时出现的“STG: API 调用退出异常。 at 1E87C4B3.ADVPCB.DLL, Base Address: 1E430000.”
我今天也遇到了 ,搞了一下午才搞定,快把我肺都气炸了,骂了一下午:你把你自己添加的封装库全部删掉,然后重新一个一个的添加,再试着给器件改封装,看还会出现不,可能添加的库里面有不符合他的文件你也添加进来了,导致的,我说的不知道你看明白没
其他类似问题
为您推荐:
altium的相关知识
其他3条回答
我的也有此问题
软件安装的库文件 install里的
把他们removed
重新建一个LibPkg文件,将SchLib和PcbLib导入这个新的LibPkg
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁DXP2004出现ExceptionEPTStgExceptioninmoduleAdvSch.dllat002E7D5F_百度知道
DXP2004出现ExceptionEPTStgExceptioninmoduleAdvSch.dllat002E7D5F
怎么回事,调用自己的原理图库时会出现这样的问题。刚开始还能用,这两天就出现问题了
提问者采纳
应该是没有激活把 就是没破解把,需要找激活文件激活,网上下的多半不能用啊
你有能兼容win7 32位的吗
不好意思我的要收几块QIAN
提问者评价
其他类似问题
为您推荐:
dxp2004的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁以下内容被驳回:“”,请修改。
王♂者肥皂
王♂者肥皂
主播粉丝榜
选择你要佩戴的勋章:
欢迎来到怒首领蜂吧、天朝街机STG保护协会的官方直播间。本直播间主要为街机平台STG(以及移植到主机或PC平台的街机STG)的生放送频道,偶尔也会播送一些其他类型的游戏。目前由于技术原因,本直播间转入备用状态。相关直播详情请关注:ASRAC微博:
喵~ 神秘区域 (=?ω?=)
房间信息修改
*房间名称:
房间模板:
欢迎来到怒首领蜂吧、天朝街机STG保护协会的官方直播间。本直播间主要为街机平台STG(以及移植到主机或PC平台的街机STG)的生放送频道,偶尔也会播送一些其他类型的游戏。目前由于技术原因,本直播间转入备用状态。相关直播详情请关注:ASRAC微博:
管理员设置
黑名单设置
查看直播码
封禁时间1-72小时
※重新开播后,你的rtmp地址和直播码将会更改,请在直播软件上替换你的rtmp地址和直播码
运营商推荐:电信(流畅)联通(一般)铁通(一般)教育网(暂不支持)其他二级运营商(暂不支持)
直播码率推荐:上行小于1M 不适宜进行直播
上行1M 推荐以400-600码率进行直播,效果普清
上行2M 推荐以800-1200码率进行直播,效果高清
上行4M及以上 推荐以码率进行直播,效果超清,码率大于1500会导致部分用户卡顿
广播电视节目制作经营许可证:(沪)字第1248号
网络文化经营许可证:沪网文[6号
互联网ICP备案:沪ICP备号-3
沪ICP证:沪B2-
信息网络传播视听节目许可证:0910417

我要回帖

更多关于 dll文件 的文章

 

随机推荐