pywin32-checkins Mailing List for Python for Windows Extensions (Page 146)
OLD project page for the Python extensions for Windows
Brought to you by:
mhammond
You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
(1) |
Jun
(6) |
Jul
(50) |
Aug
(11) |
Sep
(24) |
Oct
(184) |
Nov
(118) |
Dec
(22) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(31) |
Feb
(25) |
Mar
(34) |
Apr
(105) |
May
(49) |
Jun
(38) |
Jul
(39) |
Aug
(7) |
Sep
(98) |
Oct
(79) |
Nov
(20) |
Dec
(17) |
| 2005 |
Jan
(66) |
Feb
(32) |
Mar
(43) |
Apr
(30) |
May
(58) |
Jun
(30) |
Jul
(16) |
Aug
(4) |
Sep
(21) |
Oct
(42) |
Nov
(11) |
Dec
(14) |
| 2006 |
Jan
(42) |
Feb
(30) |
Mar
(22) |
Apr
(1) |
May
(9) |
Jun
(15) |
Jul
(20) |
Aug
(9) |
Sep
(8) |
Oct
(1) |
Nov
(9) |
Dec
(43) |
| 2007 |
Jan
(52) |
Feb
(45) |
Mar
(20) |
Apr
(12) |
May
(59) |
Jun
(39) |
Jul
(35) |
Aug
(31) |
Sep
(17) |
Oct
(20) |
Nov
(4) |
Dec
(4) |
| 2008 |
Jan
(28) |
Feb
(111) |
Mar
(4) |
Apr
(27) |
May
(40) |
Jun
(27) |
Jul
(32) |
Aug
(94) |
Sep
(87) |
Oct
(153) |
Nov
(336) |
Dec
(331) |
| 2009 |
Jan
(298) |
Feb
(127) |
Mar
(20) |
Apr
(8) |
May
|
Jun
(10) |
Jul
(6) |
Aug
|
Sep
(2) |
Oct
(2) |
Nov
|
Dec
(1) |
| 2010 |
Jan
(7) |
Feb
(1) |
Mar
|
Apr
|
May
(15) |
Jun
(4) |
Jul
(3) |
Aug
(28) |
Sep
(1) |
Oct
(19) |
Nov
(16) |
Dec
(6) |
| 2011 |
Jan
(2) |
Feb
(18) |
Mar
(17) |
Apr
(12) |
May
(5) |
Jun
(11) |
Jul
(7) |
Aug
(2) |
Sep
(2) |
Oct
(4) |
Nov
(4) |
Dec
|
| 2012 |
Jan
(6) |
Feb
(2) |
Mar
|
Apr
(8) |
May
(4) |
Jun
(3) |
Jul
(13) |
Aug
(27) |
Sep
(8) |
Oct
(9) |
Nov
(3) |
Dec
(2) |
| 2013 |
Jan
|
Feb
(1) |
Mar
(5) |
Apr
(10) |
May
|
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(9) |
| 2014 |
Jan
(2) |
Feb
(4) |
Mar
(4) |
Apr
(1) |
May
(4) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
(1) |
| 2015 |
Jan
(1) |
Feb
|
Mar
|
Apr
(6) |
May
(2) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2016 |
Jan
(3) |
Feb
(2) |
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
|
From: <mha...@us...> - 2003-11-08 00:39:58
|
Update of /cvsroot/pywin32/pywin32/com/win32com/server
In directory sc8-pr-cvs1:/tmp/cvs-serv25641
Modified Files:
register.py
Log Message:
Don't insist on sys.winver existing. Make the "default dispatcher" the
default dispatcher nominated by the dispatcher module (which only grew
a default concept after us!)
Index: register.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/server/register.py,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** register.py 6 Oct 2003 13:11:36 -0000 1.16
--- register.py 8 Nov 2003 00:39:55 -0000 1.17
***************
*** 87,90 ****
--- 87,92 ----
def _find_localserver_exe(mustfind):
+ if not sys.platform.startswith("win32"):
+ return sys.executable
if pythoncom.__file__.find("_d") < 0:
exeBaseName = "pythonw.exe"
***************
*** 105,109 ****
path = win32api.RegQueryValue( win32con.HKEY_LOCAL_MACHINE, key )
exeName = os.path.join( path, exeBaseName )
! except win32api.error:
pass
if not os.path.exists(exeName):
--- 107,111 ----
path = win32api.RegQueryValue( win32con.HKEY_LOCAL_MACHINE, key )
exeName = os.path.join( path, exeBaseName )
! except (AttributeError,win32api.error):
pass
if not os.path.exists(exeName):
***************
*** 375,379 ****
dispatcherSpec = _get(cls, '_reg_debug_dispatcher_spec_')
if dispatcherSpec is None:
! dispatcherSpec = "win32com.server.dispatcher.DispatcherWin32trace"
# And remember the debugging flag as servers may wish to use it at runtime.
debuggingDesc = "(for debugging)"
--- 377,381 ----
dispatcherSpec = _get(cls, '_reg_debug_dispatcher_spec_')
if dispatcherSpec is None:
! dispatcherSpec = "win32com.server.dispatcher.DefaultDebugDispatcher"
# And remember the debugging flag as servers may wish to use it at runtime.
debuggingDesc = "(for debugging)"
|
|
From: <mha...@us...> - 2003-11-08 00:38:48
|
Update of /cvsroot/pywin32/pywin32/com/win32com/server
In directory sc8-pr-cvs1:/tmp/cvs-serv25479
Modified Files:
dispatcher.py
Log Message:
The default debug dispatcher is the win32trace based dispatcher only
if win32trace is actually available - otherwise the simple 'print' based
dispatcher (which is fairly useless when there is no console, but better
than failing to create the COM object at all!)
Index: dispatcher.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/server/dispatcher.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** dispatcher.py 8 Oct 2003 23:46:10 -0000 1.3
--- dispatcher.py 8 Nov 2003 00:38:44 -0000 1.4
***************
*** 236,238 ****
raise t, v, tb
! DefaultDebugDispatcher = DispatcherWin32trace
--- 236,242 ----
raise t, v, tb
! try:
! import win32trace
! DefaultDebugDispatcher = DispatcherWin32trace
! except ImportError: # no win32trace module - just use a print based one.
! DefaultDebugDispatcher = DispatcherTrace
|
|
From: <mha...@us...> - 2003-11-08 00:37:35
|
Update of /cvsroot/pywin32/pywin32/com/win32com/server
In directory sc8-pr-cvs1:/tmp/cvs-serv25311
Modified Files:
util.py
Log Message:
Allow 'useDispatcher' param to be 1(True) or 0(False), to mean 'use the
default debug dispatcher' - much more convenient than passing the
exact same class every time
Index: util.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/server/util.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** util.py 6 Dec 1999 00:34:39 -0000 1.2
--- util.py 8 Nov 2003 00:37:32 -0000 1.3
***************
*** 15,21 ****
"""
! if usePolicy is None:
usePolicy = policy.DefaultPolicy
! if useDispatcher is None:
ob = usePolicy(ob)
else:
--- 15,24 ----
"""
! if usePolicy is None:
usePolicy = policy.DefaultPolicy
! if useDispatcher == 1: # True will also work here.
! import win32com.server.dispatcher
! useDispatcher = win32com.server.dispatcher.DefaultDebugDispatcher
! if useDispatcher is None or useDispatcher==0:
ob = usePolicy(ob)
else:
|
|
From: <mha...@us...> - 2003-11-08 00:35:22
|
Update of /cvsroot/pywin32/pywin32/com/win32com/test
In directory sc8-pr-cvs1:/tmp/cvs-serv25113/test
Modified Files:
testAXScript.py
Log Message:
Correct the case of test filenames, and remove unused import.
Index: testAXScript.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/test/testAXScript.py,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** testAXScript.py 23 Oct 2003 23:48:28 -0000 1.5
--- testAXScript.py 8 Nov 2003 00:35:19 -0000 1.6
***************
*** 1,4 ****
# Test AXScripting the best we can in an automated fashion...
! import win32api, win32pipe, os, sys
def RegisterEngine(verbose = 1):
--- 1,4 ----
# Test AXScripting the best we can in an automated fashion...
! import win32api, os, sys
def RegisterEngine(verbose = 1):
***************
*** 10,14 ****
def TestHost(verbose = 1):
import win32com.axscript
! file = win32api.GetFullPathName(os.path.join(win32com.axscript.__path__[0], "Test\\TestHost.py"))
cmd = '%s "%s" > nul' % (win32api.GetModuleFileName(0), file)
if verbose:
--- 10,14 ----
def TestHost(verbose = 1):
import win32com.axscript
! file = win32api.GetFullPathName(os.path.join(win32com.axscript.__path__[0], "test\\testHost.py"))
cmd = '%s "%s" > nul' % (win32api.GetModuleFileName(0), file)
if verbose:
|
|
From: <mha...@us...> - 2003-11-08 00:34:36
|
Update of /cvsroot/pywin32/pywin32/com/win32com/src
In directory sc8-pr-cvs1:/tmp/cvs-serv24841
Modified Files:
oleargs.cpp univgw_dataconv.cpp
Log Message:
Avoid referencing VARIANT structure element directly - use the V_ macros
for that purpose (which we did nearly everywhere already)
Index: oleargs.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/src/oleargs.cpp,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -d -r1.24 -r1.25
*** oleargs.cpp 2 Nov 2003 09:52:51 -0000 1.24
--- oleargs.cpp 8 Nov 2003 00:34:32 -0000 1.25
***************
*** 903,907 ****
// it alone.
if (V_VT(var)==VT_EMPTY) {
! var->vt = m_reqdType;
assert(m_arrayBuf==NULL); // shouldn't be anything else here!
V_ARRAYREF(var) = &m_arrayBuf;
--- 903,907 ----
// it alone.
if (V_VT(var)==VT_EMPTY) {
! V_VT(var) = m_reqdType;
assert(m_arrayBuf==NULL); // shouldn't be anything else here!
V_ARRAYREF(var) = &m_arrayBuf;
***************
*** 1199,1203 ****
Py_XDECREF(obUse);
if (rc)
! var->vt = m_reqdType;
return rc;
}
--- 1199,1203 ----
Py_XDECREF(obUse);
if (rc)
! V_VT(var) = m_reqdType;
return rc;
}
Index: univgw_dataconv.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/src/univgw_dataconv.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** univgw_dataconv.cpp 10 Jan 2003 02:43:42 -0000 1.5
--- univgw_dataconv.cpp 8 Nov 2003 00:34:32 -0000 1.6
***************
*** 700,707 ****
vtArgType = VT_UI4 | (vtArgType & VT_TYPEMASK);
}
! var.vt = vtArgType;
// Copy the data into the variant...
! SizeOfVT(var.vt, (int *)&cb, NULL);
! memcpy(&var.lVal, pb, cb);
// Convert it into a PyObject:
obArg = PyCom_PyObjectFromVariant(&var);
--- 700,707 ----
vtArgType = VT_UI4 | (vtArgType & VT_TYPEMASK);
}
! V_VT(&var) = vtArgType;
// Copy the data into the variant...
! SizeOfVT(V_VT(&var), (int *)&cb, NULL);
! memcpy(&V_I4(&var), pb, cb);
// Convert it into a PyObject:
obArg = PyCom_PyObjectFromVariant(&var);
|
|
From: <mha...@us...> - 2003-11-08 00:33:41
|
Update of /cvsroot/pywin32/pywin32/com/win32com/src/extensions
In directory sc8-pr-cvs1:/tmp/cvs-serv24680/extensions
Modified Files:
PyIPropertyStorage.cpp
Log Message:
Move declaration of loop index out of loop body
Index: PyIPropertyStorage.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/src/extensions/PyIPropertyStorage.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** PyIPropertyStorage.cpp 2 Nov 2003 09:57:44 -0000 1.8
--- PyIPropertyStorage.cpp 8 Nov 2003 00:33:38 -0000 1.9
***************
*** 448,453 ****
ppStrs = new LPWSTR[cProps];
memset(ppStrs, 0, sizeof(LPWSTR)*cProps);
!
! for (ULONG i=0;i<cProps;i++) {
PyObject *sub = PySequence_GetItem(obNames, i);
BOOL ok = PyWinObject_AsBstr(sub, ppStrs+i);
--- 448,453 ----
ppStrs = new LPWSTR[cProps];
memset(ppStrs, 0, sizeof(LPWSTR)*cProps);
! ULONG i;
! for (i=0;i<cProps;i++) {
PyObject *sub = PySequence_GetItem(obNames, i);
BOOL ok = PyWinObject_AsBstr(sub, ppStrs+i);
|
|
From: <mha...@us...> - 2003-11-07 23:42:22
|
Update of /cvsroot/pywin32/pywin32/com In directory sc8-pr-cvs1:/tmp/cvs-serv16305 Modified Files: win32com.dsp Log Message: Bring win32com.dsp up to date on the trunk. Index: win32com.dsp =================================================================== RCS file: /cvsroot/pywin32/pywin32/com/win32com.dsp,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** win32com.dsp 31 Jul 2003 02:16:21 -0000 1.23 --- win32com.dsp 7 Nov 2003 23:42:19 -0000 1.24 *************** *** 170,173 **** --- 170,177 ---- # Begin Source File + SOURCE=.\win32com\src\extensions\PySTGMEDIUM.cpp + # End Source File + # Begin Source File + SOURCE=.\win32com\src\PyStorage.cpp # End Source File *************** *** 275,278 **** --- 279,286 ---- # Begin Source File + SOURCE=.\win32com\src\extensions\PyIDataObject.cpp + # End Source File + # Begin Source File + SOURCE=.\win32com\src\extensions\PyIEnumCATEGORYINFO.cpp # End Source File *************** *** 287,294 **** --- 295,310 ---- # Begin Source File + SOURCE=.\win32com\src\extensions\PyIEnumFORMATETC.cpp + # End Source File + # Begin Source File + SOURCE=.\win32com\src\extensions\PyIEnumGUID.cpp # End Source File # Begin Source File + SOURCE=.\win32com\src\extensions\PyIEnumSTATPROPSETSTG.cpp + # End Source File + # Begin Source File + SOURCE=.\win32com\src\extensions\PyIEnumSTATPROPSTG.cpp # End Source File *************** *** 319,322 **** --- 335,342 ---- # Begin Source File + SOURCE=.\win32com\src\extensions\PyIOleWindow.cpp + # End Source File + # Begin Source File + SOURCE=.\win32com\src\extensions\PyIPersist.cpp # End Source File *************** *** 431,434 **** --- 451,458 ---- # Begin Source File + SOURCE=.\win32com\src\include\PyIDataObject.h + # End Source File + # Begin Source File + SOURCE=.\win32com\src\include\PyIEnumConnectionPoints.h # End Source File *************** *** 439,446 **** --- 463,478 ---- # Begin Source File + SOURCE=.\win32com\src\include\PyIEnumFORMATETC.h + # End Source File + # Begin Source File + SOURCE=.\win32com\src\include\PyIEnumGUID.h # End Source File # Begin Source File + SOURCE=.\win32com\src\include\PyIEnumSTATPROPSETSTG.h + # End Source File + # Begin Source File + SOURCE=.\win32com\src\include\PyIEnumSTATSTG.h # End Source File *************** *** 460,463 **** --- 492,499 ---- SOURCE=.\win32com\src\include\PyIMoniker.h + # End Source File + # Begin Source File + + SOURCE=.\win32com\src\include\PyIOleWindow.h # End Source File # Begin Source File |
|
From: Mark H. <mha...@sk...> - 2003-11-07 23:36:46
|
> I had somewhat similar things in my setup script. I didn't > check them in > because I could not build the HEAD revision, checking out b163 (or how > it's called) worked. Do you still have some uncommited changes > somewhere? No, but pywintypes.dsp and win32com.dsp on the head will be missing some files. I haven't built as 2.4 for a long time now. I just keep a sticky "Python23" tag on pywintypes.dsp and win32com.dsp for day to day work, and this is part of the reason I want to use this setup file - drop those stupid CVS branches for those 2 stupid makefiles :) "cvs up -j python23 win32com.dsp" etc may do it. > Apart from that, I also did get servicemanager and perfmon to build: Thanks - added! > perfmondata does not build, because it's not an extension module (?), > and I think this was the build target that triggered the problems I > posted to distutils mailing list. Correct - it is not an extension module - it is a perfmon data provider DLL > Anyway, I think there's still a problem with swig creating > the wrappers. > I had to change the name of the generated cpp file to > swig_targets[source] = base + 'module' + target_ext > but it seems there is no consistent naming convention for the > swig-created wrappers. Have to check in the dsp files. For some of the SWIG files, I try and handle both CE and Win32 with some magic. The basic idea is: * win32event.i generates to either win32eventmodule_win32.cpp or _wince.cpp * win32eventmodule_win32.cpp and win32eventmodule_wince.cpp are *not* in CVS. * win32eventmodule.cpp - hand written - #includes win32eventmodule_win32.cpp/_wince.cpp That is the intent, and appears to be true for win32event. win32service seems a little confused, but this module would never have been built on CE. > Also I have the impression that the generated swig-wrappers > are checked > in CVS, which does not help because it masks build errors. That should not be true. Some that *look* like they are would be as described above - ie, the small "win32eventmodule.cpp" which only #includes the generated one. (Recently with the mainwin stuff though, I've been wishing they *were* in CVS, as I can't run my SWIG there ;) I'd be happy to make all this consistent, including changing the .dsp files. And while you are here :) MingW. I get the impression that MingW can compile extensions to be used with an MSVC built Python. However, I appear to see distutils croak: >python setup_win32all_core.py build -cmingw32 running build running build_ext warning: Python's pyconfig.h doesn't seem to support your compiler. Reason: couldn't read 'E:\src\py thon-2.3-cvs\include\pyconfig.h': No such file or directory. Compiling may fail because of undefined preprocessor macros. Is there additional magic I need to point it at the PC directory? Thanks Mark. |
|
From: <mha...@us...> - 2003-11-07 23:18:59
|
Update of /cvsroot/pywin32/pywin32
In directory sc8-pr-cvs1:/tmp/cvs-serv11290
Modified Files:
setup_win32all_core.py
Log Message:
Add perfmon and servicemanager.
Index: setup_win32all_core.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/setup_win32all_core.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** setup_win32all_core.py 7 Nov 2003 13:18:05 -0000 1.7
--- setup_win32all_core.py 7 Nov 2003 23:18:56 -0000 1.8
***************
*** 213,216 ****
--- 213,217 ----
win32_extensions = []
for name, lib_names, is_unicode in (
+ ("perfmon", "", True),
("win2kras", "rasapi32", False),
("win32api", "", False),
***************
*** 234,238 ****
("win32wnet", "netapi32 mpr", False),
):
!
extra_compile_args = []
if is_unicode:
--- 235,239 ----
("win32wnet", "netapi32 mpr", False),
):
!
extra_compile_args = []
if is_unicode:
***************
*** 250,255 ****
extra_compile_args=["-DWIN32GUI"]
),
]
-
################################################################
--- 251,259 ----
extra_compile_args=["-DWIN32GUI"]
),
+ WinExt('servicemanager',
+ extra_compile_args = ['-DUNICODE', '-D_UNICODE',
+ '-DWINNT', '-DPYSERVICE_BUILD_DLL'],
+ dsp_file = r"win32\Pythonservice servicemanager.dsp")
]
################################################################
|
|
From: Thomas H. <th...@py...> - 2003-11-07 23:00:25
|
mha...@us... writes:
> Update of /cvsroot/pywin32/pywin32
> In directory sc8-pr-cvs1:/tmp/cvs-serv25361
>
> Modified Files:
> setup_win32all_core.py
> Log Message:
> Get most of the win32 .pyd extensions building.
I had somewhat similar things in my setup script. I didn't check them in
because I could not build the HEAD revision, checking out b163 (or how
it's called) worked. Do you still have some uncommited changes
somewhere? IIRC, building the pythoncom dll failed, and the linking step
complained among other things that Py_NewSTGMEDIUM or so is not found.
Apart from that, I also did get servicemanager and perfmon to build:
servicemanager = WinExt('servicemanager',
extra_compile_args = ['-DPYSERVICE_BUILD_DLL', '-DUNICODE', '-D_UNICODE'],
dsp_file = r"win32\Pythonservice servicemanager.dsp")
perfmon = WinExt('perfmon',
extra_compile_args = ['-DUNICODE', '-D_UNICODE'],
dsp_file = r"win32\perfmon.dsp")
perfmondata does not build, because it's not an extension module (?),
and I think this was the build target that triggered the problems I
posted to distutils mailing list.
Anyway, I think there's still a problem with swig creating the wrappers.
I had to change the name of the generated cpp file to
swig_targets[source] = base + 'module' + target_ext
but it seems there is no consistent naming convention for the
swig-created wrappers. Have to check in the dsp files.
Also I have the impression that the generated swig-wrappers are checked
in CVS, which does not help because it masks build errors. Now that you
have your own swig in the source tree, this should be avoided IMO.
Thomas
|
|
From: <mha...@us...> - 2003-11-07 13:18:10
|
Update of /cvsroot/pywin32/pywin32
In directory sc8-pr-cvs1:/tmp/cvs-serv25361
Modified Files:
setup_win32all_core.py
Log Message:
Get most of the win32 .pyd extensions building.
Index: setup_win32all_core.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/setup_win32all_core.py,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** setup_win32all_core.py 5 Nov 2003 21:10:27 -0000 1.6
--- setup_win32all_core.py 7 Nov 2003 13:18:05 -0000 1.7
***************
*** 11,14 ****
--- 11,20 ----
import os, string, sys
+ try:
+ True; False
+ except NameError:
+ True=0==0
+ False=1==0
+
class WinExt (Extension):
# Base class for all win32 extensions, with some predefined
***************
*** 107,110 ****
--- 113,117 ----
# directory for objects, we must use a special one for each extension.
old_build_temp = self.build_temp
+ self.swig_cpp = True
try:
self.build_temp = os.path.join(self.build_temp, ext.name)
***************
*** 204,232 ****
)
! win32api = WinExt('win32api',
! dsp_file = r"win32\win32api.dsp")
!
! win32file = WinExt('win32file',
! dsp_file = r"win32\win32file.dsp")
!
! win32event = WinExt('win32event',
! dsp_file = r"win32\win32event.dsp")
################################################################
setup(name="PyWinTypes",
! version="version?",
! description="python windows extensions",
long_description="",
! author="Mark Hammond (et al?)",
! author_email = "Ma...@ac...",
url="http://starship.python.net/crew/mhammond/",
! license="???",
!
cmdclass = { #'install_lib': my_install_lib,
'build_ext': my_build_ext,
},
! ext_modules = [pywintypes, win32api, win32file, win32event, pythoncom],
## packages=['win32',
--- 211,270 ----
)
! win32_extensions = []
! for name, lib_names, is_unicode in (
! ("win2kras", "rasapi32", False),
! ("win32api", "", False),
! ("win32file", "", False),
! ("win32event", "", False),
! ("win32clipboard", "gdi32", False),
! ("win32evtlog", "", False),
! # win32gui handled below
! ("win32help", "htmlhelp", False),
! ("win32lz", "lz32", False),
! ("win32net", "netapi32", True),
! ("win32pdh", "", False),
! ("win32pipe", "", False),
! # win32popenWin9x later
! ("win32print", "winspool", False),
! ("win32process", "", False),
! ("win32ras", "rasapi32", False),
! ("win32security", "", True),
! ("win32service", "", True),
! ("win32trace", "", False),
! ("win32wnet", "netapi32 mpr", False),
! ):
!
! extra_compile_args = []
! if is_unicode:
! extra_compile_args = ['-DUNICODE', '-D_UNICODE', '-DWINNT']
! ext = WinExt(name,
! dsp_file = "win32\\" + name + ".dsp",
! libraries=lib_names.split(),
! extra_compile_args = extra_compile_args)
! win32_extensions.append(ext)
! # The few that need slightly special treatment
! win32_extensions += [
! WinExt("win32gui",
! dsp_file=r"win32\\win32gui.dsp",
! libraries=["gdi32", "comdlg32", "comctl32"],
! extra_compile_args=["-DWIN32GUI"]
! ),
! ]
################################################################
setup(name="PyWinTypes",
! version="version",
! description="Python for Window Extensions",
long_description="",
! author="Mark Hammond (et al)",
! author_email = "mha...@sk...",
url="http://starship.python.net/crew/mhammond/",
! license="PSA",
cmdclass = { #'install_lib': my_install_lib,
'build_ext': my_build_ext,
},
! ext_modules = [pywintypes, pythoncom] + win32_extensions,
## packages=['win32',
|
|
From: <mha...@us...> - 2003-11-07 04:03:00
|
Update of /cvsroot/pywin32/pywin32/win32
In directory sc8-pr-cvs1:/tmp/cvs-serv12399
Modified Files:
Tag: Python23
PyWinTypes.dsp
Log Message:
"automatic pch" was giving a few problems - convert to explicit pch
Index: PyWinTypes.dsp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/PyWinTypes.dsp,v
retrieving revision 1.14
retrieving revision 1.14.2.1
diff -C2 -d -r1.14 -r1.14.2.1
*** PyWinTypes.dsp 6 Apr 2003 23:49:52 -0000 1.14
--- PyWinTypes.dsp 7 Nov 2003 04:02:56 -0000 1.14.2.1
***************
*** 52,56 ****
CPP=cl.exe
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
! # ADD CPP /nologo /MD /W3 /GX /Zi /O2 /D "WIN32" /D "_WINDOWS" /D "BUILD_PYWINTYPES" /D "NDEBUG" /D "STRICT" /YX /FD /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
--- 52,56 ----
CPP=cl.exe
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
! # ADD CPP /nologo /MD /W3 /GX /Zi /O2 /D "WIN32" /D "_WINDOWS" /D "BUILD_PYWINTYPES" /D "NDEBUG" /D "STRICT" /YX"PyWinTypes.h" /FD /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL"
***************
*** 94,98 ****
CPP=cl.exe
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
! # ADD CPP /nologo /MDd /W3 /GX /ZI /Od /D "WIN32" /D "_WINDOWS" /D "BUILD_PYWINTYPES" /D "_DEBUG" /D "DEBUG" /D "STRICT" /YX /FD /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
--- 94,98 ----
CPP=cl.exe
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
! # ADD CPP /nologo /MDd /W3 /GX /ZI /Od /D "WIN32" /D "_WINDOWS" /D "BUILD_PYWINTYPES" /D "_DEBUG" /D "DEBUG" /D "STRICT" /YX"PyWinTypes.h" /FD /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL"
***************
*** 134,156 ****
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib commctrl.lib coredll.lib /nologo /dll /pdb:"Build\System\PyWinTypes15.pdb" /debug /machine:MIPS /out:"Build\System\PyWinTypes15.dll" /implib:"Build\PyWinTypes.lib"
# SUBTRACT BASE LINK32 /pdb:none /nodefaultlib
# ADD LINK32 coredll.lib ole32.lib oleaut32.lib /nologo /dll /machine:MIPS /nodefaultlib:"$(CENoDefaultLib)" /out:"Build\ce\mips\PyWinTypes15.dll" /implib:"Build\ce\mips\PyWinTypes.lib" /subsystem:windowsce,1.0
- BSC32=bscmake.exe
- # ADD BASE BSC32 /nologo
- # ADD BSC32 /nologo
- MTL=midl.exe
- # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- RSC=rc.exe
- # ADD BASE RSC /l 0xc09 /r /d "MIPS" /d "_MIPS_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
- # ADD RSC /l 0xc09 /r /d "MIPS" /d "_MIPS_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
- CPP=clmips.exe
- # ADD BASE CPP /nologo /ML /W3 /Zi /O2 /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "MIPS" /D "_MIPS_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "BUILD_PYWINTYPES" /D "STRICT" /YX /FD /c
- # ADD CPP /nologo /M$(CECrtMT) /W3 /O1 /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "MIPS" /D "_MIPS_" /D UNDER_CE=200 /D "UNICODE" /D "BUILD_PYWINTYPES" /D "STRICT" /YX /FD /c
- PFILE=pfile.exe
- # ADD BASE PFILE COPY
- # ADD PFILE COPY
!ELSEIF "$(CFG)" == "PyWinTypes - Win32 (WCE x86em) Debug"
--- 134,156 ----
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
+ PFILE=pfile.exe
+ # ADD BASE PFILE COPY
+ # ADD PFILE COPY
+ CPP=clmips.exe
+ # ADD BASE CPP /nologo /ML /W3 /Zi /O2 /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "MIPS" /D "_MIPS_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "BUILD_PYWINTYPES" /D "STRICT" /YX /FD /c
+ # ADD CPP /nologo /M$(CECrtMT) /W3 /O1 /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "MIPS" /D "_MIPS_" /D UNDER_CE=200 /D "UNICODE" /D "BUILD_PYWINTYPES" /D "STRICT" /YX /FD /c
+ RSC=rc.exe
+ # ADD BASE RSC /l 0xc09 /r /d "MIPS" /d "_MIPS_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
+ # ADD RSC /l 0xc09 /r /d "MIPS" /d "_MIPS_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
+ MTL=midl.exe
+ # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ BSC32=bscmake.exe
+ # ADD BASE BSC32 /nologo
+ # ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib commctrl.lib coredll.lib /nologo /dll /pdb:"Build\System\PyWinTypes15.pdb" /debug /machine:MIPS /out:"Build\System\PyWinTypes15.dll" /implib:"Build\PyWinTypes.lib"
# SUBTRACT BASE LINK32 /pdb:none /nodefaultlib
# ADD LINK32 coredll.lib ole32.lib oleaut32.lib /nologo /dll /machine:MIPS /nodefaultlib:"$(CENoDefaultLib)" /out:"Build\ce\mips\PyWinTypes15.dll" /implib:"Build\ce\mips\PyWinTypes.lib" /subsystem:windowsce,1.0
!ELSEIF "$(CFG)" == "PyWinTypes - Win32 (WCE x86em) Debug"
***************
*** 168,171 ****
--- 168,186 ----
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
+ EMPFILE=empfile.exe
+ # ADD BASE EMPFILE COPY
+ # ADD EMPFILE COPY
+ CPP=cl.exe
+ # ADD BASE CPP /nologo /ML /W3 /Gm /Zi /O2 /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "STRICT" /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "_WIN32_WCE_EMULATION" /D "INTERNATIONAL" /D "USA" /D "INTLMSG_CODEPAGE" /D "NDEBUG" /D "x86" /D "i486" /D "_x86_" /D "BUILD_PYWINTYPES" /YX /FD /c
+ # ADD CPP /nologo /MT /W3 /Gm /Zi /Od /D "DEBUG" /D "_DEBUG" /D "_WIN32_WCE_EMULATION" /D UNDER_CE=200 /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "STRICT" /D _WIN32_WCE=200 /D "INTERNATIONAL" /D "USA" /D "INTLMSG_CODEPAGE" /D "x86" /D "i486" /D "_x86_" /D "BUILD_PYWINTYPES" /YX /FD /c
+ RSC=rc.exe
+ # ADD BASE RSC /l 0xc09 /d UNDER_CE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "WIN32" /d "STRICT" /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "_WIN32_WCE_EMULATION" /d "INTERNATIONAL" /d "USA" /d "INTLMSG_CODEPAGE" /d "NDEBUG"
+ # ADD RSC /l 0xc09 /d UNDER_CE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "WIN32" /d "STRICT" /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "_WIN32_WCE_EMULATION" /d "INTERNATIONAL" /d "USA" /d "INTLMSG_CODEPAGE" /d "NDEBUG"
+ MTL=midl.exe
+ # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ BSC32=bscmake.exe
+ # ADD BASE BSC32 /nologo
+ # ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib commctrl.lib coredll.lib /nologo /base:"0x1e600000" /subsystem:windows /dll /pdb:"Build\System\PyWinTypes15.pdb" /debug /machine:IX86 /out:"Build\System\PyWinTypes15.dll" /implib:"Build\PyWinTypes.lib"
***************
*** 173,191 ****
# ADD LINK32 coredll.lib /nologo /base:"0x1e600000" /entry:"_DllMainCRTStartup@12" /subsystem:windows /dll /debug /machine:IX86 /nodefaultlib:"$(CENoDefaultLib)" /out:"Build\ce\x86em\PyWinTypes15_d.dll" /implib:"Build\ce\x86em\PyWinTypes_d.lib"
# SUBTRACT LINK32 /pdb:none
- BSC32=bscmake.exe
- # ADD BASE BSC32 /nologo
- # ADD BSC32 /nologo
- MTL=midl.exe
- # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- RSC=rc.exe
- # ADD BASE RSC /l 0xc09 /d UNDER_CE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "WIN32" /d "STRICT" /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "_WIN32_WCE_EMULATION" /d "INTERNATIONAL" /d "USA" /d "INTLMSG_CODEPAGE" /d "NDEBUG"
- # ADD RSC /l 0xc09 /d UNDER_CE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "WIN32" /d "STRICT" /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "_WIN32_WCE_EMULATION" /d "INTERNATIONAL" /d "USA" /d "INTLMSG_CODEPAGE" /d "NDEBUG"
- CPP=cl.exe
- # ADD BASE CPP /nologo /ML /W3 /Gm /Zi /O2 /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "STRICT" /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "_WIN32_WCE_EMULATION" /D "INTERNATIONAL" /D "USA" /D "INTLMSG_CODEPAGE" /D "NDEBUG" /D "x86" /D "i486" /D "_x86_" /D "BUILD_PYWINTYPES" /YX /FD /c
- # ADD CPP /nologo /MT /W3 /Gm /Zi /Od /D "DEBUG" /D "_DEBUG" /D "_WIN32_WCE_EMULATION" /D UNDER_CE=200 /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "STRICT" /D _WIN32_WCE=200 /D "INTERNATIONAL" /D "USA" /D "INTLMSG_CODEPAGE" /D "x86" /D "i486" /D "_x86_" /D "BUILD_PYWINTYPES" /YX /FD /c
- EMPFILE=empfile.exe
- # ADD BASE EMPFILE COPY
- # ADD EMPFILE COPY
!ELSEIF "$(CFG)" == "PyWinTypes - Win32 (WCE x86em) Release"
--- 188,191 ----
***************
*** 203,206 ****
--- 203,221 ----
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
+ EMPFILE=empfile.exe
+ # ADD BASE EMPFILE COPY
+ # ADD EMPFILE COPY
+ CPP=cl.exe
+ # ADD BASE CPP /nologo /MT /W3 /Gm /Zi /Od /D "DEBUG" /D "_DEBUG" /D "_WIN32_WCE_EMULATION" /D UNDER_CE=200 /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "STRICT" /D _WIN32_WCE=200 /D "INTERNATIONAL" /D "USA" /D "INTLMSG_CODEPAGE" /D "x86" /D "i486" /D "_x86_" /D "BUILD_PYWINTYPES" /YX /FD /c
+ # ADD CPP /nologo /MT /W3 /O1 /D "NDEBUG" /D "_WIN32_WCE_EMULATION" /D UNDER_CE=200 /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "STRICT" /D _WIN32_WCE=200 /D "INTERNATIONAL" /D "USA" /D "INTLMSG_CODEPAGE" /D "x86" /D "i486" /D "_x86_" /D "BUILD_PYWINTYPES" /YX /FD /c
+ RSC=rc.exe
+ # ADD BASE RSC /l 0xc09 /d UNDER_CE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "WIN32" /d "STRICT" /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "_WIN32_WCE_EMULATION" /d "INTERNATIONAL" /d "USA" /d "INTLMSG_CODEPAGE" /d "NDEBUG"
+ # ADD RSC /l 0xc09 /d UNDER_CE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "WIN32" /d "STRICT" /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "_WIN32_WCE_EMULATION" /d "INTERNATIONAL" /d "USA" /d "INTLMSG_CODEPAGE" /d "NDEBUG"
+ MTL=midl.exe
+ # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ BSC32=bscmake.exe
+ # ADD BASE BSC32 /nologo
+ # ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 winsockm.lib commctrl.lib coredll.lib corelibc.lib ole32m.lib oleautm.lib uuid.lib /nologo /base:"0x1e600000" /subsystem:windows /dll /pdb:"Build\System\PyWinTypes15.pdb" /debug /machine:IX86 /nodefaultlib:"libcmt.lib" /out:"Build\ce\x86\PyWinTypes_d.dll"
***************
*** 208,226 ****
# ADD LINK32 coredll.lib corelibc.lib /nologo /base:"0x1e600000" /subsystem:windows /dll /machine:IX86 /nodefaultlib:"libcmt.lib" /nodefaultlib:"$(CENoDefaultLib)" /out:"Build\ce\x86em\PyWinTypes15.dll" /implib:"Build\ce\x86em\PyWinTypes.lib"
# SUBTRACT LINK32 /pdb:none
- BSC32=bscmake.exe
- # ADD BASE BSC32 /nologo
- # ADD BSC32 /nologo
- MTL=midl.exe
- # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- RSC=rc.exe
- # ADD BASE RSC /l 0xc09 /d UNDER_CE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "WIN32" /d "STRICT" /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "_WIN32_WCE_EMULATION" /d "INTERNATIONAL" /d "USA" /d "INTLMSG_CODEPAGE" /d "NDEBUG"
- # ADD RSC /l 0xc09 /d UNDER_CE=$(CEVersion) /d "UNICODE" /d "_UNICODE" /d "WIN32" /d "STRICT" /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "_WIN32_WCE_EMULATION" /d "INTERNATIONAL" /d "USA" /d "INTLMSG_CODEPAGE" /d "NDEBUG"
- CPP=cl.exe
- # ADD BASE CPP /nologo /MT /W3 /Gm /Zi /Od /D "DEBUG" /D "_DEBUG" /D "_WIN32_WCE_EMULATION" /D UNDER_CE=200 /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "STRICT" /D _WIN32_WCE=200 /D "INTERNATIONAL" /D "USA" /D "INTLMSG_CODEPAGE" /D "x86" /D "i486" /D "_x86_" /D "BUILD_PYWINTYPES" /YX /FD /c
- # ADD CPP /nologo /MT /W3 /O1 /D "NDEBUG" /D "_WIN32_WCE_EMULATION" /D UNDER_CE=200 /D "UNICODE" /D "_UNICODE" /D "WIN32" /D "STRICT" /D _WIN32_WCE=200 /D "INTERNATIONAL" /D "USA" /D "INTLMSG_CODEPAGE" /D "x86" /D "i486" /D "_x86_" /D "BUILD_PYWINTYPES" /YX /FD /c
- EMPFILE=empfile.exe
- # ADD BASE EMPFILE COPY
- # ADD EMPFILE COPY
!ELSEIF "$(CFG)" == "PyWinTypes - Win32 (WCE MIPS) Debug"
--- 223,226 ----
***************
*** 238,241 ****
--- 238,256 ----
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
+ PFILE=pfile.exe
+ # ADD BASE PFILE COPY
+ # ADD PFILE COPY
+ CPP=clmips.exe
+ # ADD BASE CPP /nologo /MT /W3 /Zi /O1 /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "MIPS" /D "_MIPS_" /D UNDER_CE=200 /D "UNICODE" /D "BUILD_PYWINTYPES" /D "STRICT" /YX /FD /c
+ # ADD CPP /nologo /M$(CECrtMT) /W3 /Zi /Od /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "DEBUG" /D "_DEBUG" /D "MIPS" /D "_MIPS_" /D UNDER_CE=200 /D "UNICODE" /D "BUILD_PYWINTYPES" /D "STRICT" /YX /FD /c
+ RSC=rc.exe
+ # ADD BASE RSC /l 0xc09 /r /d "MIPS" /d "_MIPS_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
+ # ADD RSC /l 0xc09 /r /d "MIPS" /d "_MIPS_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
+ MTL=midl.exe
+ # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ BSC32=bscmake.exe
+ # ADD BASE BSC32 /nologo
+ # ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 coredll.lib /nologo /dll /pdb:"Build\System\PyWinTypes15.pdb" /debug /machine:MIPS /out:"Build\ce\mips\PyWinTypes15.dll" /implib:"Build\ce\mips\PyWinTypes.lib" /subsystem:windowsce
***************
*** 243,261 ****
# ADD LINK32 coredll.lib ole32.lib oleaut32.lib /nologo /dll /debug /machine:MIPS /nodefaultlib:"$(CENoDefaultLib)" /out:"Build\ce\mips\PyWinTypes15_d.dll" /implib:"Build\ce\mips\PyWinTypes_d.lib" /subsystem:windowsce
# SUBTRACT LINK32 /pdb:none
- BSC32=bscmake.exe
- # ADD BASE BSC32 /nologo
- # ADD BSC32 /nologo
- MTL=midl.exe
- # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- RSC=rc.exe
- # ADD BASE RSC /l 0xc09 /r /d "MIPS" /d "_MIPS_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
- # ADD RSC /l 0xc09 /r /d "MIPS" /d "_MIPS_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
- CPP=clmips.exe
- # ADD BASE CPP /nologo /MT /W3 /Zi /O1 /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "MIPS" /D "_MIPS_" /D UNDER_CE=200 /D "UNICODE" /D "BUILD_PYWINTYPES" /D "STRICT" /YX /FD /c
- # ADD CPP /nologo /M$(CECrtMT) /W3 /Zi /Od /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "DEBUG" /D "_DEBUG" /D "MIPS" /D "_MIPS_" /D UNDER_CE=200 /D "UNICODE" /D "BUILD_PYWINTYPES" /D "STRICT" /YX /FD /c
- PFILE=pfile.exe
- # ADD BASE PFILE COPY
- # ADD PFILE COPY
!ELSEIF "$(CFG)" == "PyWinTypes - Win32 (WCE SH3) Debug"
--- 258,261 ----
***************
*** 273,276 ****
--- 273,291 ----
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
+ PFILE=pfile.exe
+ # ADD BASE PFILE COPY
+ # ADD PFILE COPY
+ CPP=shcl.exe
+ # ADD BASE CPP /nologo /ML /W3 /Zi /Od /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "SHx" /D "SH3" /D "_SH3_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "DEBUG" /YX /FD /c
+ # ADD CPP /nologo /M$(CECrtMT) /W3 /Zi /Od /D "BUILD_PYWINTYPES" /D "STRICT" /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "DEBUG" /D "_DEBUG" /D "SHx" /D "SH3" /D "_SH3_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /YX /FD /c
+ RSC=rc.exe
+ # ADD BASE RSC /l 0xc09 /r /d "SHx" /d "SH3" /d "_SH3_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
+ # ADD RSC /l 0xc09 /r /d "SHx" /d "SH3" /d "_SH3_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
+ MTL=midl.exe
+ # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ BSC32=bscmake.exe
+ # ADD BASE BSC32 /nologo
+ # ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 commctrl.lib coredll.lib /nologo /dll /debug /machine:SH3 /out:"Build\ce\mips\PyWinTypes15_d.dll" /implib:"Build\ce\mips\PyWinTypes_d.lib" /subsystem:windowsce
***************
*** 278,296 ****
# ADD LINK32 commctrl.lib coredll.lib /nologo /dll /debug /machine:SH3 /nodefaultlib:"$(CENoDefaultLib)" /out:"Build\ce\sh\PyWinTypes15_d.dll" /implib:"Build\ce\sh\PyWinTypes_d.lib" /subsystem:windowsce
# SUBTRACT LINK32 /pdb:none
- BSC32=bscmake.exe
- # ADD BASE BSC32 /nologo
- # ADD BSC32 /nologo
- MTL=midl.exe
- # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- RSC=rc.exe
- # ADD BASE RSC /l 0xc09 /r /d "SHx" /d "SH3" /d "_SH3_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
- # ADD RSC /l 0xc09 /r /d "SHx" /d "SH3" /d "_SH3_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
- CPP=shcl.exe
- # ADD BASE CPP /nologo /ML /W3 /Zi /Od /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "SHx" /D "SH3" /D "_SH3_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /D "DEBUG" /YX /FD /c
- # ADD CPP /nologo /M$(CECrtMT) /W3 /Zi /Od /D "BUILD_PYWINTYPES" /D "STRICT" /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "DEBUG" /D "_DEBUG" /D "SHx" /D "SH3" /D "_SH3_" /D UNDER_CE=$(CEVersion) /D "UNICODE" /YX /FD /c
- PFILE=pfile.exe
- # ADD BASE PFILE COPY
- # ADD PFILE COPY
!ELSEIF "$(CFG)" == "PyWinTypes - Win32 (WCE SH3) Release"
--- 293,296 ----
***************
*** 308,311 ****
--- 308,326 ----
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
+ PFILE=pfile.exe
+ # ADD BASE PFILE COPY
+ # ADD PFILE COPY
+ CPP=shcl.exe
+ # ADD BASE CPP /nologo /ML /W3 /O1 /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "SHx" /D "SH3" /D "_SH3_" /D "UNICODE" /D UNDER_CE=200 /YX /FD /c
+ # ADD CPP /nologo /M$(CECrtMT) /W3 /O1 /D "BUILD_PYWINTYPES" /D "STRICT" /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "SHx" /D "SH3" /D "_SH3_" /D "UNICODE" /D UNDER_CE=200 /YX /FD /c
+ RSC=rc.exe
+ # ADD BASE RSC /l 0xc09 /r /d "SHx" /d "SH3" /d "_SH3_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
+ # ADD RSC /l 0xc09 /r /d "SHx" /d "SH3" /d "_SH3_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
+ MTL=midl.exe
+ # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
+ BSC32=bscmake.exe
+ # ADD BASE BSC32 /nologo
+ # ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 commctrl.lib coredll.lib /nologo /dll /machine:SH3 /out:"Build\ce\mips\PyWinTypes15.dll" /implib:"Build\ce\mips\PyWinTypes.lib" /subsystem:windowsce,1.0
***************
*** 313,331 ****
# ADD LINK32 commctrl.lib coredll.lib /nologo /dll /machine:SH3 /nodefaultlib:"$(CENoDefaultLib)" /out:"Build\ce\sh\PyWinTypes15.dll" /implib:"Build\ce\sh\PyWinTypes.lib" /subsystem:windowsce,1.0
# SUBTRACT LINK32 /pdb:none
- BSC32=bscmake.exe
- # ADD BASE BSC32 /nologo
- # ADD BSC32 /nologo
- MTL=midl.exe
- # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /o /win32 "NUL"
- RSC=rc.exe
- # ADD BASE RSC /l 0xc09 /r /d "SHx" /d "SH3" /d "_SH3_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
- # ADD RSC /l 0xc09 /r /d "SHx" /d "SH3" /d "_SH3_" /d UNDER_CE=$(CEVersion) /d _WIN32_WCE=$(CEVersion) /d "$(CEConfigName)" /d "UNICODE" /d "NDEBUG"
- CPP=shcl.exe
- # ADD BASE CPP /nologo /ML /W3 /O1 /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "SHx" /D "SH3" /D "_SH3_" /D "UNICODE" /D UNDER_CE=200 /YX /FD /c
- # ADD CPP /nologo /M$(CECrtMT) /W3 /O1 /D "BUILD_PYWINTYPES" /D "STRICT" /D _WIN32_WCE=$(CEVersion) /D "$(CEConfigName)" /D "NDEBUG" /D "SHx" /D "SH3" /D "_SH3_" /D "UNICODE" /D UNDER_CE=200 /YX /FD /c
- PFILE=pfile.exe
- # ADD BASE PFILE COPY
- # ADD PFILE COPY
!ENDIF
--- 328,331 ----
|
|
From: <mha...@us...> - 2003-11-07 03:58:22
|
Update of /cvsroot/pywin32/pywin32/win32/src In directory sc8-pr-cvs1:/tmp/cvs-serv11036 Modified Files: PyACL.cpp PyHANDLE.cpp PyIID.cpp PyLARGE_INTEGER.cpp PyOVERLAPPED.cpp PySECURITY_ATTRIBUTES.cpp PySECURITY_DESCRIPTOR.cpp PySID.cpp PyTime.cpp PyUnicode.cpp PyWinTypes.h PyWinTypesmodule.cpp win32apimodule.cpp Log Message: * Rationalize the headers - PyWinTypes.h now pulls in python.h and windows.h, giving a handy choke-point to tweak #define/#include weirdness. * Undefine _POSIX_C_SOURCE if being built with GCC. * Move some of the CE hacks, and add comments that they are old. The C++ files now just include pywintypes instead of all these headers manually. Index: PyACL.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyACL.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** PyACL.cpp 31 Oct 2003 12:08:00 -0000 1.5 --- PyACL.cpp 7 Nov 2003 03:58:17 -0000 1.6 *************** *** 2,11 **** // @doc - #include "Python.h" - #ifndef MS_WINCE /* This source is not included for WinCE */ - #include "windows.h" #include "PyWinTypes.h" #include "PyWinObjects.h" #include "PySecurityObjects.h" #include "accctrl.h" #include "aclapi.h" --- 2,10 ---- // @doc #include "PyWinTypes.h" + #include "PyWinObjects.h" #include "PySecurityObjects.h" + #ifndef MS_WINCE /* This source is not included for WinCE */ #include "accctrl.h" #include "aclapi.h" Index: PyHANDLE.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyHANDLE.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** PyHANDLE.cpp 23 Oct 2003 04:11:39 -0000 1.7 --- PyHANDLE.cpp 7 Nov 2003 03:58:17 -0000 1.8 *************** *** 2,10 **** // @doc - #include "windows.h" - #include "Python.h" - #include "structmember.h" #include "PyWinTypes.h" #include "PyWinObjects.h" // @pymethod <o PyHANDLE>|pywintypes|HANDLE|Creates a new HANDLE object --- 2,8 ---- // @doc #include "PyWinTypes.h" #include "PyWinObjects.h" + #include "structmember.h" // @pymethod <o PyHANDLE>|pywintypes|HANDLE|Creates a new HANDLE object Index: PyIID.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyIID.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** PyIID.cpp 31 Oct 2003 12:07:04 -0000 1.5 --- PyIID.cpp 7 Nov 2003 03:58:17 -0000 1.6 *************** *** 4,9 **** // @doc - #include "windows.h" - #include "Python.h" #include "PyWinTypes.h" #include "PyWinObjects.h" --- 4,7 ---- Index: PyLARGE_INTEGER.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyLARGE_INTEGER.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** PyLARGE_INTEGER.cpp 7 Apr 2003 03:38:27 -0000 1.6 --- PyLARGE_INTEGER.cpp 7 Nov 2003 03:58:17 -0000 1.7 *************** *** 22,27 **** // Hopefully Python will formalise an API for this? - #include "windows.h" - #include "Python.h" #include "PyWinTypes.h" #include "longintrepr.h" --- 22,25 ---- Index: PyOVERLAPPED.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyOVERLAPPED.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** PyOVERLAPPED.cpp 7 Apr 2003 14:02:27 -0000 1.7 --- PyOVERLAPPED.cpp 7 Nov 2003 03:58:17 -0000 1.8 *************** *** 2,11 **** // @doc - #include "windows.h" - #include "Python.h" - #include "structmember.h" #include "PyWinTypes.h" #include "PyWinObjects.h" #include "assert.h" // @pymethod <o PyOVERLAPPED>|pywintypes|OVERLAPPED|Creates a new OVERLAPPED object --- 2,9 ---- // @doc #include "PyWinTypes.h" #include "PyWinObjects.h" #include "assert.h" + #include "structmember.h" // @pymethod <o PyOVERLAPPED>|pywintypes|OVERLAPPED|Creates a new OVERLAPPED object Index: PySECURITY_ATTRIBUTES.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PySECURITY_ATTRIBUTES.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** PySECURITY_ATTRIBUTES.cpp 10 Mar 2003 01:18:16 -0000 1.4 --- PySECURITY_ATTRIBUTES.cpp 7 Nov 2003 03:58:17 -0000 1.5 *************** *** 2,11 **** // @doc - #include "windows.h" - #include "Python.h" - #include "structmember.h" #include "PyWinTypes.h" #include "PyWinObjects.h" #include "PySecurityObjects.h" #ifdef MS_WINCE --- 2,9 ---- // @doc #include "PyWinTypes.h" #include "PyWinObjects.h" #include "PySecurityObjects.h" + #include "structmember.h" #ifdef MS_WINCE Index: PySECURITY_DESCRIPTOR.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PySECURITY_DESCRIPTOR.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** PySECURITY_DESCRIPTOR.cpp 29 Jul 2003 06:47:58 -0000 1.9 --- PySECURITY_DESCRIPTOR.cpp 7 Nov 2003 03:58:17 -0000 1.10 *************** *** 2,11 **** // @doc - #include "windows.h" - #include "Python.h" - #include "structmember.h" #include "PyWinTypes.h" #include "PyWinObjects.h" #include "PySecurityObjects.h" #ifndef MS_WINCE /* This code is not available on Windows CE */ --- 2,9 ---- // @doc #include "PyWinTypes.h" #include "PyWinObjects.h" #include "PySecurityObjects.h" + #include "structmember.h" #ifndef MS_WINCE /* This code is not available on Windows CE */ Index: PySID.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PySID.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** PySID.cpp 10 Mar 2003 01:18:16 -0000 1.7 --- PySID.cpp 7 Nov 2003 03:58:17 -0000 1.8 *************** *** 2,7 **** // @doc - #include "windows.h" - #include "Python.h" #include "PyWinTypes.h" #include "PyWinObjects.h" --- 2,5 ---- Index: PyTime.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyTime.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** PyTime.cpp 18 Oct 2003 23:36:21 -0000 1.8 --- PyTime.cpp 7 Nov 2003 03:58:17 -0000 1.9 *************** *** 3,8 **** // // @doc - #include "windows.h" - #include "Python.h" #include "PyWinTypes.h" #include "PyWinObjects.h" --- 3,6 ---- Index: PyUnicode.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyUnicode.cpp,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** PyUnicode.cpp 31 Oct 2003 04:58:18 -0000 1.16 --- PyUnicode.cpp 7 Nov 2003 03:58:17 -0000 1.17 *************** *** 4,9 **** // @doc - #include "windows.h" - #include "Python.h" #include "PyWinTypes.h" #include "PyWinObjects.h" --- 4,7 ---- Index: PyWinTypes.h =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyWinTypes.h,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** PyWinTypes.h 1 Sep 2003 08:13:12 -0000 1.16 --- PyWinTypes.h 7 Nov 2003 03:58:17 -0000 1.17 *************** *** 3,17 **** #define __PYWINTYPES_H__ ! /* DAA: restore macros for building under CE */ ! #ifndef IN ! #define IN ! #endif ! #ifdef OUT ! #undef OUT ! #endif ! #ifndef OUT ! #define OUT #endif // Do we want to use the builtin Unicode object? // If defined, we use the standard builtin type. --- 3,17 ---- #define __PYWINTYPES_H__ ! // If building under a GCC, tweak what we need. ! #if defined(__GNUC__) && defined(_POSIX_C_SOURCE) ! // python.h complains if _POSIX_C_SOURCE is already defined ! # undef _POSIX_C_SOURCE #endif + // Python.h and Windows.h both protect themselves from multiple + // includes - so it is safe to do here (and provides a handy + // choke point for #include vagaries + #include "Python.h" + #include "windows.h" // Do we want to use the builtin Unicode object? // If defined, we use the standard builtin type. *************** *** 19,23 **** // (but that doesnt work seamlessly with PyString objects) ! // For 1.6 builds, this will be ON. // For 1.5 builds, this will be OFF #if (PY_VERSION_HEX >= 0x01060000) --- 19,23 ---- // (but that doesnt work seamlessly with PyString objects) ! // For 1.6+ builds, this will be ON. // For 1.5 builds, this will be OFF #if (PY_VERSION_HEX >= 0x01060000) *************** *** 25,29 **** #endif ! #ifdef FREEZE_PYWINTYPES /* The pywintypes module is being included in a frozen .EXE/.DLL */ --- 25,31 ---- #endif ! // *** NOTE *** FREEZE_PYWINTYPES is deprecated. It used to be used ! // by the 'freeze' tool, but now py2exe etc do a far better job, and ! // don't require a custom built pywintypes DLL. #ifdef FREEZE_PYWINTYPES /* The pywintypes module is being included in a frozen .EXE/.DLL */ *************** *** 48,57 **** #include <tchar.h> #ifdef MS_WINCE // Having trouble making these work for Palm PCs?? ! #ifndef PYWIN_HPC /* Palm PC */ ! #define NO_PYWINTYPES_TIME ! #define NO_PYWINTYPES_IID ! #define NO_PYWINTYPES_BSTR ! #endif #endif // MS_WINCE /* --- 50,72 ---- #include <tchar.h> #ifdef MS_WINCE + // These macros caused grief on CE once (do they still?) + # ifndef IN + # define IN + # endif + # ifdef OUT + # undef OUT + # endif + # ifndef OUT + # define OUT + # endif // Having trouble making these work for Palm PCs?? ! // NOTE: These are old - for Windows CE 1 devices, and well ! // before the PPC platform. It is unlikely recent CE toolkits ! // still need all this magic. ! # ifndef PYWIN_HPC /* Palm PC */ ! # define NO_PYWINTYPES_TIME ! # define NO_PYWINTYPES_IID ! # define NO_PYWINTYPES_BSTR ! # endif #endif // MS_WINCE /* Index: PyWinTypesmodule.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/PyWinTypesmodule.cpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** PyWinTypesmodule.cpp 31 Oct 2003 02:54:12 -0000 1.11 --- PyWinTypesmodule.cpp 7 Nov 2003 03:58:17 -0000 1.12 *************** *** 13,23 **** ******************************************************************/ - #include "windows.h" - #include "malloc.h" - - #include "Python.h" #include "PyWinTypes.h" #include "PyWinObjects.h" #include "PySecurityObjects.h" PyObject * PyWinExc_ApiError = NULL; --- 13,20 ---- ******************************************************************/ #include "PyWinTypes.h" #include "PyWinObjects.h" #include "PySecurityObjects.h" + #include "malloc.h" PyObject * PyWinExc_ApiError = NULL; Index: win32apimodule.cpp =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/src/win32apimodule.cpp,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** win32apimodule.cpp 31 Oct 2003 12:06:07 -0000 1.30 --- win32apimodule.cpp 7 Nov 2003 03:58:17 -0000 1.31 *************** *** 13,22 **** ******************************************************************/ - #include "windows.h" - - #define Py_USE_NEW_NAMES - - - #include "Python.h" #include "PyWinTypes.h" #include "PyWinObjects.h" --- 13,16 ---- |
|
From: Thomas H. <th...@py...> - 2003-11-06 13:58:20
|
"Mark Hammond" <mha...@sk...> writes:
>> But even before this, I get compilation errors with mingw. An example:
>> win32/src/PyACL.cpp: In function `BOOL _ReorderACL(_ACL*)':
>> win32/src/PyACL.cpp:89: `ACCESS_DENIED_OBJECT_ACE_TYPE'
>> undeclared (first use
>> this function)
>> win32/src/PyACL.cpp:89: (Each undeclared identifier is
>> reported only once for
>> each function it appears in.)
>> error: command 'gcc' failed with exit status 1
>
> I've been making lots of changes for that mainwin toolkit recently, and
> didn't strike that one.
>
>>
>> If someone tells me how this can be fixed I'll happy to also bring
>> this up to date for mingw.
>
> A quick grep shows:
>
> WinNT.h:#define ACCESS_DENIED_OBJECT_ACE_TYPE (0x6)
>
> So I suggest a simple:
> #ifndef .... // mingw
> #define ....
>
> If nothing else pops up. I should install mingw, but it is worth noting
> that we already require some unknown semi-recent version of the "platform
> sdk" rather than a vanilla MSVC6. However, Roger Upole did most of recent
> the security stuff, but also himself struck a "platform sdk" version problem
> trying to build the recent shell changes, so it seems unlikely it is simply
> that. So buggered if I know :)
Well, I have the newest Platform SDK installed (Feb 2003, IIRC). But I
assume mingw doesn't use it (at least not without some hints from me).
I did try to use the VC6 header files from mingw, but this made things
worse (and was probably a bad idea).
FWIW, I do not care for mingw myself ('cause I see no reason to use it),
and I definitely do *not* want to port win32all to mingw <wink>. For
now, I would only like to make sure that the setup script works with
mingw, but only if the source is ready for it - but this can also be
done by someone else.
>> Whether they work or not - I cannot currently tell.
>
> Woo hoo - check it in :)
Already done (as you noted in another email). You can expect a further
checkin today, it seems I can build *and install* the win32all subset I
use myself. This includes the basic win32 stuff, services, eventlog,
but no PythonWin, scintally, ax, or stuff like that.
The file locations are different from the win32all standard, but I don't
think this hurts. Except, maybe, for pywintypes and pythoncom, which
should be in sysdir. But this can be done later, maybe with the
post-install script of bdist_wininst.
>
> No worries - feel free to just hack away on this!
>
> And while I am writing a mail - should I check in the "dicts.dat" change to
> py2exe? For some reason, the hacks etc and bother I went to, to make it
> work in the first place, bother me enough to want to remove it now!
I have already checked it in, maybe you should double check to make
sure it is what you need.
Thomas
|
|
From: Mark H. <mha...@sk...> - 2003-11-06 11:50:42
|
Doh! I said "check it in" when replying to a checkin message! So please ignore that :) Mark. > -----Original Message----- > From: pyw...@li... > [mailto:pyw...@li...]On Behalf Of > th...@us... > Sent: Thursday, 6 November 2003 8:10 AM > To: pyw...@li... > Subject: [pywin32-checkins] pywin32 setup_win32all_core.py,1.5,1.6 ... |
|
From: Mark H. <mha...@sk...> - 2003-11-06 11:49:46
|
> Modified Files: > setup_win32all_core.py > Log Message: > There is a chance for distutils, even in the win32all build process! > This encourages me to further work on this script. Yeah, me too :) I've a couple of pending trivial changes - at least that proves I'm serious ;) > The specialized code for pywintypes and pythoncom should be clearer > now, at least to me. Unfortunately, I broke mingw32 support. > > But even before this, I get compilation errors with mingw. An example: > win32/src/PyACL.cpp: In function `BOOL _ReorderACL(_ACL*)': > win32/src/PyACL.cpp:89: `ACCESS_DENIED_OBJECT_ACE_TYPE' > undeclared (first use > this function) > win32/src/PyACL.cpp:89: (Each undeclared identifier is > reported only once for > each function it appears in.) > error: command 'gcc' failed with exit status 1 I've been making lots of changes for that mainwin toolkit recently, and didn't strike that one. > > If someone tells me how this can be fixed I'll happy to also bring > this up to date for mingw. A quick grep shows: WinNT.h:#define ACCESS_DENIED_OBJECT_ACE_TYPE (0x6) So I suggest a simple: #ifndef .... // mingw #define .... If nothing else pops up. I should install mingw, but it is worth noting that we already require some unknown semi-recent version of the "platform sdk" rather than a vanilla MSVC6. However, Roger Upole did most of recent the security stuff, but also himself struck a "platform sdk" version problem trying to build the recent shell changes, so it seems unlikely it is simply that. So buggered if I know :) > swig is now supported (.i sources are parsed out of the dsp files), > and I can at least build > pywintypes, win32api, win32file, win32event, pythoncom. > > Whether they work or not - I cannot currently tell. Woo hoo - check it in :) > install_lib does no longer work, requires rethought: > Some files should be installed in the normal way, others go > into sysdir. No worries - feel free to just hack away on this! And while I am writing a mail - should I check in the "dicts.dat" change to py2exe? For some reason, the hacks etc and bother I went to, to make it work in the first place, bother me enough to want to remove it now! Thanks, Mark. |
|
From: <mha...@us...> - 2003-11-06 06:15:54
|
Update of /cvsroot/pywin32/pywin32/com In directory sc8-pr-cvs1:/tmp/cvs-serv1257 Modified Files: shell.dsp Log Message: Add IColumnProvider support. Index: shell.dsp =================================================================== RCS file: /cvsroot/pywin32/pywin32/com/shell.dsp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** shell.dsp 8 Oct 2003 23:54:36 -0000 1.8 --- shell.dsp 6 Nov 2003 06:15:45 -0000 1.9 *************** *** 99,102 **** --- 99,106 ---- # Begin Source File + SOURCE=.\win32comext\shell\src\PyIColumnProvider.cpp + # End Source File + # Begin Source File + SOURCE=.\win32comext\shell\src\PyIContextMenu.cpp # End Source File *************** *** 148,151 **** --- 152,159 ---- SOURCE=.\win32comext\shell\src\PyIBrowserFrameOptions.h + # End Source File + # Begin Source File + + SOURCE=.\win32comext\shell\src\PyIColumnProvider.h # End Source File # Begin Source File |
|
From: <mha...@us...> - 2003-11-06 06:15:06
|
Update of /cvsroot/pywin32/pywin32/com/win32comext/shell/src
In directory sc8-pr-cvs1:/tmp/cvs-serv1104/src
Modified Files:
shell.cpp
Added Files:
PyIColumnProvider.cpp PyIColumnProvider.h
Log Message:
IColumnProvider interface.
--- NEW FILE: PyIColumnProvider.cpp ---
// This file implements the IColumnProvider Interface and Gateway for Python.
// Generated by makegw.py
#include "shell_pch.h"
#include "PyIColumnProvider.h"
extern BOOL PyObject_AsSHCOLUMNINIT(PyObject *, SHCOLUMNINIT *);
extern PyObject *PyObject_FromSHCOLUMNINIT(LPCSHCOLUMNINIT);
extern BOOL PyObject_AsSHCOLUMNINFO(PyObject *, SHCOLUMNINFO *);
extern PyObject *PyObject_FromSHCOLUMNINFO(LPCSHCOLUMNINFO);
extern BOOL PyObject_AsSHCOLUMNID(PyObject *, SHCOLUMNID *);
extern PyObject *PyObject_FromSHCOLUMNID(LPCSHCOLUMNID);
extern BOOL PyObject_AsSHCOLUMNDATA(PyObject *, SHCOLUMNDATA *);
extern PyObject *PyObject_FromSHCOLUMNDATA(LPCSHCOLUMNDATA);
// @doc - This file contains autoduck documentation
// ---------------------------------------------------
//
// Interface Implementation
PyIColumnProvider::PyIColumnProvider(IUnknown *pdisp):
PyIUnknown(pdisp)
{
ob_type = &type;
}
PyIColumnProvider::~PyIColumnProvider()
{
}
/* static */ IColumnProvider *PyIColumnProvider::GetI(PyObject *self)
{
return (IColumnProvider *)PyIUnknown::GetI(self);
}
// @pymethod |PyIColumnProvider|Initialize|Description of Initialize.
PyObject *PyIColumnProvider::Initialize(PyObject *self, PyObject *args)
{
IColumnProvider *pICP = GetI(self);
if ( pICP == NULL )
return NULL;
SHCOLUMNINIT psci;
PyObject *obpsci;
// @pyparm <o PyCSHCOLUMNINIT>|psci||Description for psci
if ( !PyArg_ParseTuple(args, "O:Initialize", &obpsci) )
return NULL;
BOOL bPythonIsHappy = TRUE;
if (bPythonIsHappy && !PyObject_AsSHCOLUMNINIT( obpsci, &psci )) bPythonIsHappy = FALSE;
if (!bPythonIsHappy) return NULL;
HRESULT hr;
PY_INTERFACE_PRECALL;
hr = pICP->Initialize( &psci );
PY_INTERFACE_POSTCALL;
if ( FAILED(hr) )
return PyCom_BuildPyException(hr, pICP, IID_IColumnProvider );
Py_INCREF(Py_None);
return Py_None;
}
// @pymethod |PyIColumnProvider|GetColumnInfo|Description of GetColumnInfo.
PyObject *PyIColumnProvider::GetColumnInfo(PyObject *self, PyObject *args)
{
IColumnProvider *pICP = GetI(self);
if ( pICP == NULL )
return NULL;
// @pyparm int|dwIndex||Description for dwIndex
DWORD dwIndex;
if ( !PyArg_ParseTuple(args, "l:GetColumnInfo", &dwIndex) )
return NULL;
HRESULT hr;
SHCOLUMNINFO psci;
PY_INTERFACE_PRECALL;
hr = pICP->GetColumnInfo( dwIndex, &psci );
PY_INTERFACE_POSTCALL;
if ( FAILED(hr) )
return PyCom_BuildPyException(hr, pICP, IID_IColumnProvider );
return PyObject_FromSHCOLUMNINFO(&psci);
}
// @pymethod |PyIColumnProvider|GetItemData|Description of GetItemData.
PyObject *PyIColumnProvider::GetItemData(PyObject *self, PyObject *args)
{
IColumnProvider *pICP = GetI(self);
if ( pICP == NULL )
return NULL;
SHCOLUMNID pscid;
PyObject *obpscid;
// @pyparm <o PySHCOLUMNID>|pscid||Description for pscid
SHCOLUMNDATA pscd;
PyObject *obpscd;
// @pyparm <o PySHCOLUMNDATA>|pscd||Description for pscd
VARIANT varData;
VariantInit(&varData);
if ( !PyArg_ParseTuple(args, "OO:GetItemData", &obpscid, &obpscd) )
return NULL;
BOOL bPythonIsHappy = TRUE;
if (bPythonIsHappy && !PyObject_AsSHCOLUMNID( obpscid, &pscid )) bPythonIsHappy = FALSE;
if (bPythonIsHappy && !PyObject_AsSHCOLUMNDATA( obpscd, &pscd )) bPythonIsHappy = FALSE;
if (!bPythonIsHappy) return NULL;
HRESULT hr;
PY_INTERFACE_PRECALL;
hr = pICP->GetItemData( &pscid, &pscd, &varData );
PY_INTERFACE_POSTCALL;
if ( FAILED(hr) )
return PyCom_BuildPyException(hr, pICP, IID_IColumnProvider );
PyObject *obRet = PyCom_PyObjectFromVariant(&varData);
VariantClear(&varData);
return obRet;
}
// @object PyIColumnProvider|Description of the interface
static struct PyMethodDef PyIColumnProvider_methods[] =
{
{ "Initialize", PyIColumnProvider::Initialize, 1 }, // @pymeth Initialize|Description of Initialize
{ "GetColumnInfo", PyIColumnProvider::GetColumnInfo, 1 }, // @pymeth GetColumnInfo|Description of GetColumnInfo
{ "GetItemData", PyIColumnProvider::GetItemData, 1 }, // @pymeth GetItemData|Description of GetItemData
{ NULL }
};
PyComTypeObject PyIColumnProvider::type("PyIColumnProvider",
&PyIUnknown::type,
sizeof(PyIColumnProvider),
PyIColumnProvider_methods,
GET_PYCOM_CTOR(PyIColumnProvider));
// ---------------------------------------------------
//
// Gateway Implementation
STDMETHODIMP PyGColumnProvider::Initialize(
/* [unique][in] */ LPCSHCOLUMNINIT psci)
{
PY_GATEWAY_METHOD;
PyObject *obpsci = PyObject_FromSHCOLUMNINIT(psci);
if (obpsci==NULL) return PyCom_HandlePythonFailureToCOM();
HRESULT hr=InvokeViaPolicy("Initialize", NULL, "(O)", obpsci);
Py_DECREF(obpsci);
return hr;
}
STDMETHODIMP PyGColumnProvider::GetColumnInfo(
/* [unique][in] */ DWORD dwIndex,
/* [out] */ LPSHCOLUMNINFO psci)
{
PY_GATEWAY_METHOD;
PyObject *result;
HRESULT hr=InvokeViaPolicy("GetColumnInfo", &result, "l", dwIndex);
if (FAILED(hr)) return hr;
if (result==Py_None)
hr = S_FALSE;
else {
PyObject_AsSHCOLUMNINFO(result, psci);
hr = PyCom_SetCOMErrorFromPyException(GetIID());
}
Py_DECREF(result);
return hr;
}
STDMETHODIMP PyGColumnProvider::GetItemData(
/* [unique][in] */ LPCSHCOLUMNID pscid,
/* [unique][in] */ LPCSHCOLUMNDATA pscd,
/* [unique][out] */ VARIANT *pvarData)
{
PY_GATEWAY_METHOD;
PyObject *obpscid = PyObject_FromSHCOLUMNID(pscid);
if (obpscid==NULL) return PyCom_HandlePythonFailureToCOM();
PyObject *obpscd = PyObject_FromSHCOLUMNDATA(pscd);
if (obpscd==NULL) return PyCom_HandlePythonFailureToCOM();
PyObject *result;
HRESULT hr=InvokeViaPolicy("GetItemData", &result, "OO", obpscid, obpscd);
Py_DECREF(obpscid);
Py_DECREF(obpscd);
if (FAILED(hr)) return hr;
// Process the Python results, and convert back to the real params
if (result==Py_None)
hr = S_FALSE;
else {
PyCom_VariantFromPyObject(result, pvarData);
hr = PyCom_SetCOMErrorFromPyException(GetIID());
}
Py_DECREF(result);
return hr;
}
--- NEW FILE: PyIColumnProvider.h ---
// This file declares the IColumnProvider Interface and Gateway for Python.
// Generated by makegw.py
// ---------------------------------------------------
//
// Interface Declaration
class PyIColumnProvider : public PyIUnknown
{
public:
MAKE_PYCOM_CTOR(PyIColumnProvider);
static IColumnProvider *GetI(PyObject *self);
static PyComTypeObject type;
// The Python methods
static PyObject *Initialize(PyObject *self, PyObject *args);
static PyObject *GetColumnInfo(PyObject *self, PyObject *args);
static PyObject *GetItemData(PyObject *self, PyObject *args);
protected:
PyIColumnProvider(IUnknown *pdisp);
~PyIColumnProvider();
};
// ---------------------------------------------------
//
// Gateway Declaration
class PyGColumnProvider : public PyGatewayBase, public IColumnProvider
{
protected:
PyGColumnProvider(PyObject *instance) : PyGatewayBase(instance) { ; }
PYGATEWAY_MAKE_SUPPORT2(PyGColumnProvider, IColumnProvider, IID_IColumnProvider, PyGatewayBase)
// IColumnProvider
STDMETHOD(Initialize)(
LPCSHCOLUMNINIT psci);
STDMETHOD(GetColumnInfo)(
DWORD dwIndex,
LPSHCOLUMNINFO psci);
STDMETHOD(GetItemData)(
LPCSHCOLUMNID pscid,
LPCSHCOLUMNDATA pscd,
VARIANT *pvarData);
};
Index: shell.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/shell/src/shell.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** shell.cpp 9 Oct 2003 12:48:27 -0000 1.11
--- shell.cpp 6 Nov 2003 06:15:03 -0000 1.12
***************
*** 27,30 ****
--- 27,31 ----
#include "PyIPersist.h"
#include "PyIPersistFolder.h"
+ #include "PyIColumnProvider.h"
#include "PythonCOMRegister.h" // For simpler registration of IIDs etc.
***************
*** 287,290 ****
--- 288,391 ----
}
+ static BOOL _CopyToWCHAR(PyObject *ob, WCHAR *buf, unsigned buf_size)
+ {
+ WCHAR *sz;
+ if (!PyWinObject_AsWCHAR(ob, &sz, FALSE))
+ return FALSE;
+ wcsncpy(buf, sz, buf_size);
+ buf[buf_size-1] = L'\0';
+ PyWinObject_FreeWCHAR(sz);
+ return TRUE;
+ }
+ #define COPY_TO_WCHAR(ob, buf) _CopyToWCHAR((ob), (buf), sizeof((buf))/sizeof((buf)[0]))
+
+ BOOL PyObject_AsSHCOLUMNID(PyObject *ob, SHCOLUMNID *p)
+ {
+ PyObject *obGUID;
+ if (!PyArg_ParseTuple(ob, "Oi:SHCOLUMNID tuple",
+ &obGUID, &p->pid))
+ return FALSE;
+ return PyWinObject_AsIID(obGUID, &p->fmtid);
+ }
+
+ PyObject *PyObject_FromSHCOLUMNID(LPCSHCOLUMNID p)
+ {
+ PyObject *obIID = PyWinObject_FromIID(p->fmtid);
+ if (!obIID)
+ return NULL;
+ return Py_BuildValue("Ni", obIID, p->pid);
+ }
+
+ BOOL PyObject_AsSHCOLUMNINIT(PyObject *ob, SHCOLUMNINIT *p)
+ {
+ PyObject *obName;
+ if (!PyArg_ParseTuple(ob, "iiO:SHCOLUMNINIT tuple",
+ &p->dwFlags, &p->dwReserved, &obName))
+ return FALSE;
+ return COPY_TO_WCHAR(ob, p->wszFolder);
+ }
+
+ PyObject *PyObject_FromSHCOLUMNINIT(LPCSHCOLUMNINIT p)
+ {
+ PyObject *obName = PyWinObject_FromWCHAR(p->wszFolder);
+ if (!obName)
+ return NULL;
+ return Py_BuildValue("iiN", p->dwFlags, p->dwReserved, obName);
+ }
+
+ BOOL PyObject_AsSHCOLUMNINFO(PyObject *ob, SHCOLUMNINFO *p)
+ {
+ PyObject *obID, *obTitle, *obDescription;
+ if (!PyArg_ParseTuple(ob, "OiiiiOO:SHCOLUMNINFO tuple",
+ &obID, &p->vt, &p->fmt, &p->cChars, &p->csFlags,
+ &obTitle, &obDescription))
+ return FALSE;
+ if (!PyObject_AsSHCOLUMNID(obID, &p->scid))
+ return FALSE;
+ if (!COPY_TO_WCHAR(obTitle, p->wszTitle))
+ return FALSE;
+ if (!COPY_TO_WCHAR(obDescription, p->wszDescription))
+ return FALSE;
+ return TRUE;
+ }
+ PyObject *PyObject_FromSHCOLUMNINFO(LPCSHCOLUMNINFO p)
+ {
+ PyObject *rc = NULL, *obID = NULL;
+ PyObject *obDescription = NULL, *obTitle = NULL;
+ obID = PyObject_FromSHCOLUMNID(&p->scid);
+ if (!obID) goto done;
+ obTitle = PyWinObject_FromWCHAR(p->wszTitle);
+ if (!obTitle) goto done;
+ obDescription = PyWinObject_FromWCHAR(p->wszDescription);
+ if (!obDescription) goto done;
+ rc = Py_BuildValue("OiiiiOO", obID, p->vt, p->fmt, p->cChars,
+ p->csFlags, obTitle, obDescription);
+ done:
+ Py_XDECREF(obID);
+ Py_XDECREF(obDescription);
+ Py_XDECREF(obTitle);
+ return rc;
+ }
+
+ BOOL PyObject_AsSHCOLUMNDATA(PyObject *, SHCOLUMNDATA *)
+ {
+ PyErr_SetString(PyExc_NotImplementedError,
+ "Not sure how to handle SHCOLUMNDATA pwszExt, and we don't need this anyway :)");
+ return FALSE;
+ }
+
+ PyObject *PyObject_FromSHCOLUMNDATA(LPCSHCOLUMNDATA p)
+ {
+ PyObject *obFile = PyWinObject_FromWCHAR(p->wszFile);
+ if (!obFile) return NULL;
+ PyObject *obExt = PyWinObject_FromWCHAR(p->pwszExt);
+ if (!obExt) {
+ Py_DECREF(obFile);
+ return NULL;
+ }
+ return Py_BuildValue("iiiNN", p->dwFlags, p->dwFileAttributes, p->dwReserved,
+ obExt, obFile);
+ }
+
//////////////////////////////////////////////////
//
***************
*** 753,756 ****
--- 854,858 ----
PYCOM_INTERFACE_FULL(BrowserFrameOptions),
PYCOM_INTERFACE_FULL(PersistFolder),
+ PYCOM_INTERFACE_FULL(ColumnProvider),
// IID_ICopyHook doesn't exist - hack it up
{ &IID_IShellCopyHook, "IShellCopyHook", "IID_IShellCopyHook", &PyICopyHook::type, GET_PYGATEWAY_CTOR(PyGCopyHook) },
***************
*** 812,814 ****
--- 914,960 ----
ADD_CONSTANT(HOTKEYF_SHIFT);
ADD_IID(CLSID_ShellLink);
+ ADD_IID(CLSID_ShellDesktop);
+ ADD_IID(CLSID_NetworkPlaces);
+ ADD_IID(CLSID_NetworkDomain);
+ ADD_IID(CLSID_NetworkServer);
+ ADD_IID(CLSID_NetworkShare);
+ ADD_IID(CLSID_MyComputer);
+ ADD_IID(CLSID_Internet);
+ ADD_IID(CLSID_ShellFSFolder);
+ ADD_IID(CLSID_RecycleBin);
+ ADD_IID(CLSID_ControlPanel);
+ ADD_IID(CLSID_Printers);
+ ADD_IID(CLSID_MyDocuments);
+
+ ADD_IID(FMTID_Intshcut);
+ ADD_IID(FMTID_InternetSite);
+
+ ADD_IID(CGID_Explorer);
+ ADD_IID(CGID_ShellDocView);
+
+ #if (_WIN32_IE >= 0x0400)
+ ADD_IID(CGID_ShellServiceObject);
+ ADD_IID(CGID_ExplorerBarDoc);
+ #else
+ # pragma message("Please update your SDK headers - IE5 features missing!")
+ #endif
+
+ #if (_WIN32_IE >= 0x0500)
+
+ ADD_IID(FMTID_ShellDetails);
+ ADD_IID(FMTID_Storage);
+ ADD_IID(FMTID_ImageProperties);
+ ADD_IID(FMTID_Displaced);
+ ADD_IID(FMTID_Briefcase);
+ ADD_IID(FMTID_Misc);
+ ADD_IID(FMTID_WebView);
+ ADD_IID(FMTID_AudioSummaryInformation);
+ ADD_IID(FMTID_Volume);
+ ADD_IID(FMTID_Query);
+ ADD_IID(FMTID_SummaryInformation);
+ ADD_IID(FMTID_MediaFileSummaryInformation);
+ ADD_IID(FMTID_ImageSummaryInformation);
+ #else
+ # pragma message("Please update your SDK headers - IE5 features missing!")
+ #endif
}
|
|
From: <mha...@us...> - 2003-11-06 06:14:15
|
Update of /cvsroot/pywin32/pywin32/com/win32comext/shell In directory sc8-pr-cvs1:/tmp/cvs-serv1001 Modified Files: shellcon.py Log Message: Lots of new shell constants. Index: shellcon.py =================================================================== RCS file: /cvsroot/pywin32/pywin32/com/win32comext/shell/shellcon.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** shellcon.py 9 Oct 2003 13:25:42 -0000 1.5 --- shellcon.py 6 Nov 2003 06:14:12 -0000 1.6 *************** *** 308,313 **** SFGAO_FOLDER = 0x20000000L SFGAO_FILESYSTEM = 0x40000000L ! SFGAO_HASSUBFOLDER = 0x80000000L ! SFGAO_CONTENTSMASK = 0x80000000L SFGAO_VALIDATE = 0x01000000L SFGAO_REMOVABLE = 0x02000000L --- 308,313 ---- SFGAO_FOLDER = 0x20000000L SFGAO_FILESYSTEM = 0x40000000L ! SFGAO_HASSUBFOLDER = (-2147483648) ! SFGAO_CONTENTSMASK = (-2147483648) SFGAO_VALIDATE = 0x01000000L SFGAO_REMOVABLE = 0x02000000L *************** *** 316,319 **** --- 316,320 ---- SFGAO_NONENUMERATED = 0x00100000L SFGAO_NEWCONTENT = 0x00200000L + SFGAO_STORAGE = 0x00000008L DWFRF_NORMAL = 0 DWFRF_DELETECONFIGDATA = 1 *************** *** 560,561 **** --- 561,815 ---- BFO_SHOW_NAVIGATION_CANCELLED = 0x10000 BFO_QUERY_ALL = -1 + # From ShlGuid.h + PID_FINDDATA = 0 + PID_NETRESOURCE = 1 + PID_DESCRIPTIONID = 2 + PID_WHICHFOLDER = 3 + PID_NETWORKLOCATION = 4 + PID_COMPUTERNAME = 5 + PID_DISPLACED_FROM = 2 + PID_DISPLACED_DATE = 3 + PID_SYNC_COPY_IN = 2 + PID_MISC_STATUS = 2 + PID_MISC_ACCESSCOUNT = 3 + PID_MISC_OWNER = 4 + PID_HTMLINFOTIPFILE = 5 + PID_MISC_PICS = 6 + PID_DISPLAY_PROPERTIES = 0 + PID_INTROTEXT = 1 + PIDSI_ARTIST = 2 + PIDSI_SONGTITLE = 3 + PIDSI_ALBUM = 4 + PIDSI_YEAR = 5 + PIDSI_COMMENT = 6 + PIDSI_TRACK = 7 + PIDSI_GENRE = 11 + PIDSI_LYRICS = 12 + PIDDRSI_PROTECTED = 2 + PIDDRSI_DESCRIPTION = 3 + PIDDRSI_PLAYCOUNT = 4 + PIDDRSI_PLAYSTARTS = 5 + PIDDRSI_PLAYEXPIRES = 6 + PIDVSI_STREAM_NAME = 0x00000002 + PIDVSI_FRAME_WIDTH = 0x00000003 + PIDVSI_FRAME_HEIGHT = 0x00000004 + PIDVSI_TIMELENGTH = 0x00000007 + PIDVSI_FRAME_COUNT = 0x00000005 + PIDVSI_FRAME_RATE = 0x00000006 + PIDVSI_DATA_RATE = 0x00000008 + PIDVSI_SAMPLE_SIZE = 0x00000009 + PIDVSI_COMPRESSION = 0x0000000A + PIDVSI_STREAM_NUMBER = 0x0000000B + PIDASI_FORMAT = 0x00000002 + PIDASI_TIMELENGTH = 0x00000003 + PIDASI_AVG_DATA_RATE = 0x00000004 + PIDASI_SAMPLE_RATE = 0x00000005 + PIDASI_SAMPLE_SIZE = 0x00000006 + PIDASI_CHANNEL_COUNT = 0x00000007 + PIDASI_STREAM_NUMBER = 0x00000008 + PIDASI_STREAM_NAME = 0x00000009 + PIDASI_COMPRESSION = 0x0000000A + PID_CONTROLPANEL_CATEGORY = 2 + PID_VOLUME_FREE = 2 + PID_VOLUME_CAPACITY = 3 + PID_VOLUME_FILESYSTEM = 4 + PID_SHARE_CSC_STATUS = 2 + PID_LINK_TARGET = 2 + PID_QUERY_RANK = 2 + # From PropIdl.h + PROPSETFLAG_DEFAULT = ( 0 ) + PROPSETFLAG_NONSIMPLE = ( 1 ) + PROPSETFLAG_ANSI = ( 2 ) + PROPSETFLAG_UNBUFFERED = ( 4 ) + PROPSETFLAG_CASE_SENSITIVE = ( 8 ) + PROPSET_BEHAVIOR_CASE_SENSITIVE = ( 1 ) + PID_DICTIONARY = ( 0 ) + PID_CODEPAGE = ( 0x1 ) + PID_FIRST_USABLE = ( 0x2 ) + PID_FIRST_NAME_DEFAULT = ( 0xfff ) + PID_LOCALE = ( (-2147483648) ) + PID_MODIFY_TIME = ( (-2147483647) ) + PID_SECURITY = ( (-2147483646) ) + PID_BEHAVIOR = ( (-2147483645) ) + PID_ILLEGAL = ( (-1) ) + PID_MIN_READONLY = ( (-2147483648) ) + PID_MAX_READONLY = ( (-1073741825) ) + PIDDI_THUMBNAIL = 0x00000002L + PIDSI_TITLE = 0x00000002L + PIDSI_SUBJECT = 0x00000003L + PIDSI_AUTHOR = 0x00000004L + PIDSI_KEYWORDS = 0x00000005L + PIDSI_COMMENTS = 0x00000006L + PIDSI_TEMPLATE = 0x00000007L + PIDSI_LASTAUTHOR = 0x00000008L + PIDSI_REVNUMBER = 0x00000009L + PIDSI_EDITTIME = 0x0000000aL + PIDSI_LASTPRINTED = 0x0000000bL + PIDSI_CREATE_DTM = 0x0000000cL + PIDSI_LASTSAVE_DTM = 0x0000000dL + PIDSI_PAGECOUNT = 0x0000000eL + PIDSI_WORDCOUNT = 0x0000000fL + PIDSI_CHARCOUNT = 0x00000010L + PIDSI_THUMBNAIL = 0x00000011L + PIDSI_APPNAME = 0x00000012L + PIDSI_DOC_SECURITY = 0x00000013L + PIDDSI_CATEGORY = 0x00000002 + PIDDSI_PRESFORMAT = 0x00000003 + PIDDSI_BYTECOUNT = 0x00000004 + PIDDSI_LINECOUNT = 0x00000005 + PIDDSI_PARCOUNT = 0x00000006 + PIDDSI_SLIDECOUNT = 0x00000007 + PIDDSI_NOTECOUNT = 0x00000008 + PIDDSI_HIDDENCOUNT = 0x00000009 + PIDDSI_MMCLIPCOUNT = 0x0000000A + PIDDSI_SCALE = 0x0000000B + PIDDSI_HEADINGPAIR = 0x0000000C + PIDDSI_DOCPARTS = 0x0000000D + PIDDSI_MANAGER = 0x0000000E + PIDDSI_COMPANY = 0x0000000F + PIDDSI_LINKSDIRTY = 0x00000010 + PIDMSI_EDITOR = 0x00000002L + PIDMSI_SUPPLIER = 0x00000003L + PIDMSI_SOURCE = 0x00000004L + PIDMSI_SEQUENCE_NO = 0x00000005L + PIDMSI_PROJECT = 0x00000006L + PIDMSI_STATUS = 0x00000007L + PIDMSI_OWNER = 0x00000008L + PIDMSI_RATING = 0x00000009L + PIDMSI_PRODUCTION = 0x0000000AL + PIDMSI_COPYRIGHT = 0x0000000BL + PRSPEC_INVALID = ( (-1) ) + PRSPEC_LPWSTR = ( 0 ) + PRSPEC_PROPID = ( 1 ) + # From ShObjIdl.h + SHCIDS_ALLFIELDS = (-2147483648) + SHCIDS_CANONICALONLY = 0x10000000L + SHCIDS_BITMASK = (-65536) + SHCIDS_COLUMNMASK = 0x0000FFFFL + SFGAO_CANMONIKER = 0x00400000L + SFGAO_HASSTORAGE = 0x00400000L + SFGAO_STREAM = 0x00400000L + SFGAO_STORAGEANCESTOR = 0x00800000L + SFGAO_STORAGECAPMASK = 0x70C50008L + + MAXPROPPAGES = 100 + PSP_DEFAULT = 0x00000000 + PSP_DLGINDIRECT = 0x00000001 + PSP_USEHICON = 0x00000002 + PSP_USEICONID = 0x00000004 + PSP_USETITLE = 0x00000008 + PSP_RTLREADING = 0x00000010 + PSP_HASHELP = 0x00000020 + PSP_USEREFPARENT = 0x00000040 + PSP_USECALLBACK = 0x00000080 + PSP_PREMATURE = 0x00000400 + PSP_HIDEHEADER = 0x00000800 + PSP_USEHEADERTITLE = 0x00001000 + PSP_USEHEADERSUBTITLE = 0x00002000 + PSP_USEFUSIONCONTEXT = 0x00004000 + PSPCB_ADDREF = 0 + PSPCB_RELEASE = 1 + PSPCB_CREATE = 2 + + PSH_DEFAULT = 0x00000000 + PSH_PROPTITLE = 0x00000001 + PSH_USEHICON = 0x00000002 + PSH_USEICONID = 0x00000004 + PSH_PROPSHEETPAGE = 0x00000008 + PSH_WIZARDHASFINISH = 0x00000010 + PSH_WIZARD = 0x00000020 + PSH_USEPSTARTPAGE = 0x00000040 + PSH_NOAPPLYNOW = 0x00000080 + PSH_USECALLBACK = 0x00000100 + PSH_HASHELP = 0x00000200 + PSH_MODELESS = 0x00000400 + PSH_RTLREADING = 0x00000800 + PSH_WIZARDCONTEXTHELP = 0x00001000 + PSH_WIZARD97 = 0x00002000 + PSH_WIZARD97 = 0x01000000 + PSH_WATERMARK = 0x00008000 + PSH_USEHBMWATERMARK = 0x00010000 + PSH_USEHPLWATERMARK = 0x00020000 + PSH_STRETCHWATERMARK = 0x00040000 + PSH_HEADER = 0x00080000 + PSH_USEHBMHEADER = 0x00100000 + PSH_USEPAGELANG = 0x00200000 + PSH_WIZARD_LITE = 0x00400000 + PSH_NOCONTEXTHELP = 0x02000000 + + PSCB_INITIALIZED = 1 + PSCB_PRECREATE = 2 + PSCB_BUTTONPRESSED = 3 + PSNRET_NOERROR = 0 + PSNRET_INVALID = 1 + PSNRET_INVALID_NOCHANGEPAGE = 2 + PSNRET_MESSAGEHANDLED = 3 + + PSWIZB_BACK = 0x00000001 + PSWIZB_NEXT = 0x00000002 + PSWIZB_FINISH = 0x00000004 + PSWIZB_DISABLEDFINISH = 0x00000008 + PSBTN_BACK = 0 + PSBTN_NEXT = 1 + PSBTN_FINISH = 2 + PSBTN_OK = 3 + PSBTN_APPLYNOW = 4 + PSBTN_CANCEL = 5 + PSBTN_HELP = 6 + PSBTN_MAX = 6 + + ID_PSRESTARTWINDOWS = 0x2 + ID_PSREBOOTSYSTEM = (ID_PSRESTARTWINDOWS | 0x1) + WIZ_CXDLG = 276 + WIZ_CYDLG = 140 + WIZ_CXBMP = 80 + WIZ_BODYX = 92 + WIZ_BODYCX = 184 + PROP_SM_CXDLG = 212 + PROP_SM_CYDLG = 188 + PROP_MED_CXDLG = 227 + PROP_MED_CYDLG = 215 + PROP_LG_CXDLG = 252 + PROP_LG_CYDLG = 218 + ISOLATION_AWARE_USE_STATIC_LIBRARY = 0 + ISOLATION_AWARE_BUILD_STATIC_LIBRARY = 0 + + SHCOLSTATE_TYPE_STR = 0x1 + SHCOLSTATE_TYPE_INT = 0x2 + SHCOLSTATE_TYPE_DATE = 0x3 + SHCOLSTATE_TYPEMASK = 0xf + SHCOLSTATE_ONBYDEFAULT = 0x10 + SHCOLSTATE_SLOW = 0x20 + SHCOLSTATE_EXTENDED = 0x40 + SHCOLSTATE_SECONDARYUI = 0x80 + SHCOLSTATE_HIDDEN = 0x100 + SHCOLSTATE_PREFER_VARCMP = 0x200 + + FWF_AUTOARRANGE = 0x1 + FWF_ABBREVIATEDNAMES = 0x2 + FWF_SNAPTOGRID = 0x4 + FWF_OWNERDATA = 0x8 + FWF_BESTFITWINDOW = 0x10 + FWF_DESKTOP = 0x20 + FWF_SINGLESEL = 0x40 + FWF_NOSUBFOLDERS = 0x80 + FWF_TRANSPARENT = 0x100 + FWF_NOCLIENTEDGE = 0x200 + FWF_NOSCROLL = 0x400 + FWF_ALIGNLEFT = 0x800 + FWF_NOICONS = 0x1000 + FWF_SHOWSELALWAYS = 0x2000 + FWF_NOVISIBLE = 0x4000 + FWF_SINGLECLICKACTIVATE = 0x8000 + FWF_NOWEBVIEW = 0x10000 + FWF_HIDEFILENAMES = 0x20000 + FWF_CHECKSELECT = 0x40000 + + FVM_FIRST = 1 + FVM_ICON = 1 + FVM_SMALLICON = 2 + FVM_LIST = 3 + FVM_DETAILS = 4 + FVM_THUMBNAIL = 5 + FVM_TILE = 6 + FVM_THUMBSTRIP = 7 |
|
From: <mha...@us...> - 2003-11-06 06:12:19
|
Update of /cvsroot/pywin32/pywin32/com/win32comext/shell/demos/servers
In directory sc8-pr-cvs1:/tmp/cvs-serv762
Added Files:
column_provider.py
Log Message:
A sample shell column provider.
--- NEW FILE: column_provider.py ---
# A sample shell column provider
# Mainly ported from MSDN article:
# Using Shell Column Handlers for Detailed File Information,
# Raymond Chen, Microsoft Corporation, February 2000
#
# To demostrate:
# * Execute this script to register the namespace.
# * Open Windows Explorer
# * Right-click an explorer column header - select "More"
# * Locate column 'pyc size' or 'pyo size', and add it to the view.
# This handler is providing that column data.
import sys, os, stat
import pythoncom
from win32com.shell import shell, shellcon
import commctrl
import winerror
from win32com.server.util import wrap
from pywintypes import IID
IPersist_Methods = ["GetClassID"]
IColumnProvider_Methods = IPersist_Methods + \
["Initialize", "GetColumnInfo", "GetItemData"]
class ColumnProvider:
_reg_progid_ = "Python.ShellExtension.ColumnProvider"
_reg_desc_ = "Python Sample Shell Extension (Column Provider)"
_reg_clsid_ = IID("{0F14101A-E05E-4070-BD54-83DFA58C3D68}")
_com_interfaces_ = [pythoncom.IID_IPersist,
shell.IID_IColumnProvider,
]
_public_methods_ = IColumnProvider_Methods
# IPersist
def GetClassID(self):
return self._reg_clsid_
# IColumnProvider
def Initialize(self, colInit):
flags, reserved, name = colInit
print "ColumnProvider initializing for file", name
def GetColumnInfo(self, index):
# We support exactly 2 columns - 'pyc size' and 'pyo size'
if index in [0,1]:
# As per the MSDN sample, use our CLSID as the fmtid
if index==0:
ext = ".pyc"
else:
ext = ".pyo"
title = ext + " size"
description = "Size of compiled %s file" % ext
col_id = (self._reg_clsid_, # fmtid
index) # pid
col_info = (
col_id, # scid
pythoncom.VT_I4, # vt
commctrl.LVCFMT_RIGHT, # fmt
20, #cChars
shellcon.SHCOLSTATE_TYPE_INT | \
shellcon.SHCOLSTATE_SECONDARYUI, # csFlags
title,
description)
return col_info
return None # Indicate no more columns.
def GetItemData(self, colid, colData):
fmt_id, pid = colid
fmt_id==self._reg_clsid_
flags, attr, reserved, ext, name = colData
if ext.lower() not in [".py", ".pyw"]:
return None
if pid==0:
ext = ".pyc"
else:
ext = ".pyo"
check_file = os.path.splitext(name)[0] + ext
try:
st = os.stat(check_file)
return st[stat.ST_SIZE]
except OSError:
# No file
return None
def DllRegisterServer():
import _winreg
# Special ColumnProvider key
key = _winreg.CreateKey(_winreg.HKEY_CLASSES_ROOT,
"Folder\\ShellEx\\ColumnHandlers\\" + \
str(ColumnProvider._reg_clsid_ ))
_winreg.SetValueEx(key, None, 0, _winreg.REG_SZ, ColumnProvider._reg_desc_)
print ColumnProvider._reg_desc_, "registration complete."
def DllUnregisterServer():
import _winreg
try:
key = _winreg.DeleteKey(_winreg.HKEY_CLASSES_ROOT,
"Folder\\ShellEx\\ColumnHandlers\\" + \
str(ColumnProvider._reg_clsid_) )
except WindowsError, details:
import errno
if details.errno != errno.ENOENT:
raise
print ColumnProvider._reg_desc_, "unregistration complete."
if __name__=='__main__':
from win32com.server import register
register.UseCommandLine(ColumnProvider,
finalize_register = DllRegisterServer,
finalize_unregister = DllUnregisterServer)
|
|
From: <mha...@us...> - 2003-11-06 06:12:03
|
Update of /cvsroot/pywin32/pywin32/com/win32comext/shell/demos/servers
In directory sc8-pr-cvs1:/tmp/cvs-serv679
Modified Files:
shell_view.py
Log Message:
Remove a debugging print.
Index: shell_view.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/shell/demos/servers/shell_view.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** shell_view.py 8 Oct 2003 23:33:19 -0000 1.1
--- shell_view.py 6 Nov 2003 06:11:51 -0000 1.2
***************
*** 97,101 ****
attr = shellcon.SFGAO_FOLDER | shellcon.SFGAO_HASSUBFOLDER | \
shellcon.SFGAO_BROWSABLE
- print attr
import struct
s = struct.pack("I", attr)
--- 97,100 ----
|
|
From: <mha...@us...> - 2003-11-05 22:05:31
|
Update of /cvsroot/pywin32/pywin32/com/win32comext/axscript/src
In directory sc8-pr-cvs1:/tmp/cvs-serv15274/src
Modified Files:
PyGActiveScript.cpp PyGActiveScriptParse.cpp
PyGActiveScriptSite.cpp PyIActiveScript.cpp
PyIActiveScriptParse.cpp PyIActiveScriptSite.cpp stdafx.cpp
stdafx.h
Log Message:
Remove all the ATL auto-conversion code.
Index: PyGActiveScript.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/axscript/src/PyGActiveScript.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** PyGActiveScript.cpp 19 Nov 1999 04:17:02 -0000 1.3
--- PyGActiveScript.cpp 5 Nov 2003 22:05:25 -0000 1.4
***************
*** 72,79 ****
{
PY_GATEWAY_METHOD;
! USES_CONVERSION;
return InvokeViaPolicy( "AddNamedItem", NULL,
! "si",
! OLE2CT(pstrName),
dwFlags);
}
--- 72,79 ----
{
PY_GATEWAY_METHOD;
! PyObject *obName = PyWinObject_FromOLECHAR(pstrName);
return InvokeViaPolicy( "AddNamedItem", NULL,
! "Ni",
! obName,
dwFlags);
}
***************
*** 101,105 ****
return E_POINTER;
PY_GATEWAY_METHOD;
- USES_CONVERSION;
*ppdisp = NULL;
PyObject *result = NULL;
--- 101,104 ----
Index: PyGActiveScriptParse.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/axscript/src/PyGActiveScriptParse.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** PyGActiveScriptParse.cpp 1 Jun 2002 02:27:18 -0000 1.3
--- PyGActiveScriptParse.cpp 5 Nov 2003 22:05:25 -0000 1.4
***************
*** 32,55 ****
{
PY_GATEWAY_METHOD;
! USES_CONVERSION;
PyObject *result;
HRESULT hr = InvokeGatewayViaPolicy(this, "AddScriptlet", pexcepinfo, &result,
! "ssssssii",
! OLE2CT(pstrDefaultName),
! OLE2CT(pstrCode),
! OLE2CT(pstrItemName),
! OLE2CT(pstrSubItemName),
! OLE2CT(pstrEventName),
! OLE2CT(pstrDelimiter),
dwSourceContextCookie,
ulStartingLineNumber);
if (FAILED(hr)) return hr;
! if (result && PyString_Check(result)) {
! *pbstrName = A2BSTR(PyString_AS_STRING((PyStringObject*)result));
! }
! Py_DECREF(result);
! return S_OK;
}
!
STDMETHODIMP PyGActiveScriptParse::ParseScriptText(
/* [in] */ LPCOLESTR pstrCode,
--- 32,58 ----
{
PY_GATEWAY_METHOD;
! PyObject *obDefaultName = PyWinObject_FromOLECHAR(pstrDefaultName);
! PyObject *obCode = PyWinObject_FromOLECHAR(pstrCode);
! PyObject *obItemName = PyWinObject_FromOLECHAR(pstrItemName);
! PyObject *obSubItemName = PyWinObject_FromOLECHAR(pstrSubItemName);
! PyObject *obEventName = PyWinObject_FromOLECHAR(pstrEventName);
! PyObject *obDelimiter = PyWinObject_FromOLECHAR(pstrDelimiter);
PyObject *result;
HRESULT hr = InvokeGatewayViaPolicy(this, "AddScriptlet", pexcepinfo, &result,
! "NNNNNNii",
! obDefaultName,
! obCode,
! obItemName,
! obSubItemName,
! obEventName,
! obDelimiter,
dwSourceContextCookie,
ulStartingLineNumber);
if (FAILED(hr)) return hr;
! PyWinObject_AsBstr(result, pbstrName, FALSE);
! Py_XDECREF(result);
! return PyCom_HandlePythonFailureToCOM(/*pexcepinfo*/);
}
!
STDMETHODIMP PyGActiveScriptParse::ParseScriptText(
/* [in] */ LPCOLESTR pstrCode,
***************
*** 64,68 ****
{
PY_GATEWAY_METHOD;
- USES_CONVERSION;
PyObject *context = PyCom_PyObjectFromIUnknown(punkContext, IID_IUnknown, TRUE);
if (context==NULL) {
--- 67,70 ----
***************
*** 72,82 ****
PyObject *result = NULL;
BOOL bWantResult = pvarResult!=NULL;
HRESULT hr = InvokeGatewayViaPolicy(this, "ParseScriptText", pexcepinfo, &result,
! "ssOsiiii",
! OLE2CT(pstrCode),
! OLE2CT(pstrItemName),
context,
! OLE2CT(pstrDelimiter),
dwSourceContextCookie,
ulStartingLineNumber,
--- 74,87 ----
PyObject *result = NULL;
BOOL bWantResult = pvarResult!=NULL;
+ PyObject *obCode = PyWinObject_FromOLECHAR(pstrCode);
+ PyObject *obItemName = PyWinObject_FromOLECHAR(pstrItemName);
+ PyObject *obDelimiter = PyWinObject_FromOLECHAR(pstrDelimiter);
HRESULT hr = InvokeGatewayViaPolicy(this, "ParseScriptText", pexcepinfo, &result,
! "NNONiiii",
! obCode,
! obItemName,
context,
! obDelimiter,
dwSourceContextCookie,
ulStartingLineNumber,
Index: PyGActiveScriptSite.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/axscript/src/PyGActiveScriptSite.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** PyGActiveScriptSite.cpp 1 Sep 1999 23:12:46 -0000 1.1
--- PyGActiveScriptSite.cpp 5 Nov 2003 22:05:25 -0000 1.2
***************
*** 30,38 ****
return E_POINTER;
- USES_CONVERSION;
PyObject *result;
HRESULT hr = InvokeViaPolicy("GetItemInfo", &result,
! "zi",
! OLE2A(pstrName),
(int)dwReturnMask);
if (FAILED(hr))
--- 30,38 ----
return E_POINTER;
PyObject *result;
+ PyObject *obName = PyWinObject_FromOLECHAR(pstrName);
HRESULT hr = InvokeViaPolicy("GetItemInfo", &result,
! "Ni",
! obName,
(int)dwReturnMask);
if (FAILED(hr))
***************
*** 105,119 ****
if (FAILED(hr))
return hr;
!
! if ( !PyString_Check(result) )
! {
! Py_DECREF(result);
! return E_NOTIMPL;
! }
!
! USES_CONVERSION;
! *pbstrVersion = A2BSTR(PyString_AS_STRING((PyStringObject *)result));
! Py_DECREF(result);
! return hr;
}
--- 105,111 ----
if (FAILED(hr))
return hr;
! PyWinObject_AsBstr(result, pbstrVersion, FALSE);
! Py_XDECREF(result);
! return PyCom_HandlePythonFailureToCOM(/*pexcepinfo*/);
}
Index: PyIActiveScript.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/axscript/src/PyIActiveScript.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** PyIActiveScript.cpp 1 Sep 1999 23:12:46 -0000 1.1
--- PyIActiveScript.cpp 5 Nov 2003 22:05:25 -0000 1.2
***************
*** 145,161 ****
{
PY_INTERFACE_METHOD;
! const char *pstrName;
int flags;
- if ( !PyArg_ParseTuple(args, "si:AddNamedItem", &pstrName, &flags) )
- return NULL;
-
IActiveScript *pIAS = GetI(self);
if ( pIAS == NULL )
return NULL;
!
! USES_CONVERSION;
PY_INTERFACE_PRECALL;
! HRESULT hr = pIAS->AddNamedItem(A2OLE(pstrName), (DWORD)flags);
PY_INTERFACE_POSTCALL;
if ( FAILED(hr) )
return SetPythonCOMError(self, hr);
--- 145,162 ----
{
PY_INTERFACE_METHOD;
! PyObject *obName;
int flags;
IActiveScript *pIAS = GetI(self);
if ( pIAS == NULL )
return NULL;
! if ( !PyArg_ParseTuple(args, "Oi:AddNamedItem", &obName, &flags) )
! return NULL;
! OLECHAR *name;
! if (!PyWinObject_AsWCHAR(obName, &name))
! return NULL;
PY_INTERFACE_PRECALL;
! HRESULT hr = pIAS->AddNamedItem(name, (DWORD)flags);
PY_INTERFACE_POSTCALL;
+ PyWinObject_FreeWCHAR(name);
if ( FAILED(hr) )
return SetPythonCOMError(self, hr);
***************
*** 208,212 ****
return NULL;
- USES_CONVERSION;
IDispatch *pdisp;
PY_INTERFACE_PRECALL;
--- 209,212 ----
Index: PyIActiveScriptParse.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/axscript/src/PyIActiveScriptParse.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** PyIActiveScriptParse.cpp 19 Nov 1999 04:17:02 -0000 1.2
--- PyIActiveScriptParse.cpp 5 Nov 2003 22:05:25 -0000 1.3
***************
*** 37,76 ****
/* static */ PyObject *PyIActiveScriptParse::AddScriptlet(PyObject *self, PyObject *args)
{
! const char *defaultName;
! const char *code;
! const char *itemName;
! const char *subItemName;
! const char *eventName;
! const char *delimiter;
int sourceContextCookie;
int startingLineNumber;
int flags;
! if ( !PyArg_ParseTuple(args, "zsszsziii:AddScriptlet",
! &defaultName,
! &code,
! &itemName,
! &subItemName,
! &eventName,
! &delimiter,
&sourceContextCookie,
&startingLineNumber,
&flags) )
return NULL;
-
- IActiveScriptParse *pIASP = GetI(self);
- if ( pIASP == NULL )
- return NULL;
-
- USES_CONVERSION;
BSTR bstrName;
EXCEPINFO excepInfo;
memset(&excepInfo, 0, sizeof excepInfo);
PY_INTERFACE_PRECALL;
! HRESULT hr = pIASP->AddScriptlet(A2OLE(defaultName),
! A2OLE(code),
! A2OLE(itemName),
! A2OLE(subItemName),
! A2OLE(eventName),
! A2OLE(delimiter),
(DWORD)sourceContextCookie,
(ULONG)startingLineNumber,
--- 37,90 ----
/* static */ PyObject *PyIActiveScriptParse::AddScriptlet(PyObject *self, PyObject *args)
{
! HRESULT hr;
! PyObject *ret = NULL;
! PyObject *obDefaultName, *obCode, *obItemName, *obSubItemName,
! *obEventName, *obDelimiter;
int sourceContextCookie;
int startingLineNumber;
int flags;
! IActiveScriptParse *pIASP = GetI(self);
! if ( pIASP == NULL )
! return NULL;
! if ( !PyArg_ParseTuple(args, "OOOOOOiii:AddScriptlet",
! &obDefaultName,
! &obCode,
! &obItemName,
! &obSubItemName,
! &obEventName,
! &obDelimiter,
&sourceContextCookie,
&startingLineNumber,
&flags) )
return NULL;
BSTR bstrName;
EXCEPINFO excepInfo;
memset(&excepInfo, 0, sizeof excepInfo);
+ WCHAR *defaultName = NULL,
+ *code = NULL,
+ *itemName = NULL,
+ *subItemName = NULL,
+ *eventName = NULL,
+ *delimiter = NULL;
+ if (!PyWinObject_AsWCHAR(obDefaultName, &defaultName, TRUE))
+ goto done;
+ if (!PyWinObject_AsWCHAR(obCode, &code, FALSE))
+ goto done;
+ if (!PyWinObject_AsWCHAR(obItemName, &itemName, FALSE))
+ goto done;
+ if (!PyWinObject_AsWCHAR(obSubItemName, &subItemName, TRUE))
+ goto done;
+ if (!PyWinObject_AsWCHAR(obEventName, &eventName, FALSE))
+ goto done;
+ if (!PyWinObject_AsWCHAR(obDelimiter, &delimiter, TRUE))
+ goto done;
+ {
PY_INTERFACE_PRECALL;
! hr = pIASP->AddScriptlet(defaultName,
! code,
! itemName,
! subItemName,
! eventName,
! delimiter,
(DWORD)sourceContextCookie,
(ULONG)startingLineNumber,
***************
*** 79,94 ****
&excepInfo);
PY_INTERFACE_POSTCALL;
! if ( FAILED(hr) )
! return PyCom_BuildPyExceptionFromEXCEPINFO(hr, &excepInfo);
!
! return MakeBstrToObj(bstrName);
}
/* static */ PyObject *PyIActiveScriptParse::ParseScriptText(PyObject *self, PyObject *args)
{
! const char *code;
! const char *itemName;
PyObject *obContext;
! const char *delimiter;
int sourceContextCookie;
int startingLineNumber;
--- 93,120 ----
&excepInfo);
PY_INTERFACE_POSTCALL;
! }
! if ( FAILED(hr) ) {
! PyCom_BuildPyExceptionFromEXCEPINFO(hr, &excepInfo);
! goto done;
! }
! ret = MakeBstrToObj(bstrName);
! done:
! PyWinObject_FreeWCHAR(defaultName);
! PyWinObject_FreeWCHAR(code);
! PyWinObject_FreeWCHAR(itemName);
! PyWinObject_FreeWCHAR(subItemName);
! PyWinObject_FreeWCHAR(eventName);
! PyWinObject_FreeWCHAR(delimiter);
! return ret;
}
/* static */ PyObject *PyIActiveScriptParse::ParseScriptText(PyObject *self, PyObject *args)
{
! PyObject *result = NULL;
! PyObject *obCode, *obItemName, *obDelimiter;
! WCHAR *code = NULL;
! WCHAR *itemName = NULL;
PyObject *obContext;
! WCHAR *delimiter = NULL;
int sourceContextCookie;
int startingLineNumber;
***************
*** 97,106 ****
// it looks at the flags for a reasonable default. If specified
// the flag is not used at all.
! BOOL bWantResult = -1;
! if ( !PyArg_ParseTuple(args, "szOziii|i:ParseScriptText",
! &code,
! &itemName,
&obContext,
! &delimiter,
&sourceContextCookie,
&startingLineNumber,
--- 123,135 ----
// it looks at the flags for a reasonable default. If specified
// the flag is not used at all.
! BOOL bWantResult = (BOOL)-1;
! IActiveScriptParse *pIASP = GetI(self);
! if ( pIASP == NULL )
! return NULL;
! if ( !PyArg_ParseTuple(args, "OOOOiii|i:ParseScriptText",
! &obCode,
! &obItemName,
&obContext,
! &obDelimiter,
&sourceContextCookie,
&startingLineNumber,
***************
*** 108,119 ****
&bWantResult) )
return NULL;
if (bWantResult==-1)
bWantResult = (flags & SCRIPTTEXT_ISEXPRESSION) != 0;
-
- IActiveScriptParse *pIASP = GetI(self);
- if ( pIASP == NULL )
- return NULL;
-
- IUnknown *punkContext = NULL;
if ( obContext != Py_None )
{
--- 137,155 ----
&bWantResult) )
return NULL;
+ IUnknown *punkContext = NULL;
+ VARIANT *pResult = NULL;
+ VARIANT varResult;
+ EXCEPINFO excepInfo;
+ memset(&excepInfo, 0, sizeof excepInfo);
+ HRESULT hr ;
+ if (!PyWinObject_AsWCHAR(obCode, &code, FALSE))
+ goto done;
+ if (!PyWinObject_AsWCHAR(obItemName, &itemName, TRUE))
+ goto done;
+ if (!PyWinObject_AsWCHAR(obDelimiter, &delimiter, TRUE))
+ goto done;
+
if (bWantResult==-1)
bWantResult = (flags & SCRIPTTEXT_ISEXPRESSION) != 0;
if ( obContext != Py_None )
{
***************
*** 121,147 ****
{
PyErr_SetString(PyExc_ValueError, "argument is not a PyIUnknown");
! return NULL;
}
punkContext = PyIUnknown::GetI(obContext);
if ( !punkContext )
! return NULL;
/* note: we don't explicitly hold a reference to punkContext */
}
-
- USES_CONVERSION;
- VARIANT *pResult = NULL;
- VARIANT varResult;
if (bWantResult) {
pResult = &varResult;
VariantInit(&varResult);
}
!
! EXCEPINFO excepInfo;
! memset(&excepInfo, 0, sizeof excepInfo);
PY_INTERFACE_PRECALL;
! HRESULT hr = pIASP->ParseScriptText(A2OLE(code),
! A2OLE(itemName),
punkContext,
! A2OLE(delimiter),
(DWORD)sourceContextCookie,
(ULONG)startingLineNumber,
--- 157,177 ----
{
PyErr_SetString(PyExc_ValueError, "argument is not a PyIUnknown");
! goto done;
}
punkContext = PyIUnknown::GetI(obContext);
if ( !punkContext )
! goto done;
/* note: we don't explicitly hold a reference to punkContext */
}
if (bWantResult) {
pResult = &varResult;
VariantInit(&varResult);
}
! {
PY_INTERFACE_PRECALL;
! hr = pIASP->ParseScriptText(code,
! itemName,
punkContext,
! delimiter,
(DWORD)sourceContextCookie,
(ULONG)startingLineNumber,
***************
*** 150,164 ****
&excepInfo);
PY_INTERFACE_POSTCALL;
! if ( FAILED(hr) )
! return PyCom_BuildPyExceptionFromEXCEPINFO(hr, &excepInfo);
if (bWantResult) {
! PyObject *result = PyCom_PyObjectFromVariant(&varResult);
VariantClear(&varResult);
- return result;
} else {
Py_INCREF(Py_None);
! return Py_None;
}
}
--- 180,201 ----
&excepInfo);
PY_INTERFACE_POSTCALL;
! }
! if ( FAILED(hr) ) {
! PyCom_BuildPyExceptionFromEXCEPINFO(hr, &excepInfo);
! goto done;
! }
if (bWantResult) {
! result = PyCom_PyObjectFromVariant(&varResult);
VariantClear(&varResult);
} else {
Py_INCREF(Py_None);
! result = Py_None;
}
+ done:
+ PyWinObject_FreeWCHAR(code);
+ PyWinObject_FreeWCHAR(itemName);
+ PyWinObject_FreeWCHAR(delimiter);
+ return result;
}
Index: PyIActiveScriptSite.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/axscript/src/PyIActiveScriptSite.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** PyIActiveScriptSite.cpp 1 Jun 2002 02:27:42 -0000 1.3
--- PyIActiveScriptSite.cpp 5 Nov 2003 22:05:25 -0000 1.4
***************
*** 43,61 ****
{
PY_INTERFACE_METHOD;
! USES_CONVERSION;
! const char *name;
int mask;
- if (!PyArg_ParseTuple(args, "si:GetItemInfo", &name, &mask))
- return NULL;
-
IActiveScriptSite *pMySite = GetI(self);
if (pMySite==NULL) return NULL;
!
IUnknown *punk = NULL;
ITypeInfo *ptype = NULL;
PY_INTERFACE_PRECALL;
! SCODE sc = pMySite->GetItemInfo(T2COLE(name), mask, &punk, &ptype);
PY_INTERFACE_POSTCALL;
if (FAILED(sc))
return SetPythonCOMError(self, sc);
--- 43,62 ----
{
PY_INTERFACE_METHOD;
! PyObject *obName;
int mask;
IActiveScriptSite *pMySite = GetI(self);
if (pMySite==NULL) return NULL;
! if (!PyArg_ParseTuple(args, "Oi:GetItemInfo", &obName, &mask))
! return NULL;
! OLECHAR *name;
! if (!PyWinObject_AsWCHAR(obName, &name))
! return NULL;
IUnknown *punk = NULL;
ITypeInfo *ptype = NULL;
PY_INTERFACE_PRECALL;
! SCODE sc = pMySite->GetItemInfo(name, mask, &punk, &ptype);
PY_INTERFACE_POSTCALL;
+ PyWinObject_FreeWCHAR(name);
if (FAILED(sc))
return SetPythonCOMError(self, sc);
Index: stdafx.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/axscript/src/stdafx.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** stdafx.cpp 1 Sep 1999 23:12:46 -0000 1.1
--- stdafx.cpp 5 Nov 2003 22:05:25 -0000 1.2
***************
*** 2,7 ****
#include "stdafx.h"
-
- #if _ATL_VER >= 0x0200
- # include <atlconv.cpp>
- #endif
--- 2,3 ----
Index: stdafx.h
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/axscript/src/stdafx.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** stdafx.h 1 Sep 1999 23:12:46 -0000 1.1
--- stdafx.h 5 Nov 2003 22:05:25 -0000 1.2
***************
*** 6,33 ****
#include <limits.h>
#include <Python.h>
// Must come after Python headers.
! #include <atlbase.h>
#include "PythonCOM.h"
#include "PythonCOMServer.h"
- #if _ATL_VER < 0x0200
- typedef EXCEPINFO UserEXCEPINFO;
- typedef VARIANT UserVARIANT;
- typedef BSTR UserBSTR;
- #endif
-
// NOTE - The standard "activscp.h" header is not good enough -
// need to use the IE4 SDK or MSVC6 etc.
#include "activscp.h"
#include "objsafe.h"
-
- #if _ATL_VER < 0x0200
- # include "datapath.h"
- #endif
-
- #include "multinfo.h"
#include "AXScript.h"
--- 6,29 ----
#include <limits.h>
+ #if defined(MAINWIN) && defined(_POSIX_C_SOURCE)
+ # undef _POSIX_C_SOURCE
+ #endif
+
#include <Python.h>
+ #ifndef MS_WINCE // win32 wont need that soon?
// Must come after Python headers.
! #include <windows.h>
! #endif
!
! #include <Python.h>
#include "PythonCOM.h"
#include "PythonCOMServer.h"
// NOTE - The standard "activscp.h" header is not good enough -
// need to use the IE4 SDK or MSVC6 etc.
#include "activscp.h"
#include "objsafe.h"
#include "AXScript.h"
|
|
From: <th...@us...> - 2003-11-05 21:30:07
|
Update of /cvsroot/pywin32/pywin32
In directory sc8-pr-cvs1:/tmp/cvs-serv3209
Modified Files:
setup_win32all_core.py
Log Message:
There is a chance for distutils, even in the win32all build process!
This encourages me to further work on this script.
The specialized code for pywintypes and pythoncom should be clearer
now, at least to me. Unfortunately, I broke mingw32 support.
But even before this, I get compilation errors with mingw. An example:
win32/src/PyACL.cpp: In function `BOOL _ReorderACL(_ACL*)':
win32/src/PyACL.cpp:89: `ACCESS_DENIED_OBJECT_ACE_TYPE' undeclared (first use
this function)
win32/src/PyACL.cpp:89: (Each undeclared identifier is reported only once for
each function it appears in.)
error: command 'gcc' failed with exit status 1
If someone tells me how this can be fixed I'll happy to also bring
this up to date for mingw.
swig is now supported (.i sources are parsed out of the dsp files),
and I can at least build
pywintypes, win32api, win32file, win32event, pythoncom.
Whether they work or not - I cannot currently tell.
install_lib does no longer work, requires rethought:
Some files should be installed in the normal way, others go into sysdir.
Index: setup_win32all_core.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/setup_win32all_core.py,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** setup_win32all_core.py 22 Aug 2003 19:58:27 -0000 1.5
--- setup_win32all_core.py 5 Nov 2003 21:10:27 -0000 1.6
***************
*** 8,11 ****
--- 8,12 ----
from distutils.command.build_ext import build_ext
from distutils.dep_util import newer_group
+ from distutils import log
import os, string, sys
***************
*** 33,37 ****
include_dirs = ['com/win32com/src/include',
'win32/src'] + include_dirs
! libraries = ['user32', 'odbc32', 'advapi32',
'oleaut32', 'ole32', 'shell32'] + libraries
--- 34,38 ----
include_dirs = ['com/win32com/src/include',
'win32/src'] + include_dirs
! libraries = ['user32', 'odbc32', 'advapi32', 'version',
'oleaut32', 'ole32', 'shell32'] + libraries
***************
*** 74,78 ****
fields = line.strip().split("=", 2)
if fields[0]=="SOURCE":
! if os.path.splitext(fields[1])[1].lower() in ['.cpp', '.c']:
pathname = os.path.normpath(os.path.join(dsp_path, fields[1]))
result.append(pathname)
--- 75,79 ----
fields = line.strip().split("=", 2)
if fields[0]=="SOURCE":
! if os.path.splitext(fields[1])[1].lower() in ['.cpp', '.c', '.i']:
pathname = os.path.normpath(os.path.join(dsp_path, fields[1]))
result.append(pathname)
***************
*** 81,116 ****
################################################################
- pywintypes = WinExt('pywintypes',
- dsp_file = r"win32\PyWinTypes.dsp",
- extra_compile_args = ['-DBUILD_PYWINTYPES']
- )
-
- pythoncom = WinExt('pythoncom',
- dsp_file=r"com\win32com.dsp",
- export_symbol_file = 'com/win32com/src/PythonCOM.def',
- ## libraries = ['PyWintypes'],
- extra_compile_args = ['-DBUILD_PYTHONCOM'],
- )
-
-
class my_install_lib (install_lib):
# A special install_lib command, which will install into the windows
# system directory instead of Lib/site-packages
def finalize_options(self):
install_lib.finalize_options(self)
self.install_dir = os.getenv("windir") + '\\system32'
- WINVER = tuple(map(int, string.split(sys.winver, '.')))
-
- REGNAMES = {'pywintypes': 'PyWinTypes%d%d' % WINVER,
- 'pythoncom': 'PythonCOM%d%d' % WINVER,
- }
-
-
class my_build_ext(build_ext):
def finalize_options(self):
build_ext.finalize_options(self)
!
self.library_dirs.append(self.build_temp)
self.mingw32 = (self.compiler == "mingw32")
--- 82,100 ----
################################################################
class my_install_lib (install_lib):
# A special install_lib command, which will install into the windows
# system directory instead of Lib/site-packages
+
+ # XXX Currently broken. Should only install pywintypes and pythoncom into sysdir
def finalize_options(self):
install_lib.finalize_options(self)
self.install_dir = os.getenv("windir") + '\\system32'
class my_build_ext(build_ext):
def finalize_options(self):
build_ext.finalize_options(self)
! # The pywintypes library is created in the build_temp
! # directory, so we need to add this to library_dirs
self.library_dirs.append(self.build_temp)
self.mingw32 = (self.compiler == "mingw32")
***************
*** 121,126 ****
# some source files are compiled for different extensions
# with special defines. So we cannot use a shared
! # directory for objects, we must use special ones.
! old_temp = self.build_temp
try:
self.build_temp = os.path.join(self.build_temp, ext.name)
--- 105,110 ----
# some source files are compiled for different extensions
# with special defines. So we cannot use a shared
! # directory for objects, we must use a special one for each extension.
! old_build_temp = self.build_temp
try:
self.build_temp = os.path.join(self.build_temp, ext.name)
***************
*** 128,178 ****
build_ext.build_extension(self, ext)
! # After building an extension with non-standard target filename,
! # copy the .lib-file created to the original name.
! name = REGNAMES.get(ext.name, ext.name)
! from distutils.file_util import copy_file, move_file
! extra = ''
! if self.debug:
! extra = '_d'
! if self.mingw32:
! prefix = 'lib'
! extra = extra + '.a'
! else:
! prefix = ''
! extra = extra + '.lib'
# MSVCCompiler constructs the .lib file in the same directory
# as the first source file's object file:
# os.path.dirname(objects[0])
src = os.path.join(self.build_temp,
os.path.dirname(ext.sources[0]),
! prefix + name + extra)
! dst = os.path.join(self.build_temp, "..", prefix + ext.name + extra)
self.copy_file(src, dst)#, update=1)
finally:
! self.build_temp = old_temp
! def get_libraries(self, ext):
! libs = build_ext.get_libraries(self, ext)
! result = []
! for lib in libs:
! plib = REGNAMES.get(string.lower(lib), None)
! if plib and self.debug:
! plib = plib + '_d'
! if plib:
! result.append(plib)
else:
! result.append(lib)
! return result
! def get_ext_filename(self, name):
! fname = build_ext.get_ext_filename(self, name)
! base, ext = os.path.splitext(fname)
! newbase = REGNAMES.get(name, fname)
! if self.debug:
! return newbase + '_d' + '.dll'
! return newbase + '.dll'
setup(name="PyWinTypes",
--- 112,217 ----
build_ext.build_extension(self, ext)
! if ext.name not in ("pywintypes", "pythoncom"):
! return
!
! # The import libraries are created as PyWinTypes23.lib, but
! # are expected to be pywintypes.lib.
!
! # XXX This has to be changed for mingw32
! extra = self.debug and "_d.lib" or ".lib"
! if ext.name == "pywintypes":
! name1 = "pywintypes%d%d%s" % (sys.version_info[0], sys.version_info[1], extra)
! name2 = "pywintypes%s" % (extra)
! elif ext.name == "pythoncom":
! name1 = "pythoncom%d%d%s" % (sys.version_info[0], sys.version_info[1], extra)
! name2 = "pythoncom%s" % (extra)
# MSVCCompiler constructs the .lib file in the same directory
# as the first source file's object file:
# os.path.dirname(objects[0])
+ # but we want it in the (old) build_temp directory
src = os.path.join(self.build_temp,
os.path.dirname(ext.sources[0]),
! name1)
! dst = os.path.join(old_build_temp, name2)
self.copy_file(src, dst)#, update=1)
finally:
! self.build_temp = old_build_temp
+ def get_ext_filename(self, name):
+ # The pywintypes and pythoncom extensions have special names
+ if name == "pywintypes":
+ extra = self.debug and "_d.dll" or ".dll"
+ return "pywintypes%d%d%s" % (sys.version_info[0], sys.version_info[1], extra)
+ elif name == "pythoncom":
+ extra = self.debug and "_d.dll" or ".dll"
+ return "pythoncom%d%d%s" % (sys.version_info[0], sys.version_info[1], extra)
+ return build_ext.get_ext_filename(self, name)
! def find_swig (self):
! # We know where swig is
! os.environ["SWIG_LIB"] = os.path.abspath(r"swig\swig_lib")
! return os.path.abspath(r"swig\swig.exe")
!
! def swig_sources (self, sources):
! new_sources = []
! swig_sources = []
! swig_targets = {}
! # XXX this drops generated C/C++ files into the source tree, which
! # is fine for developers who want to distribute the generated
! # source -- but there should be an option to put SWIG output in
! # the temp dir.
! target_ext = '.cpp'
! for source in sources:
! (base, ext) = os.path.splitext(source)
! if ext == ".i": # SWIG interface file
! # Seems the files SWIG creates are not compiled separately,
! # they are #included somewhere else. So we don't include
! # the generated wrapper in the new_sources list.
! swig_sources.append(source)
! # and win32all has it's own naming convention for the wrappers:
! swig_targets[source] = base + 'module_win32' + target_ext
else:
! new_sources.append(source)
! if not swig_sources:
! return new_sources
!
! swig = self.find_swig()
! swig_cmd = [swig, "-python"]
! if self.swig_cpp:
! swig_cmd.append("-c++")
!
! for source in swig_sources:
! target = swig_targets[source]
! log.info("swigging %s to %s", source, target)
! self.spawn(swig_cmd + ["-o", target, source])
!
! return new_sources
!
! ################################################################
!
! pywintypes = WinExt('pywintypes',
! dsp_file = r"win32\PyWinTypes.dsp",
! extra_compile_args = ['-DBUILD_PYWINTYPES']
! )
!
! pythoncom = WinExt('pythoncom',
! dsp_file=r"com\win32com.dsp",
! export_symbol_file = 'com/win32com/src/PythonCOM.def',
! extra_compile_args = ['-DBUILD_PYTHONCOM'],
! )
!
! win32api = WinExt('win32api',
! dsp_file = r"win32\win32api.dsp")
!
! win32file = WinExt('win32file',
! dsp_file = r"win32\win32file.dsp")
!
! win32event = WinExt('win32event',
! dsp_file = r"win32\win32event.dsp")
!
! ################################################################
setup(name="PyWinTypes",
***************
*** 185,193 ****
license="???",
! cmdclass = { 'install_lib': my_install_lib,
'build_ext': my_build_ext,
},
! ext_modules = [pywintypes, pythoncom],
## packages=['win32',
--- 224,232 ----
license="???",
! cmdclass = { #'install_lib': my_install_lib,
'build_ext': my_build_ext,
},
! ext_modules = [pywintypes, win32api, win32file, win32event, pythoncom],
## packages=['win32',
***************
*** 229,231 ****
## ],
)
-
--- 268,269 ----
|
|
From: <mha...@us...> - 2003-11-04 00:08:20
|
Update of /cvsroot/pywin32/pywin32/Wise
In directory sc8-pr-cvs1:/tmp/cvs-serv10970
Modified Files:
win32all.wse
Log Message:
New win32all 162/3
Index: win32all.wse
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/win32all.wse,v
retrieving revision 1.36
retrieving revision 1.37
diff -C2 -d -r1.36 -r1.37
*** win32all.wse 26 Oct 2003 04:02:15 -0000 1.36
--- win32all.wse 4 Nov 2003 00:08:17 -0000 1.37
***************
*** 18,22 ****
Patch Threshold=85
Patch Memory=4000
! EXE Filename=win32all-161.exe
Code Sign Name=Python Win32 combined extensions
Code Sign Info=skippinet.com.au
--- 18,22 ----
Patch Threshold=85
Patch Memory=4000
! EXE Filename=win32all-163.exe
Code Sign Name=Python Win32 combined extensions
Code Sign Info=skippinet.com.au
|
|
From: <mha...@us...> - 2003-11-03 22:43:00
|
Update of /cvsroot/pywin32/pywin32/com
In directory sc8-pr-cvs1:/tmp/cvs-serv23694
Modified Files:
Tag: Python23
win32com.dsp
Log Message:
Add PyIEnumSTATPROPSETSTG.* on the 2.3 branch
Index: win32com.dsp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com.dsp,v
retrieving revision 1.22.2.2
retrieving revision 1.22.2.3
diff -C2 -d -r1.22.2.2 -r1.22.2.3
*** win32com.dsp 8 Oct 2003 23:54:16 -0000 1.22.2.2
--- win32com.dsp 3 Nov 2003 22:42:56 -0000 1.22.2.3
***************
*** 5003,5006 ****
--- 5003,5025 ----
# Begin Source File
+ SOURCE=.\win32com\src\extensions\PyIEnumSTATPROPSETSTG.cpp
+
+ !IF "$(CFG)" == "win32com - Win32 Release"
+
+ !ELSEIF "$(CFG)" == "win32com - Win32 Debug"
+
+ !ELSEIF "$(CFG)" == "win32com - Win32 (WCE MIPS) Release"
+
+ !ELSEIF "$(CFG)" == "win32com - Win32 (WCE SH3) Release"
+
+ !ELSEIF "$(CFG)" == "win32com - Win32 (WCE x86em) Debug"
+
+ !ELSEIF "$(CFG)" == "win32com - Win32 (WCE MIPS) Debug"
+
+ !ENDIF
+
+ # End Source File
+ # Begin Source File
+
SOURCE=.\win32com\src\extensions\PyIEnumSTATPROPSTG.cpp
***************
*** 8386,8389 ****
--- 8405,8412 ----
SOURCE=.\win32com\src\include\PyIEnumGUID.h
+ # End Source File
+ # Begin Source File
+
+ SOURCE=.\win32com\src\include\PyIEnumSTATPROPSETSTG.h
# End Source File
# Begin Source File
|