コード例 #1
0
ファイル: utils.py プロジェクト: dskrypa/ds_tools
def com_iter(obj: DispatchBaseClass, lcid=0):
    """
    Iterate over the items that the given COM object contains.  Yields the proper classes rather than the base classes.
    """
    invkind = DISPATCH_METHOD | DISPATCH_PROPERTYGET
    try:
        enum = obj._oleobj_.InvokeTypes(DISPID_NEWENUM, lcid, invkind,
                                        (13, 10), ())
    except com_error:  # It is not possible to iterate over the given object
        raise IterationNotSupported
    else:
        for value in enum.QueryInterface(IID_IEnumVARIANT):
            yield _get_good_object_(
                value
            )  # When no clsid is provided, it returns the correct subclass
コード例 #2
0
 def _make_retval_(self, result):
     return _get_good_object_(result, resultCLSID=self.resultCLSID)
コード例 #3
0
 def __next__(self):
     return _get_good_object_(next(self._iter_),
                              resultCLSID=self.resultCLSID)
コード例 #4
0
ファイル: util.py プロジェクト: arizvisa/pywin32
 def next(self):
     return _get_good_object_(self._iter_.next(), resultCLSID=self.resultCLSID)
コード例 #5
0
ファイル: util.py プロジェクト: arizvisa/pywin32
 def _make_retval_(self, result):
     return _get_good_object_(result, resultCLSID=self.resultCLSID)
コード例 #6
0
ファイル: util.py プロジェクト: hkfr/data
	def next(self):
		return _get_good_object_(self._iter_.next())
コード例 #7
0
ファイル: util.py プロジェクト: R0ckNRolla/byob
 def next(self):
     return _get_good_object_(self._iter_.next(),
                              resultCLSID=self.resultCLSID)
コード例 #8
0
ファイル: util.py プロジェクト: 8dspaces/Pywin32
	def __next__(self):
		return _get_good_object_(next(self._iter_), resultCLSID = self.resultCLSID)