pywin32-checkins Mailing List for Python for Windows Extensions (Page 157)
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: Thomas H. <th...@py...> - 2003-07-28 06:40:58
|
mha...@us... writes: > Update of /cvsroot/pywin32/pywin32/Wise > In directory sc8-pr-cvs1:/tmp/cvs-serv11346 > > Modified Files: > win32all.wse Mark, while you're working on the installer: wouldn't it be a good idea to include at least pywintypes.lib and pythoncom.lib into the binary distribution? I thought I had seen a feature request, but I cannot find it anymore. It would save the poor users ;-) having to compile pywin32 themselves when they only want to link to the bsic stuff. Thomas |
|
From: <mha...@us...> - 2003-07-27 23:04:30
|
Update of /cvsroot/pywin32/pywin32/Wise
In directory sc8-pr-cvs1:/tmp/cvs-serv11346
Modified Files:
win32all.wse
Log Message:
Don't try and copy anything to system32 for non-admin installs.
Index: win32all.wse
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/win32all.wse,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -d -r1.30 -r1.31
*** win32all.wse 8 Jul 2003 02:08:51 -0000 1.30
--- win32all.wse 27 Jul 2003 23:04:27 -0000 1.31
***************
*** 18,22 ****
Patch Threshold=85
Patch Memory=4000
! EXE Filename=win32all-155.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-157.exe
Code Sign Name=Python Win32 combined extensions
Code Sign Info=skippinet.com.au
***************
*** 382,392 ****
item: End Block
end
item: Set Variable
Variable=SYSDLL_PATH
Value=%SYS32%
end
! remarked item: Set Variable
Variable=SYSDLL_PATH
! Value=%MAINDIR%
end
item: Set Variable
--- 382,400 ----
item: End Block
end
+ item: If/While Statement
+ Variable=USE_HKLM
+ Value=1
+ end
item: Set Variable
Variable=SYSDLL_PATH
Value=%SYS32%
end
! item: Else Statement
! end
! item: Set Variable
Variable=SYSDLL_PATH
! Value=%PY_INST_PATH%
! end
! item: End Block
end
item: Set Variable
***************
*** 509,513 ****
item: Check if File/Dir Exists
Pathname=%SYSDLL_PATH%\pywintypes%PYVER_NODOT%.dll
! Message=The file %SYS32%\pywintypes%PYVER_NODOT%.dll
Message=can not be deleted. It is likely this file
Message=is in use. Please restart your system,
--- 517,521 ----
item: Check if File/Dir Exists
Pathname=%SYSDLL_PATH%\pywintypes%PYVER_NODOT%.dll
! Message=The file %SYSDLL_PATH%\pywintypes%PYVER_NODOT%.dll
Message=can not be deleted. It is likely this file
Message=is in use. Please restart your system,
***************
*** 538,542 ****
item: Check if File/Dir Exists
Pathname=%SYSDLL_PATH%\pythoncom%PYVER_NODOT%.dll
! Message=The file %SYS32%\pythoncom%PYVER_NODOT%.dll
Message=can not be deleted. It is likely this file
Message=is in use. Please restart your system,
--- 546,550 ----
item: Check if File/Dir Exists
Pathname=%SYSDLL_PATH%\pythoncom%PYVER_NODOT%.dll
! Message=The file %SYSDLL_PATH%\pythoncom%PYVER_NODOT%.dll
Message=can not be deleted. It is likely this file
Message=is in use. Please restart your system,
***************
*** 1242,1246 ****
item: Install File
Source=e:\src\pythonex\SharedDlls\NT\pdh.dll
! Destination=%SYS32%\pdh.dll
Flags=0000001000010011
end
--- 1250,1254 ----
item: Install File
Source=e:\src\pythonex\SharedDlls\NT\pdh.dll
! Destination=%SYSDLL_PATH%\pdh.dll
Flags=0000001000010011
end
***************
*** 1255,1259 ****
item: Install File
Source=e:\src\pythonex\SharedDlls\MSVCIRT.DLL
! Destination=%SYS32%\MSVCIRT.DLL
Description=Visual C++ DLLs
Flags=0000001000010011
--- 1263,1267 ----
item: Install File
Source=e:\src\pythonex\SharedDlls\MSVCIRT.DLL
! Destination=%SYSDLL_PATH%\MSVCIRT.DLL
Description=Visual C++ DLLs
Flags=0000001000010011
***************
*** 1261,1265 ****
item: Install File
Source=e:\src\pythonex\SharedDlls\MSVCRT.DLL
! Destination=%SYS32%\MSVCRT.DLL
Description=Visual C++ DLLs
Flags=0000001000010011
--- 1269,1273 ----
item: Install File
Source=e:\src\pythonex\SharedDlls\MSVCRT.DLL
! Destination=%SYSDLL_PATH%\MSVCRT.DLL
Description=Visual C++ DLLs
Flags=0000001000010011
***************
*** 1370,1374 ****
item: Set Variable
Variable=PYTHONCOM_DLL
! Value=%SYS32%\PythonCOM%PYVER_NODOT%.dll
end
item: Install File
--- 1378,1382 ----
item: Set Variable
Variable=PYTHONCOM_DLL
! Value=%SYSDLL_PATH%\PythonCOM%PYVER_NODOT%.dll
end
item: Install File
***************
*** 1826,1830 ****
item: Install File
Source=e:\src\pythonex\SharedDlls\MFC42.DLL
! Destination=%SYS32%\MFC42.DLL
Flags=0000001000000011
end
--- 1834,1838 ----
item: Install File
Source=e:\src\pythonex\SharedDlls\MFC42.DLL
! Destination=%SYSDLL_PATH%\MFC42.DLL
Flags=0000001000000011
end
|
|
From: <mha...@us...> - 2003-07-27 11:55:56
|
Update of /cvsroot/pywin32/pywin32 In directory sc8-pr-cvs1:/tmp/cvs-serv9136 Modified Files: build_for_version.bat Log Message: Shouldn't rely on .py associations being setup. Index: build_for_version.bat =================================================================== RCS file: /cvsroot/pywin32/pywin32/build_for_version.bat,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** build_for_version.bat 6 Mar 2003 03:18:44 -0000 1.1 --- build_for_version.bat 27 Jul 2003 11:55:53 -0000 1.2 *************** *** 2,6 **** call removebuilt.bat if errorlevel 1 goto failed ! set_for_version.py %1 if errorlevel 1 goto failed msdev "Python and Extensions.dsw" /MAKE ALL --- 2,6 ---- call removebuilt.bat if errorlevel 1 goto failed ! python set_for_version.py %1 if errorlevel 1 goto failed msdev "Python and Extensions.dsw" /MAKE ALL |
|
From: <mha...@us...> - 2003-07-27 11:54:29
|
Update of /cvsroot/pywin32/pywin32/com/win32comext/mapi/src
In directory sc8-pr-cvs1:/tmp/cvs-serv8925
Modified Files:
PyIMsgStore.i
Log Message:
Add GetReceiveFolderTable and AbortSubmit
Index: PyIMsgStore.i
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32comext/mapi/src/PyIMsgStore.i,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** PyIMsgStore.i 1 Sep 1999 23:17:16 -0000 1.1
--- PyIMsgStore.i 27 Jul 2003 11:54:25 -0000 1.2
***************
*** 80,83 ****
--- 80,133 ----
%}
+ %native(GetReceiveFolder) GetReceiveFolder;
+ %{
+ // @pyswig <o PyIID>, string|GetReceiveFolder|Obtains the folder that was established as the destination for incoming messages of a specified message class or the default receive folder for the message store.
+ PyObject *PyIMsgStore::GetReceiveFolder(PyObject *self, PyObject *args)
+ {
+ HRESULT _result;
+ unsigned long flags;
+ PyObject *obClass;
+ TCHAR *szClass;
+ TCHAR *sz_explicit_class = NULL;
+ ULONG eid_cb;
+ LPENTRYID eid_out = NULL;
+ PyObject *rc = NULL;
+
+ IMsgStore *_swig_self;
+ if ((_swig_self=GetI(self))==NULL) return NULL;
+ // @pyparm string|||Message class that is associated with a receive folder. If thid parameter is set to None or an empty string, GetReceiveFolder returns the default receive folder for the message store.
+ // @pyparm int|flags||
+ if(!PyArg_ParseTuple(args,"Ol:OpenEntry",&obClass, &flags))
+ goto done;
+
+ if (!PyWinObject_AsTCHAR(obClass, &szClass, TRUE))
+ goto done;
+
+ Py_BEGIN_ALLOW_THREADS
+ _result = (HRESULT )_swig_self->GetReceiveFolder(szClass, flags, &eid_cb, &eid_out, &sz_explicit_class);
+ Py_END_ALLOW_THREADS
+ if (FAILED(_result)) {
+ OleSetOleError(_result);
+ goto done;
+ }
+
+ rc = Py_BuildValue("NN", PyString_FromStringAndSize((char *)eid_out, eid_cb),
+ PyWinObject_FromTCHAR(sz_explicit_class));
+ MAPIFreeBuffer(eid_out);
+ MAPIFreeBuffer(sz_explicit_class);
+ PyWinObject_FreeTCHAR(szClass);
+ done:
+ return rc;
+ }
+
+ %}
+
+ // @pyswig <o PyIMAPITable>|GetReceiveFolderTable|provides access to the receive folder table, a table that includes information about all of the receive folders for the message store.
+ HRESULT GetReceiveFolderTable(
+ unsigned long ulFlags, // @pyparm int|flags||Bitmask of flags that controls table access
+ IMAPITable **OUTPUT
+ );
+
+
// @pyswig int|CompareEntryIDs|Compares two entry identifiers belonging to a particular address book provider to determine if they refer to the same address book object
// @rdesc The result is set to TRUE if the two entry identifiers refer to the same object, and FALSE otherwise.
***************
*** 126,127 ****
--- 176,212 ----
HRESULT GetLastError(HRESULT hr, unsigned long flags, MAPIERROR **OUTPUT);
+ // @pyswig int|AbortSubmit|Attempts to remove a message from the outgoing queue.
+ %native(AbortSubmit) AbortSubmit;
+ %{
+ PyObject *PyIMsgStore::AbortSubmit(PyObject *self, PyObject *args)
+ {
+ PyObject *rc = NULL;
+ HRESULT hr;
+ ULONG cb;
+ ULONG flags=0;
+ LPENTRYID peid = NULL;
+ IMsgStore *_swig_self;
+ PyObject *obE;
+ if ((_swig_self=GetI(self))==NULL) return NULL;
+ if(!PyArg_ParseTuple(args,"O|i:AbortSubmit",
+ &obE, // @pyparm string|entryId||The entry ID of the item to be aborted.
+ &flags)) // @pyparm int|flags|0|Reserved - must be zero.
+ goto done;
+
+ if (!PyWinObject_AsString(obE, (char **)&peid, FALSE, &cb))
+ goto done;
+
+ Py_BEGIN_ALLOW_THREADS
+ hr=_swig_self->AbortSubmit(cb, peid, flags);
+ Py_END_ALLOW_THREADS
+ if (FAILED(hr))
+ rc = OleSetOleError(hr);
+ else {
+ rc = Py_None;
+ Py_INCREF(Py_None);
+ }
+ done:
+ PyWinObject_FreeString((char *)peid);
+ return rc;
+ }
+ %}
|
|
From: <mha...@us...> - 2003-07-26 14:15:35
|
Update of /cvsroot/pywin32/pywin32/com/win32com/server
In directory sc8-pr-cvs1:/tmp/cvs-serv7123
Modified Files:
dispatcher.py
Log Message:
The (apparently unused) debugger hooks still used win32dbg as the
default Pythonwin debugger.
Index: dispatcher.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/server/dispatcher.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** dispatcher.py 1 Sep 1999 23:01:43 -0000 1.1
--- dispatcher.py 26 Jul 2003 14:15:32 -0000 1.2
***************
*** 188,196 ****
when an unexpected exception occurs.
! Requires the win32dbg package.
"""
def __init__(self, policyClass, ob):
! import win32dbg
! win32dbg.brk()
# DEBUGGER Note - You can either:
# * Hit Run and wait for a (non Exception class) exception to occur!
--- 188,196 ----
when an unexpected exception occurs.
! Requires Pythonwin.
"""
def __init__(self, policyClass, ob):
! import pywin.debugger
! pywin.debugger.brk()
# DEBUGGER Note - You can either:
# * Hit Run and wait for a (non Exception class) exception to occur!
***************
*** 200,207 ****
def _HandleException_(self):
! """ Invoke the win32dbg post mortem capability """
# Save details away.
typ, val, tb = exc_info()
! import win32dbg, win32dbg.dbgcon
debug = 0
try:
--- 200,207 ----
def _HandleException_(self):
! """ Invoke the debugger post mortem capability """
# Save details away.
typ, val, tb = exc_info()
! import pywin.debugger, pywin.debugger.dbgcon
debug = 0
try:
***************
*** 210,219 ****
# Use some inside knowledge to borrow a Debugger option which dictates if we
# stop at "expected" exceptions.
! debug = win32dbg.GetDebugger().get_option(win32dbg.dbgcon.OPT_STOP_EXCEPTIONS)
except:
debug = 1
if debug:
try:
! win32dbg.post_mortem(tb, typ, val) # The original exception
except:
traceback.print_exc()
--- 210,219 ----
# Use some inside knowledge to borrow a Debugger option which dictates if we
# stop at "expected" exceptions.
! debug = pywin.debugger.GetDebugger().get_option(pywin.debugger.dbgcon.OPT_STOP_EXCEPTIONS)
except:
debug = 1
if debug:
try:
! pywin.debugger.post_mortem(tb, typ, val) # The original exception
except:
traceback.print_exc()
|
|
From: <mha...@us...> - 2003-07-26 14:13:35
|
Update of /cvsroot/pywin32/pywin32/com/win32com/test
In directory sc8-pr-cvs1:/tmp/cvs-serv6997
Modified Files:
testPyComTest.py
Log Message:
RegisterInterfaces would fail if gencache had
already been run - exercise that here
Index: testPyComTest.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/test/testPyComTest.py,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** testPyComTest.py 3 Jul 2003 03:44:39 -0000 1.14
--- testPyComTest.py 26 Jul 2003 14:13:33 -0000 1.15
***************
*** 22,25 ****
--- 22,30 ----
import sys
+ # We had a bg where RegisterInterfaces would fail if gencache had
+ # already been run - exercise that here
+ from win32com import universal
+ universal.RegisterInterfaces('{6BCDCB60-5605-11D0-AE5F-CADD4C000000}', 0, 1, 1)
+
verbose = 0
|
|
From: <mha...@us...> - 2003-07-26 14:12:14
|
Update of /cvsroot/pywin32/pywin32/com/win32com/server
In directory sc8-pr-cvs1:/tmp/cvs-serv6790
Modified Files:
register.py
Log Message:
Remove apply()
Index: register.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/server/register.py,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** register.py 18 Dec 2002 00:52:01 -0000 1.14
--- register.py 26 Jul 2003 14:12:12 -0000 1.15
***************
*** 317,321 ****
for args in GetUnregisterServerKeys(clsid, progID, verProgID, customKeys ):
! apply(recurse_delete_key, args)
### it might be nice at some point to "roll back" the independent ProgID
--- 317,321 ----
for args in GetUnregisterServerKeys(clsid, progID, verProgID, customKeys ):
! recurse_delete_key(*args)
### it might be nice at some point to "roll back" the independent ProgID
***************
*** 462,470 ****
flags['debug'] = flags.get('debug',0) or '--debug' in sys.argv
if unregisterInfo:
! return apply(UnregisterInfoClasses, classes, flags)
if unregister:
! apply(UnregisterClasses, classes, flags)
else:
! apply(RegisterClasses, classes, flags)
--- 462,470 ----
flags['debug'] = flags.get('debug',0) or '--debug' in sys.argv
if unregisterInfo:
! return UnregisterInfoClasses(*classes, **flags)
if unregister:
! UnregisterClasses(*classes, **flags)
else:
! RegisterClasses(*classes, **flags)
|
|
From: <mha...@us...> - 2003-07-26 14:10:52
|
Update of /cvsroot/pywin32/pywin32/com/win32com/makegw In directory sc8-pr-cvs1:/tmp/cvs-serv6652 Modified Files: makegwparse.py Log Message: Syntax error in the dead, old, makegw. Index: makegwparse.py =================================================================== RCS file: /cvsroot/pywin32/pywin32/com/win32com/makegw/makegwparse.py,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** makegwparse.py 4 Jun 2000 05:50:03 -0000 1.7 --- makegwparse.py 26 Jul 2003 14:10:49 -0000 1.8 *************** *** 259,263 **** (self.arg.name, notdirected) def GetBuildForInterfacePostCode(self): ! return "\tSysFreeString(%s); % (self.arg.name,) + \ ArgFormatterPythonCOM.GetBuildForInterfacePostCode(self) def GetBuildForGatewayPostCode(self): --- 259,263 ---- (self.arg.name, notdirected) def GetBuildForInterfacePostCode(self): ! return "\tSysFreeString(%s);\n" % (self.arg.name,) + \ ArgFormatterPythonCOM.GetBuildForInterfacePostCode(self) def GetBuildForGatewayPostCode(self): |
|
From: <mha...@us...> - 2003-07-26 14:08:32
|
Update of /cvsroot/pywin32/pywin32/win32/src
In directory sc8-pr-cvs1:/tmp/cvs-serv6310
Modified Files:
win32apimodule.cpp
Log Message:
Add GetThreadLocale.
Index: win32apimodule.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32apimodule.cpp,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** win32apimodule.cpp 28 Apr 2003 10:53:20 -0000 1.23
--- win32apimodule.cpp 26 Jul 2003 14:08:29 -0000 1.24
***************
*** 3355,3358 ****
--- 3355,3367 ----
}
+ // @pymethod int|win32api|GetThreadLocale|Returns the current thread's locale.
+ static PyObject *
+ PyGetThreadLocale(PyObject *self, PyObject *args)
+ {
+ if (!PyArg_ParseTuple(args, ":GetThreadLocale"))
+ return NULL;
+ return PyInt_FromLong(GetThreadLocale());
+ }
+
// @pymethod |win32api|OutputDebugString|Sends a string to the Windows debugging device.
static PyObject *
***************
*** 3924,3927 ****
--- 3933,3937 ----
{"GetTempFileName", PyGetTempFileName, 1}, // @pymeth GetTempFileName|Creates a temporary file.
{"GetTempPath", PyGetTempPath, 1}, // @pymeth GetTempPath|Returns the path designated as holding temporary files.
+ {"GetThreadLocale", PyGetThreadLocale, 1}, // @pymeth GetThreadLocale|Returns the current thread's locale.
{"GetTickCount", PyGetTickCount, 1}, // @pymeth GetTickCount|Returns the milliseconds since windows started.
{"GetTimeZoneInformation", PyGetTimeZoneInformation,1}, // @pymeth GetTimeZoneInformation|Returns the system time-zone information.
|
|
From: <mha...@us...> - 2003-07-26 14:05:53
|
Update of /cvsroot/pywin32/pywin32/win32/src
In directory sc8-pr-cvs1:/tmp/cvs-serv5940
Modified Files:
timermodule.cpp
Log Message:
Plug some reference leaks.
Index: timermodule.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/timermodule.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** timermodule.cpp 9 Feb 2001 07:35:55 -0000 1.2
--- timermodule.cpp 26 Jul 2003 14:05:50 -0000 1.3
***************
*** 85,89 ****
}
! py_timer_id = Py_BuildValue ("i", (int) timer_id);
// associate the timer id with the given callback function
--- 85,91 ----
}
! py_timer_id = PyInt_FromLong((long) timer_id);
! if (!py_timer_id)
! return NULL;
// associate the timer id with the given callback function
***************
*** 92,103 ****
callback) == -1) {
::KillTimer (NULL, timer_id);
PyErr_SetString (timer_module_error,
"internal error, couldn't set timer id callback item");
return NULL;
}
- Py_INCREF (callback);
-
// everything went ok.
! return (Py_BuildValue ("i", (int) timer_id));
}
--- 94,104 ----
callback) == -1) {
::KillTimer (NULL, timer_id);
+ Py_DECREF(py_timer_id);
PyErr_SetString (timer_module_error,
"internal error, couldn't set timer id callback item");
return NULL;
}
// everything went ok.
! return py_timer_id;
}
***************
*** 110,114 ****
return NULL;
} else if (timer_id_callback_map) {
! PyDict_DelItem (timer_id_callback_map, py_timer_id);
}
int rc;
--- 111,117 ----
return NULL;
} else if (timer_id_callback_map) {
! if (0 != PyDict_DelItem (timer_id_callback_map, py_timer_id)) {
! return NULL;
! }
}
int rc;
***************
*** 152,155 ****
--- 155,159 ----
timer_module_error = PyString_FromString("timer error");
PyDict_SetItemString(dict, "error", timer_module_error);
+ PyDict_SetItemString(dict, "__version__", PyString_FromString("0.2"));
timer_id_callback_map = PyDict_New();
}
|
|
From: <mha...@us...> - 2003-07-26 03:43:23
|
Update of /cvsroot/pywin32/pywin32/com/win32com
In directory sc8-pr-cvs1:/tmp/cvs-serv29945
Modified Files:
universal.py
Log Message:
We were checking the wrong map for the vtable interface names we support.
Index: universal.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/universal.py,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** universal.py 19 Nov 2002 11:46:54 -0000 1.10
--- universal.py 26 Jul 2003 00:53:55 -0000 1.11
***************
*** 47,51 ****
# Cool - can used cached info.
if not interface_names:
! interface_names = mod.NamesToIIDMap.keys()
for name in interface_names:
try:
--- 47,51 ----
# Cool - can used cached info.
if not interface_names:
! interface_names = mod.VTablesToClassMap.values()
for name in interface_names:
try:
|
|
From: <mha...@us...> - 2003-07-26 02:09:48
|
Update of /cvsroot/pywin32/pywin32/com/win32com/client
In directory sc8-pr-cvs1:/tmp/cvs-serv29682
Modified Files:
genpy.py
Log Message:
When generating vtable information we were unpacking the data for the
runtime wrong.
Index: genpy.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/client/genpy.py,v
retrieving revision 1.32
retrieving revision 1.33
diff -C2 -d -r1.32 -r1.33
*** genpy.py 18 Mar 2003 07:33:32 -0000 1.32
--- genpy.py 26 Jul 2003 00:52:14 -0000 1.33
***************
*** 24,28 ****
error = "makepy.error"
! makepy_version = "0.4.5" # Written to generated file.
GEN_FULL="full"
--- 24,28 ----
error = "makepy.error"
! makepy_version = "0.4.6" # Written to generated file.
GEN_FULL="full"
***************
*** 230,254 ****
chunks = []
names, dispid, desc = v
- name = names[0]
- named_params = names[1:]
- invkind = desc[4]
arg_desc = desc[2]
- ret_desc = desc[8]
! chunks.append("\t(%s, %d, %d, (" % (repr(name), dispid, invkind))
for arg in arg_desc:
- chunks.append("(%d,%d," % (arg[0], arg[1]))
defval = build.MakeDefaultArgRepr(arg)
- if defval is None:
- chunks.append("None, ")
- else:
- chunks.append(defval + ", ")
if arg[3] is None:
! chunks.append("None")
else:
! chunks.append(repr(arg[3]))
! chunks.append("),")
! chunks.append("), %s, %s)," % (repr(ret_desc), repr(named_params)))
! #chunks.append(' # vtable entry %d' % (desc[7]/4,) )
print "".join(chunks)
print "]"
--- 230,245 ----
chunks = []
names, dispid, desc = v
arg_desc = desc[2]
! arg_reprs = []
for arg in arg_desc:
defval = build.MakeDefaultArgRepr(arg)
if arg[3] is None:
! arg3_repr = None
else:
! arg3_repr = repr(arg[3])
! arg_reprs.append((arg[0], arg[1], defval, arg3_repr))
! desc = desc[:2] + (arg_reprs,) + desc[3:]
! chunks.append("\t(%r, %d, %r)," % (names, dispid, desc))
print "".join(chunks)
print "]"
|
|
From: <mha...@us...> - 2003-07-26 01:40:01
|
Update of /cvsroot/pywin32/pywin32/com/win32com/client In directory sc8-pr-cvs1:/tmp/cvs-serv29808 Modified Files: gencache.py Log Message: Only attempt to validate the tlb file if it can be loaded - ie, if we have a generated module but no type library, we don't complain. Index: gencache.py =================================================================== RCS file: /cvsroot/pywin32/pywin32/com/win32com/client/gencache.py,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** gencache.py 27 Oct 2002 10:15:08 -0000 1.18 --- gencache.py 26 Jul 2003 00:53:02 -0000 1.19 *************** *** 354,358 **** module = None minor = tlbAttr[4] ! if bValidateFile: filePathPrefix = "%s\\%s" % (GetGeneratePath(), GetGeneratedFileName(typelibCLSID, lcid, major, minor)) filePath = filePathPrefix + ".py" --- 354,367 ---- module = None minor = tlbAttr[4] ! if module is not None and bValidateFile: ! try: ! typLibPath = pythoncom.QueryPathOfRegTypeLib(typelibCLSID, major, minor, lcid) ! tlbAttributes = pythoncom.LoadRegTypeLib(typelibCLSID, major, minor, lcid).GetLibAttr() ! except pythoncom.com_error: ! # We have a module, but no type lib - we should still ! # run with what we have though - the typelib may not be ! # deployed here. ! bValidateFile = 0 ! if module is not None and bValidateFile: filePathPrefix = "%s\\%s" % (GetGeneratePath(), GetGeneratedFileName(typelibCLSID, lcid, major, minor)) filePath = filePathPrefix + ".py" *************** *** 371,375 **** # If we have a differing MinorVersion or genpy has bumped versions, update the file import genpy ! if module is not None and (module.MinorVersion != tlbAttributes[4] or genpy.makepy_version != module.makepy_version): #print "Version skew: %d, %d" % (module.MinorVersion, tlbAttributes[4]) # try to erase the bad file from the cache --- 380,384 ---- # If we have a differing MinorVersion or genpy has bumped versions, update the file import genpy ! if module.MinorVersion != tlbAttributes[4] or genpy.makepy_version != module.makepy_version: #print "Version skew: %d, %d" % (module.MinorVersion, tlbAttributes[4]) # try to erase the bad file from the cache *************** *** 389,416 **** bReloadNeeded = 1 else: ! if module is not None: ! minor = module.MinorVersion ! filePathPrefix = "%s\\%s" % (GetGeneratePath(), GetGeneratedFileName(typelibCLSID, lcid, major, minor)) ! filePath = filePathPrefix + ".py" ! filePathPyc = filePathPrefix + ".pyc" ! #print "Trying py stat: ", filePath ! fModTimeSet = 0 try: ! pyModTime = os.stat(filePath)[8] fModTimeSet = 1 except os.error, e: ! # If .py file fails, try .pyc file ! #print "Trying pyc stat", filePathPyc ! try: ! pyModTime = os.stat(filePathPyc)[8] ! fModTimeSet = 1 ! except os.error, e: ! pass ! #print "Trying stat typelib", pyModTime ! #print str(typLibPath) ! typLibModTime = os.stat(str(typLibPath[:-1]))[8] ! if fModTimeSet and (typLibModTime > pyModTime): ! bReloadNeeded = 1 ! module = None except (ImportError, os.error): module = None --- 398,424 ---- bReloadNeeded = 1 else: ! minor = module.MinorVersion ! filePathPrefix = "%s\\%s" % (GetGeneratePath(), GetGeneratedFileName(typelibCLSID, lcid, major, minor)) ! filePath = filePathPrefix + ".py" ! filePathPyc = filePathPrefix + ".pyc" ! #print "Trying py stat: ", filePath ! fModTimeSet = 0 ! try: ! pyModTime = os.stat(filePath)[8] ! fModTimeSet = 1 ! except os.error, e: ! # If .py file fails, try .pyc file ! #print "Trying pyc stat", filePathPyc try: ! pyModTime = os.stat(filePathPyc)[8] fModTimeSet = 1 except os.error, e: ! pass ! #print "Trying stat typelib", pyModTime ! #print str(typLibPath) ! typLibModTime = os.stat(str(typLibPath[:-1]))[8] ! if fModTimeSet and (typLibModTime > pyModTime): ! bReloadNeeded = 1 ! module = None except (ImportError, os.error): module = None |
|
From: <th...@us...> - 2003-07-18 08:36:16
|
Update of /cvsroot/pywin32/pywin32
In directory sc8-pr-cvs1:/tmp/cvs-serv457
Modified Files:
setup_win32all_core.py
Log Message:
The WinExt class now has a method to parse DSP files to get the source
files from them - this removes the long listing of source files, and
should make it more robust.
Index: setup_win32all_core.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/setup_win32all_core.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** setup_win32all_core.py 16 May 2003 18:46:46 -0000 1.3
--- setup_win32all_core.py 18 Jul 2003 08:36:13 -0000 1.4
***************
*** 11,20 ****
class WinExt (Extension):
! # Base class for all win32 extensions, with
! # some predefined library and include dirs,
! # and predefined windows libraries.
! # Additionally a method to parse .def files
! # into lists of exported symbols.
! def __init__ (self, name, sources,
include_dirs=[],
define_macros=None,
--- 11,19 ----
class WinExt (Extension):
! # Base class for all win32 extensions, with some predefined
! # library and include dirs, and predefined windows libraries.
! # Additionally a method to parse .def files into lists of exported
! # symbols, and to read
! def __init__ (self, name, sources=None,
include_dirs=[],
define_macros=None,
***************
*** 28,32 ****
--- 27,33 ----
export_symbols=None,
export_symbol_file=None,
+ dsp_file=None,
):
+ assert dsp_file or sources, "Either dsp_file or sources must be specified"
libary_dirs = library_dirs,
include_dirs = ['com/win32com/src/include',
***************
*** 34,40 ****
--- 35,47 ----
libraries = ['user32', 'odbc32', 'advapi32',
'oleaut32', 'ole32', 'shell32'] + libraries
+
if export_symbol_file:
export_symbols = export_symbols or []
export_symbols.extend(self.parse_def_file(export_symbol_file))
+
+ if dsp_file:
+ sources = sources or []
+ sources.extend(self.get_source_files(dsp_file))
+
Extension.__init__ (self, name, sources,
include_dirs,
***************
*** 61,154 ****
return result
! pywintypes = WinExt('pywintypes',
! ['win32/src/PyACL.cpp',
! 'win32/src/PyHandle.cpp',
! 'win32/src/PyIID.cpp',
! 'win32/src/PyLARGE_INTEGER.cpp',
! 'win32/src/PyOVERLAPPED.cpp',
! 'win32/src/PySECURITY_ATTRIBUTES.cpp',
! 'win32/src/PySECURITY_DESCRIPTOR.cpp',
! 'win32/src/PySID.cpp',
! 'win32/src/PyTime.cpp',
! 'win32/src/PyUnicode.cpp',
! 'win32/src/PyWinTypesmodule.cpp',
! ],
! extra_compile_args = ['-DBUILD_PYWINTYPES']
! )
! # source directories for win32com
! com_src = 'com/win32com/src/'
! com_ext = 'com/win32com/src/extensions/'
pythoncom = WinExt('pythoncom',
! [com_src + 'dllmain.cpp',
! com_src + 'ErrorUtils.cpp',
! com_src + 'MiscTypes.cpp',
! com_src + 'oleargs.cpp',
! com_src + 'PyComHelpers.cpp',
! com_src + 'PyFactory.cpp',
! com_src + 'PyGatewayBase.cpp',
! com_src + 'PyIBase.cpp',
! com_src + 'PyIClassFactory.cpp',
! com_src + 'PyIDispatch.cpp',
! com_src + 'PyIUnknown.cpp',
! com_src + 'PyRecord.cpp',
! com_src + 'PyStorage.cpp',
! com_src + 'PythonCOM.cpp',
! com_src + 'Register.cpp',
! com_src + 'stdafx.cpp',
! com_src + 'univgw.cpp',
! com_src + 'univgw_dataconv.cpp',
!
! com_ext + 'PyFUNCDESC.cpp',
! com_ext + 'PyGConnectionPoint.cpp',
! com_ext + 'PyGConnectionPointContainer.cpp',
! com_ext + 'PyGEnumVariant.cpp',
! com_ext + 'PyGErrorLog.cpp',
! com_ext + 'PyGPersist.cpp',
! com_ext + 'PyGPersistPropertyBag.cpp',
! com_ext + 'PyGPersistStorage.cpp',
! com_ext + 'PyGPersistStream.cpp',
! com_ext + 'PyGPersistStreamInit.cpp',
! com_ext + 'PyGPropertyBag.cpp',
! com_ext + 'PyGStream.cpp',
! com_ext + 'PyIBindCtx.cpp',
! com_ext + 'PyICatInformation.cpp',
! com_ext + 'PyICatRegister.cpp',
! com_ext + 'PyIConnectionPoint.cpp',
! com_ext + 'PyIConnectionPointContainer.cpp',
! com_ext + 'PyICreateTypeInfo.cpp',
! com_ext + 'PyICreateTypeLib.cpp',
! com_ext + 'PyIEnumCATEGORYINFO.cpp',
! com_ext + 'PyIEnumConnectionPoints.cpp',
! com_ext + 'PyIEnumConnections.cpp',
! com_ext + 'PyIEnumGUID.cpp',
! com_ext + 'PyIEnumSTATPROPSTG.cpp',
! com_ext + 'PyIEnumSTATSTG.cpp',
! com_ext + 'PyIEnumVariant.cpp',
! com_ext + 'PyIErrorLog.cpp',
! com_ext + 'PyIExternalConnection.cpp',
! com_ext + 'PyILockBytes.cpp',
! com_ext + 'PyIMoniker.cpp',
! com_ext + 'PyIPersist.cpp',
! com_ext + 'PyIPersistFile.cpp',
! com_ext + 'PyIPersistPropertyBag.cpp',
! com_ext + 'PyIPersistStorage.cpp',
! com_ext + 'PyIPersistStream.cpp',
! com_ext + 'PyIPersistStreamInit.cpp',
! com_ext + 'PyIPropertyBag.cpp',
! com_ext + 'PyIPropertySetStorage.cpp',
! com_ext + 'PyIPropertyStorage.cpp',
! com_ext + 'PyIprovideClassInfo.cpp',
! com_ext + 'PyIRunningObjectTable.cpp',
! com_ext + 'PyIServiceProvider.cpp',
! com_ext + 'PyIStorage.cpp',
! com_ext + 'PyIStream.cpp',
! com_ext + 'PyIType.cpp',
! com_ext + 'PyITypeObjects.cpp',
! com_ext + 'PyTYPEATTR.cpp',
! com_ext + 'PyVARDESC.cpp',
! ],
export_symbol_file = 'com/win32com/src/PythonCOM.def',
## libraries = ['PyWintypes'],
--- 68,91 ----
return result
! def get_source_files(self, dsp):
! result = []
! dsp_path = os.path.dirname(dsp)
! for line in open(dsp, "r"):
! 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)
! return result
! ################################################################
! 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'],
***************
*** 158,162 ****
class my_install_lib (install_lib):
!
def finalize_options(self):
install_lib.finalize_options(self)
--- 95,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
def finalize_options(self):
install_lib.finalize_options(self)
|
|
From: <mha...@us...> - 2003-07-12 13:07:25
|
Update of /cvsroot/pywin32/pywin32/win32/src
In directory sc8-pr-cvs1:/tmp/cvs-serv2512
Modified Files:
win32clipboardmodule.cpp
Log Message:
CF_HDROP support, from Roger Upole.
Index: win32clipboardmodule.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32clipboardmodule.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** win32clipboardmodule.cpp 8 Oct 2002 12:24:52 -0000 1.10
--- win32clipboardmodule.cpp 12 Jul 2003 13:07:22 -0000 1.11
***************
*** 284,292 ****
--- 284,301 ----
}
+ if (!IsClipboardFormatAvailable(format)){
+ PyErr_SetString(PyExc_TypeError, "Specified clipboard format is not available");
+ return NULL;
+ }
HANDLE handle;
+ WCHAR *filename=NULL;
+ PyObject* obfilename = NULL;
+ UINT filecnt=0, fileind=0, filenamesize=0;
+ HDROP hdrop;
Py_BEGIN_ALLOW_THREADS;
handle = GetClipboardData((UINT)format);
Py_END_ALLOW_THREADS;
+
if (!handle) {
return ReturnAPIError("GetClipboardData");
***************
*** 296,299 ****
--- 305,311 ----
DWORD size;
switch (format) {
+ case CF_HDROP:
+ hdrop = (HDROP)GlobalLock(handle);
+ break;
case CF_ENHMETAFILE:
size = GetEnhMetaFileBits((HENHMETAFILE)handle, 0, NULL);
***************
*** 345,348 ****
--- 357,378 ----
}
switch (format) {
+ case CF_HDROP:
+ filecnt = DragQueryFileW(hdrop, 0xFFFFFFFF, NULL, NULL);
+ ret = PyTuple_New(filecnt);
+ if (!ret) return PyErr_NoMemory();
+ for (fileind=0;fileind<filecnt;fileind++){
+ filenamesize = DragQueryFileW(hdrop, fileind, NULL, NULL);
+ filename = (WCHAR *)malloc((filenamesize+1)*sizeof(WCHAR));
+ if (!filename) {
+ Py_DECREF(ret);
+ return PyErr_NoMemory();
+ }
+ filenamesize = DragQueryFileW(hdrop, fileind, filename, filenamesize+1);
+ obfilename=PyWinObject_FromWCHAR(filename);
+ PyTuple_SetItem(ret,fileind,obfilename);
+ free (filename);
+ }
+ GlobalUnlock(handle);
+ break;
case CF_UNICODETEXT:
ret = PyWinObject_FromWCHAR((wchar_t *)cData, (size / sizeof(wchar_t))-1);
***************
*** 807,810 ****
--- 837,841 ----
HANDLE handle;
int ihandle;
+
if (PyArg_ParseTuple(args, "ii:SetClipboardData",
&format, &ihandle)) {
***************
*** 819,830 ****
// to the new memory.
PyObject *obBuf;
if (!PyArg_ParseTuple(args, "iO:SetClipboardData",
&format, &obBuf))
return NULL;
! PyBufferProcs *pb = obBuf->ob_type->tp_as_buffer;
! if (pb==NULL)
RETURN_TYPE_ERR("The object must support the buffer interfaces");
- void *buf = NULL;
- int bufSize = (*pb->bf_getreadbuffer)(obBuf, 0, &buf);
// size doesnt include nulls!
if (PyString_Check(obBuf))
--- 850,861 ----
// to the new memory.
PyObject *obBuf;
+ const void * buf = NULL;
+ int bufSize = 0;
if (!PyArg_ParseTuple(args, "iO:SetClipboardData",
&format, &obBuf))
return NULL;
!
! if (PyObject_AsReadBuffer(obBuf,&buf,&bufSize)==-1)
RETURN_TYPE_ERR("The object must support the buffer interfaces");
// size doesnt include nulls!
if (PyString_Check(obBuf))
|
|
From: <mha...@us...> - 2003-07-08 02:08:54
|
Update of /cvsroot/pywin32/pywin32/Wise
In directory sc8-pr-cvs1:/tmp/cvs-serv16259
Modified Files:
win32all.wse
Log Message:
Build 155 for 2.3
Index: win32all.wse
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/win32all.wse,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -d -r1.29 -r1.30
*** win32all.wse 8 Jul 2003 01:24:24 -0000 1.29
--- win32all.wse 8 Jul 2003 02:08:51 -0000 1.30
***************
*** 18,22 ****
Patch Threshold=85
Patch Memory=4000
! EXE Filename=win32all-154.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-155.exe
Code Sign Name=Python Win32 combined extensions
Code Sign Info=skippinet.com.au
|
|
From: <mha...@us...> - 2003-07-08 01:25:32
|
Update of /cvsroot/pywin32/pywin32/Pythonwin
In directory sc8-pr-cvs1:/tmp/cvs-serv9327
Modified Files:
Win32uiHostGlue.h
Log Message:
Try harder to find our .dll./pyd
Index: Win32uiHostGlue.h
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Pythonwin/Win32uiHostGlue.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** Win32uiHostGlue.h 7 Jul 2003 14:09:40 -0000 1.8
--- Win32uiHostGlue.h 8 Jul 2003 01:25:29 -0000 1.9
***************
*** 119,146 ****
// (A brutal search trying a LoadLibrary on *all* Pythons we find is very
// unlikely to come up with the right one.
HMODULE hModCore = NULL;
int i;
HMODULE hModWin32ui = LoadLibrary(szWinui_Name);
if (hModWin32ui==NULL) {
! // don't give up now - try a local Python.
for (i=15;i<40;i++) {
! char fname[MAX_PATH*2];
! strcpy(fname, "\0");
! GetModuleFileName(NULL, fname, sizeof(fname));
! char *p = fname + strlen(fname);
! while (p>fname && *p != '\\')
! p--;
! if (p>fname) {
! char pyname[20];
! #ifdef _DEBUG
! wsprintf(pyname, "Python%d_d.dll", i);
! #else
! wsprintf(pyname, "Python%d.dll", i);
! #endif
! strcpy(p+1, pyname);
! hModCore = LoadLibrary(fname);
! if (hModCore)
! break;
! }
}
if (!hModCore) {
--- 119,151 ----
// (A brutal search trying a LoadLibrary on *all* Pythons we find is very
// unlikely to come up with the right one.
+ char app_dir[MAX_PATH];
+ strcpy(app_dir, "\0");
+ GetModuleFileName(NULL, app_dir, sizeof(app_dir));
+ char *p = app_dir + strlen(app_dir);
+ while (p>app_dir && *p != '\\')
+ p--;
+ *p = '\0';
+
+ char fname[MAX_PATH*2];
+
HMODULE hModCore = NULL;
int i;
HMODULE hModWin32ui = LoadLibrary(szWinui_Name);
if (hModWin32ui==NULL) {
! // try an installed version
! wsprintf(fname, "%s\\%s\\%s", app_dir, "lib\\site-packages\\pythonwin", szWinui_Name);
! hModWin32ui = LoadLibrary(fname);
! }
! if (hModWin32ui==NULL) {
! // Still no need to give up - try a local Python.
for (i=15;i<40;i++) {
! #ifdef _DEBUG
! wsprintf(fname, "%s\\Python%d_d.dll", app_dir, i);
! #else
! wsprintf(fname, "%s\\Python%d.dll", app_dir, i);
! #endif
! hModCore = LoadLibrary(fname);
! if (hModCore)
! break;
}
if (!hModCore) {
***************
*** 188,191 ****
--- 193,201 ----
if (pfnPyInit && bShouldInitPython) {
(*pfnPyInit)();
+ void (__cdecl *pfnPyEval_InitThreads)(void);
+ pfnPyEval_InitThreads = (void (__cdecl *)(void))GetProcAddress(hModCore, "PyEval_InitThreads");
+ ASSERT(pfnPyEval_InitThreads);
+ if (pfnPyEval_InitThreads)
+ pfnPyEval_InitThreads();
}
|
|
From: <mha...@us...> - 2003-07-08 01:24:27
|
Update of /cvsroot/pywin32/pywin32/Wise
In directory sc8-pr-cvs1:/tmp/cvs-serv9172
Modified Files:
win32all.wse
Log Message:
Build 154 for 2.2
Index: win32all.wse
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/win32all.wse,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -d -r1.28 -r1.29
*** win32all.wse 7 Jul 2003 14:07:47 -0000 1.28
--- win32all.wse 8 Jul 2003 01:24:24 -0000 1.29
***************
*** 18,22 ****
Patch Threshold=85
Patch Memory=4000
! EXE Filename=win32all-155.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-154.exe
Code Sign Name=Python Win32 combined extensions
Code Sign Info=skippinet.com.au
|
|
From: <mha...@us...> - 2003-07-07 14:10:55
|
Update of /cvsroot/pywin32/pywin32/com/win32com/src
In directory sc8-pr-cvs1:/tmp/cvs-serv30035
Modified Files:
PythonCOM.cpp Register.cpp dllmain.cpp
Log Message:
Since the last win32all build, when we did a win32api.LoadLibrary() on the
DLL, we didn't hold the lock!
Index: PythonCOM.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/src/PythonCOM.cpp,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** PythonCOM.cpp 3 Jul 2003 03:47:53 -0000 1.19
--- PythonCOM.cpp 7 Jul 2003 14:10:53 -0000 1.20
***************
*** 18,21 ****
--- 18,23 ----
extern int PyCom_RegisterCoreIIDs(PyObject *dict);
+ extern int PyCom_RegisterCoreSupport(void);
+
extern PyObject *pythoncom_IsGatewayRegistered(PyObject *self, PyObject *args);
***************
*** 1474,1477 ****
--- 1476,1480 ----
// ensure the framework has valid state to work with.
PyWinGlobals_Ensure();
+ PyCom_RegisterCoreSupport();
// Create the module and add the functions
Index: Register.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/src/Register.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** Register.cpp 16 Jan 2003 23:40:46 -0000 1.7
--- Register.cpp 7 Jul 2003 14:10:53 -0000 1.8
***************
*** 283,286 ****
--- 283,288 ----
int PyCom_RegisterCoreSupport(void)
{
+ if (g_obPyCom_MapIIDToType)
+ return 0; // already done!
// Create the name and type mappings.
g_obPyCom_MapIIDToType = PyDict_New(); // map of IID's to types.
Index: dllmain.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/win32com/src/dllmain.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** dllmain.cpp 20 Jan 2003 23:16:08 -0000 1.8
--- dllmain.cpp 7 Jul 2003 14:10:53 -0000 1.9
***************
*** 14,18 ****
extern void FreeGatewayModule(void);
!
/*
--- 14,19 ----
extern void FreeGatewayModule(void);
! extern int PyCom_RegisterCoreSupport(void);
! extern int PyCom_UnregisterCoreSupport(void);
/*
***************
*** 48,51 ****
--- 49,54 ----
// Make sure our Windows framework is all setup.
PyWinGlobals_Ensure();
+ // COM interfaces registered
+ PyCom_RegisterCoreSupport();
// Make sure we have _something_ as sys.argv.
if (PySys_GetObject("argv")==NULL) {
***************
*** 104,111 ****
static BOOL g_bCoInitThreadHasInit = FALSE;
- /* declare this outside of DllMain which has "C" scoping */
- extern int PyCom_RegisterCoreSupport(void);
- extern int PyCom_UnregisterCoreSupport(void);
-
#ifndef BUILD_FREEZE
#define DLLMAIN DllMain
--- 107,110 ----
***************
*** 135,146 ****
*/
! /*
! ** NOTE: PythonCOM.DLL is now linked against pywintypes.dll
! **
! ** pywintypes.dll's DLLMain() will be executed before us, and it
! ** needs to initialise and call Python. Thus is is never necessary for
! ** us to initialise Python.
! */
! PyCom_RegisterCoreSupport();
/*
** we don't need to be notified about threads
--- 134,139 ----
*/
! /* We don't assume anything about Python's init state here!
!
/*
** we don't need to be notified about threads
|
|
From: <mha...@us...> - 2003-07-07 14:09:43
|
Update of /cvsroot/pywin32/pywin32/Pythonwin
In directory sc8-pr-cvs1:/tmp/cvs-serv29301
Modified Files:
Win32uiHostGlue.h
Log Message:
Also look for a Python DLL in the executable directory, which just happens
to be the Python directory. This means we work for non-Admin installs
Index: Win32uiHostGlue.h
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Pythonwin/Win32uiHostGlue.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** Win32uiHostGlue.h 4 Aug 2000 04:44:45 -0000 1.7
--- Win32uiHostGlue.h 7 Jul 2003 14:09:40 -0000 1.8
***************
*** 112,137 ****
char *szWinui_Name = "win32ui.pyd";
#endif
HMODULE hModWin32ui = LoadLibrary(szWinui_Name);
if (hModWin32ui==NULL) {
! char buf[256];
! sprintf(buf,"The application can not locate %s (%d)\n", szWinui_Name, GetLastError());
! int len = strlen(buf);
! int bufLeft = sizeof(buf) - len;
! FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(),
! MAKELANGID(LANG_NEUTRAL,SUBLANG_NEUTRAL), buf+len, bufLeft, NULL);
! AfxMessageBox(buf);
! return FALSE;
}
! HMODULE hModCore = NULL;
! for (int i=15;i<40;i++) {
! char fname[20];
! #ifdef _DEBUG
! wsprintf(fname, "Python%d_d.dll", i);
! #else
! wsprintf(fname, "Python%d.dll", i);
! #endif
! hModCore = GetModuleHandle(fname);
! if (hModCore)
! break;
}
if (hModCore==NULL) {
--- 112,171 ----
char *szWinui_Name = "win32ui.pyd";
#endif
+ // god damn - this all should die.
+ // The problem is finding the correct Python.
+ // If we can get win32ui loaded, we can get the version from that.
+ // Otherwise, we can try and find a Python.dll in the current directory.
+ // Otherwise we give up in disgust.
+ // (A brutal search trying a LoadLibrary on *all* Pythons we find is very
+ // unlikely to come up with the right one.
+ HMODULE hModCore = NULL;
+ int i;
HMODULE hModWin32ui = LoadLibrary(szWinui_Name);
if (hModWin32ui==NULL) {
! // don't give up now - try a local Python.
! for (i=15;i<40;i++) {
! char fname[MAX_PATH*2];
! strcpy(fname, "\0");
! GetModuleFileName(NULL, fname, sizeof(fname));
! char *p = fname + strlen(fname);
! while (p>fname && *p != '\\')
! p--;
! if (p>fname) {
! char pyname[20];
! #ifdef _DEBUG
! wsprintf(pyname, "Python%d_d.dll", i);
! #else
! wsprintf(pyname, "Python%d.dll", i);
! #endif
! strcpy(p+1, pyname);
! hModCore = LoadLibrary(fname);
! if (hModCore)
! break;
! }
! }
! if (!hModCore) {
! // No Python, no win32ui :(
! char buf[256];
! sprintf(buf,"The application can not locate %s (or Python) (%d)\n", szWinui_Name, GetLastError());
! int len = strlen(buf);
! int bufLeft = sizeof(buf) - len;
! FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(),
! MAKELANGID(LANG_NEUTRAL,SUBLANG_NEUTRAL), buf+len, bufLeft, NULL);
! AfxMessageBox(buf);
! return FALSE;
! }
}
! if (!hModCore) {
! for (i=15;i<40;i++) {
! char fname[20];
! #ifdef _DEBUG
! wsprintf(fname, "Python%d_d.dll", i);
! #else
! wsprintf(fname, "Python%d.dll", i);
! #endif
! hModCore = GetModuleHandle(fname);
! if (hModCore)
! break;
! }
}
if (hModCore==NULL) {
***************
*** 139,143 ****
return FALSE;
}
-
// Now the modules are loaded, call the Python init functions.
int (__cdecl *pfnIsInit)(void);
--- 173,176 ----
***************
*** 155,158 ****
--- 188,201 ----
if (pfnPyInit && bShouldInitPython) {
(*pfnPyInit)();
+ }
+
+ if (!hModWin32ui) { // sigh - try and import it
+ int (__cdecl *pfnPyRun_SimpleString)(const char *);
+ pfnPyRun_SimpleString = (int (__cdecl *)(const char *))GetProcAddress(hModCore, "PyRun_SimpleString");
+ if (pfnPyRun_SimpleString)
+ pfnPyRun_SimpleString("import win32ui");
+ hModWin32ui = GetModuleHandle(szWinui_Name);
+ if (!hModWin32ui)
+ AfxMessageBox("Still can't get my hands on win32ui");
}
|
|
From: <mha...@us...> - 2003-07-07 14:08:17
|
Update of /cvsroot/pywin32/pywin32/Wise In directory sc8-pr-cvs1:/tmp/cvs-serv29186 Modified Files: brandall.py Log Message: Warn myself if the target file exists. Index: brandall.py =================================================================== RCS file: /cvsroot/pywin32/pywin32/Wise/brandall.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** brandall.py 7 Jul 2003 10:18:41 -0000 1.4 --- brandall.py 7 Jul 2003 14:08:14 -0000 1.5 *************** *** 9,14 **** import brandWin32, brandWin32com, brandPythonwin - #import pythoncom - def doit(): desc = None --- 9,12 ---- *************** *** 87,90 **** --- 85,93 ---- print "Can not find '%s' - can not generate installation" % wse_name return + target_name = "win32all-" + str(build) + ".exe" + if os.path.isfile(target_name): + print "WARNING: %s already exists - press ENTER to have it killed anyway" % target_name + raw_input() + defines_str = "" for d in defines: |
|
From: <mha...@us...> - 2003-07-07 14:07:50
|
Update of /cvsroot/pywin32/pywin32/Wise
In directory sc8-pr-cvs1:/tmp/cvs-serv28886
Modified Files:
win32all.wse
Log Message:
Better support for non-Admin installs. Pythonwin now installed in
Python directory, and no attempt to compile all .pyc files is done.
Message also displayed for the user indicating Python COM wont work 100%
Index: win32all.wse
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/win32all.wse,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -d -r1.27 -r1.28
*** win32all.wse 7 Jul 2003 10:18:41 -0000 1.27
--- win32all.wse 7 Jul 2003 14:07:47 -0000 1.28
***************
*** 18,22 ****
Patch Threshold=85
Patch Memory=4000
! EXE Filename=win32all-154.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-155.exe
Code Sign Name=Python Win32 combined extensions
Code Sign Info=skippinet.com.au
***************
*** 107,114 ****
item: Compiler Variable Else
end
item: Get Registry Key Value
Variable=PY_INST_PATH
Key=Software\Python\PythonCore\%PY_REG_VERSION%\InstallPath
! Flags=00000100
end
item: Get Registry Key Value
--- 107,117 ----
item: Compiler Variable Else
end
+ item: Remark
+ Text=Check HKCU first - if it is there, the user probably has no admin anyway.
+ end
item: Get Registry Key Value
Variable=PY_INST_PATH
Key=Software\Python\PythonCore\%PY_REG_VERSION%\InstallPath
! Flags=00000010
end
item: Get Registry Key Value
***************
*** 116,126 ****
Key=Software\Python\PythonCore\%PY_REG_VERSION%\InstallPath\InstallGroup
Default=%GROUP%
! Flags=00000100
! end
! item: Compiler Variable End
end
item: Set Variable
Variable=USE_HKLM
! Value=1
end
item: If/While Statement
--- 119,129 ----
Key=Software\Python\PythonCore\%PY_REG_VERSION%\InstallPath\InstallGroup
Default=%GROUP%
! Flags=00000010
end
item: Set Variable
Variable=USE_HKLM
! Value=0
! end
! item: Compiler Variable End
end
item: If/While Statement
***************
*** 131,143 ****
Text=Check HKEY_CURRENT_USER too.
end
- item: Compiler Variable If
- Variable=PY_DEV_BUILD
- Value=True
- Flags=00000001
- end
item: Get Registry Key Value
Variable=PY_INST_PATH
Key=Software\Python\PythonCore\%PY_REG_VERSION%\InstallPath
! Flags=00000010
end
item: Get Registry Key Value
--- 134,141 ----
Text=Check HKEY_CURRENT_USER too.
end
item: Get Registry Key Value
Variable=PY_INST_PATH
Key=Software\Python\PythonCore\%PY_REG_VERSION%\InstallPath
! Flags=00000100
end
item: Get Registry Key Value
***************
*** 145,169 ****
Key=Software\Python\PythonCore\%PY_REG_VERSION%\InstallPath\InstallGroup
Default=%GROUP%
! Flags=00000010
end
item: Set Variable
Variable=USE_HKLM
! Value=0
! end
! item: Compiler Variable End
end
item: If/While Statement
Variable=PY_INST_PATH
end
- item: Compiler Variable If
- Variable=PY_DEV_BUILD
- Value=True
- end
- item: Set Variable
- Variable=CONTINUE
- Value=1
- end
- item: Compiler Variable Else
- end
item: Set Variable
Variable=CONTINUE
--- 143,155 ----
Key=Software\Python\PythonCore\%PY_REG_VERSION%\InstallPath\InstallGroup
Default=%GROUP%
! Flags=00000100
end
item: Set Variable
Variable=USE_HKLM
! Value=1
end
item: If/While Statement
Variable=PY_INST_PATH
end
item: Set Variable
Variable=CONTINUE
***************
*** 212,217 ****
end
end
- item: Compiler Variable End
- end
item: If/While Statement
Variable=CONTINUE
--- 198,201 ----
***************
*** 227,234 ****
Flags=00000010
end
- item: Compiler Variable If
- Variable=PY_DEV_BUILD
- Value=True
- end
item: Custom Dialog Set
Name=Select Destination Directory
--- 211,214 ----
***************
*** 365,386 ****
end
end
- item: Compiler Variable Else
- end
- item: Check if File/Dir Exists
- Pathname=PY_INST_PATH\Python%PYVER_NODOT%.dll
- Flags=00000101
- end
- item: Display Message
- Title=Cannot locate Python
- Text=Python can not be located in the specified directory. Please ensure that Python%PYVER_NODOT%.dll exists in the specified directory.
- Flags=00101000
- end
- item: Set Variable
- Variable=PY_INST_PATH
- end
- item: End Block
- end
- item: Compiler Variable End
- end
item: End Block
end
--- 345,348 ----
***************
*** 400,423 ****
Flags=00000001
end
item: Remark
Text=Python 2.2 and later have "site-packages" - install there.
end
item: Check if File/Dir Exists
! Pathname=%PY_INST_PATH%\lib\site-packages
Flags=00000100
end
item: Set Variable
! Variable=PY_INST_PATH
! Value=%PY_INST_PATH%\lib\site-packages
end
item: End Block
end
- item: Compiler Variable End
- end
- item: Set Variable
- Variable=MAINDIR
- Value=%PY_INST_PATH%
- Flags=00001100
- end
item: Set Variable
Variable=SYSDLL_PATH
--- 362,385 ----
Flags=00000001
end
+ item: Compiler Variable End
+ end
+ item: Set Variable
+ Variable=MAINDIR
+ Value=%PY_INST_PATH%
+ Flags=00001100
+ end
item: Remark
Text=Python 2.2 and later have "site-packages" - install there.
end
item: Check if File/Dir Exists
! Pathname=%MAINDIR%\lib\site-packages
Flags=00000100
end
item: Set Variable
! Variable=MAINDIR
! Value=%MAINDIR%\lib\site-packages
end
item: End Block
end
item: Set Variable
Variable=SYSDLL_PATH
***************
*** 699,703 ****
end
end
! item: Check Configuration
Message=This program must be installed by a user with Administrative rights.
Message=
--- 661,665 ----
end
end
! remarked item: Check Configuration
Message=This program must be installed by a user with Administrative rights.
Message=
***************
*** 1778,1784 ****
Flags=00000001
end
item: Install File
Source=e:\src\pythonex\pythonwin\Build\Pythonwin.exe
! Destination=%INSTDIR%\Pythonwin.exe
Description=Extension modules
Flags=0000000000000011
--- 1740,1749 ----
Flags=00000001
end
+ item: Remark
+ Text=Install Python in the main Python dir, so non-admin installs can find Python.dll
+ end
item: Install File
Source=e:\src\pythonex\pythonwin\Build\Pythonwin.exe
! Destination=%PY_INST_PATH%\Pythonwin.exe
Description=Extension modules
Flags=0000000000000011
***************
*** 1791,1795 ****
Total Keys=1
Key=Software\Microsoft\Windows\CurrentVersion\App Paths\Pythonwin.exe
! New Value=%INSTDIR%\Pythonwin.exe
Root=2
end
--- 1756,1761 ----
Total Keys=1
Key=Software\Microsoft\Windows\CurrentVersion\App Paths\Pythonwin.exe
! New Value=%PY_INST_PATH%\Pythonwin.exe
! New Value=
Root=2
end
***************
*** 1799,1803 ****
Total Keys=1
Key=Software\Microsoft\Windows\CurrentVersion\App Paths\Pythonwin.exe
! New Value=%INSTDIR%\Pythonwin.exe
Root=1
end
--- 1765,1770 ----
Total Keys=1
Key=Software\Microsoft\Windows\CurrentVersion\App Paths\Pythonwin.exe
! New Value=%PY_INST_PATH%\Pythonwin.exe
! New Value=
Root=1
end
***************
*** 1811,1820 ****
Total Keys=1
Key=Python.File\shell\Edit\command
! New Value=%INSTDIR%\pythonwin.exe /edit "%%1"
end
item: Edit Registry
Total Keys=1
Key=Python.NoConFile\shell\Edit\command
! New Value=%INSTDIR%\pythonwin.exe /edit "%%1"
end
item: End Block
--- 1778,1789 ----
Total Keys=1
Key=Python.File\shell\Edit\command
! New Value=%PY_INST_PATH%\pythonwin.exe /edit "%%1"
! New Value=
end
item: Edit Registry
Total Keys=1
Key=Python.NoConFile\shell\Edit\command
! New Value=%PY_INST_PATH%\pythonwin.exe /edit "%%1"
! New Value=
end
item: End Block
***************
*** 1939,1943 ****
end
item: Create Shortcut
! Source=%INSTDIR%\Pythonwin.exe
Destination=%GROUP%\Pythonwin.lnk
Working Directory=%MAINDIR%
--- 1908,1912 ----
end
item: Create Shortcut
! Source=%PY_INST_PATH%\Pythonwin.exe
Destination=%GROUP%\Pythonwin.lnk
Working Directory=%MAINDIR%
***************
*** 1953,1961 ****
Flags=00000001
end
- item: Else Statement
- end
- item: Remark
- Text=We (Python core, and now me) Seem to be ignoring non Win95 (ie, win31 or NT3.5) interfaces.
- end
item: End Block
end
--- 1922,1925 ----
***************
*** 2026,2029 ****
--- 1990,2009 ----
Flags=00000001
end
+ item: If/While Statement
+ Variable=USE_HKLM
+ Value=1
+ Flags=00000001
+ end
+ item: Display Message
+ Title=Non-admin install
+ Text=As this is being installed as a non-admin user, certain COM features will not work correctly.
+ Text=
+ Text=You will not be able to implement COM objects in Python (but you should be able to use other COM objects).
+ Text=
+ Text=Active Scripting is also not supported
+ Flags=00100100
+ end
+ item: Else Statement
+ end
item: Install File
Source=e:\src\pythonex\Wise\Install Scripts\FinishInstall.py
***************
*** 2061,2064 ****
--- 2041,2046 ----
item: Delete File
Pathname=%MAINDIR%\PyWise%PYVER_NODOT%.dll
+ end
+ item: End Block
end
item: Compiler Variable End
|
|
From: <mha...@us...> - 2003-07-07 10:18:44
|
Update of /cvsroot/pywin32/pywin32/Wise
In directory sc8-pr-cvs1:/tmp/cvs-serv31431
Modified Files:
brandPythonwin.py brandWin32.py brandWin32com.py brandall.py
win32all.wse
Log Message:
Force an arg with the Python version to be passed. We don't actually check
the validity, but it ensures it is specified rather than grabbed from
whatever Python is running the script (there is a bug on that)
Also use this to create the compiler variables for WISE, and auto-generate
the installer file.
Index: brandPythonwin.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/brandPythonwin.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** brandPythonwin.py 6 May 2000 12:05:02 -0000 1.2
--- brandPythonwin.py 7 Jul 2003 10:18:41 -0000 1.3
***************
*** 4,8 ****
from brandutils import *
! def doit(buildDesc=None, auto=0, bRebrand = 0, build = None):
path=win32api.GetFullPathName("..\\Pythonwin")
projectName = "$/Python/Pythonwin"
--- 4,8 ----
from brandutils import *
! def doit(pyver=sys.winver, buildDesc=None, auto=0, bRebrand = 0, build = None):
path=win32api.GetFullPathName("..\\Pythonwin")
projectName = "$/Python/Pythonwin"
***************
*** 15,19 ****
import bulkstamp
! major, minor = string.split(sys.winver, ".")
bulkstamp.scan( build, path, "desc.txt", major=major, minor=minor )
subst_dict = {"vss_label" : build }
--- 15,19 ----
import bulkstamp
! major, minor = string.split(pyver, ".")
bulkstamp.scan( build, path, "desc.txt", major=major, minor=minor )
subst_dict = {"vss_label" : build }
Index: brandWin32.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/brandWin32.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** brandWin32.py 6 May 2000 12:05:02 -0000 1.2
--- brandWin32.py 7 Jul 2003 10:18:41 -0000 1.3
***************
*** 4,8 ****
from brandutils import *
! def doit(buildDesc = None, auto=0, bRebrand = 0, build = None):
path=win32api.GetFullPathName("..\\win32")
projectName = "$/Python/Python Win32 Extensions"
--- 4,8 ----
from brandutils import *
! def doit(pyver=sys.winver,buildDesc = None, auto=0, bRebrand = 0, build = None):
path=win32api.GetFullPathName("..\\win32")
projectName = "$/Python/Python Win32 Extensions"
***************
*** 15,19 ****
import bulkstamp
! major, minor = string.split(sys.winver, ".")
bulkstamp.scan( build, path, "desc.txt", major=major, minor=minor )
subst_dict = {"vss_label" : build }
--- 15,19 ----
import bulkstamp
! major, minor = string.split(pyver, ".")
bulkstamp.scan( build, path, "desc.txt", major=major, minor=minor )
subst_dict = {"vss_label" : build }
Index: brandWin32com.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/brandWin32com.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** brandWin32com.py 6 May 2000 12:05:02 -0000 1.2
--- brandWin32com.py 7 Jul 2003 10:18:41 -0000 1.3
***************
*** 5,9 ****
! def doit(buildDesc = None, auto=0, bRebrand = 0, build=None):
path=win32api.GetFullPathName("..\\com\\Build")
projectName = "$/Python/Python COM"
--- 5,9 ----
! def doit(pyver=sys.winver, buildDesc = None, auto=0, bRebrand = 0, build=None):
path=win32api.GetFullPathName("..\\com\\Build")
projectName = "$/Python/Python COM"
***************
*** 15,19 ****
import bulkstamp
! major, minor = string.split(sys.winver, ".")
bulkstamp.scan( build, path, "desc.txt", major=major, minor=minor )
subst_dict = {"vss_label" : build }
--- 15,19 ----
import bulkstamp
! major, minor = string.split(pyver, ".")
bulkstamp.scan( build, path, "desc.txt", major=major, minor=minor )
subst_dict = {"vss_label" : build }
Index: brandall.py
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/brandall.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** brandall.py 8 Oct 2002 11:43:06 -0000 1.3
--- brandall.py 7 Jul 2003 10:18:41 -0000 1.4
***************
*** 5,9 ****
import getopt
- import sys
sys.path.append(r"..\win32\scripts\VersionStamp")
--- 5,8 ----
***************
*** 16,20 ****
auto=0
bRebrand = 0
! opts, args = getopt.getopt(sys.argv[1:], "ad:r")
for (o,v) in opts:
if o=='-d':
--- 15,19 ----
auto=0
bRebrand = 0
! opts, args = getopt.getopt(sys.argv[1:], "ad:rw:")
for (o,v) in opts:
if o=='-d':
***************
*** 25,38 ****
bRebrand = 1
! if len(args) != 1:
! print "You must enter the build number"
return
if args[0] == "cvs":
- import time
# days since epoch <wink>
build = str(int(time.time() / 3600 / 24))
build_suffix = time.strftime("%Y%m%d", time.gmtime(time.time()))
else:
! build = args[0]
build_suffix = build
# projectName = "$/Python/Wise/win32all"
--- 24,58 ----
bRebrand = 1
! if len(args) != 2:
! print "You must enter the Python version and the build number"
return
+ defines = []
if args[0] == "cvs":
# days since epoch <wink>
+ import time
build = str(int(time.time() / 3600 / 24))
build_suffix = time.strftime("%Y%m%d", time.gmtime(time.time()))
+ defines.append("PY_DEV_BUILD=1")
+ # xxx
else:
! pyver = args[0]
! build = args[1]
! defines.append("PY_DEV_BUILD=0")
! try:
! if len(pyver.split("."))!=2:
! raise ValueError, "Bad python version '%s'" % pyver
! int(build) # check integer
! defines.append("PYVER_DOTTED=" + pyver)
! defines.append("PYVER_NODOT=" + "".join(pyver.split(".")))
! except ValueError, why:
! print why
! return
! if sys.executable.find("_d")<0:
! print "Oops - can't brand myself - spawing debug version."
! base, ext = os.path.splitext(sys.executable)
! exe = base + "_d" + ext
! os.execv(exe, [exe]+sys.argv)
! # Does not return
! assert(False)
build_suffix = build
# projectName = "$/Python/Wise/win32all"
***************
*** 43,53 ****
# return
! if not brandWin32.doit(desc, auto, bRebrand, build):
return
! if not brandWin32com.doit(desc, auto, bRebrand, build):
return
! if not brandPythonwin.doit(desc, auto, bRebrand, build):
return
--- 63,73 ----
# return
! if not brandWin32.doit(pyver, desc, auto, bRebrand, build):
return
! if not brandWin32com.doit(pyver, desc, auto, bRebrand, build):
return
! if not brandPythonwin.doit(pyver, desc, auto, bRebrand, build):
return
***************
*** 56,63 ****
import brandutils
! subst_dict = {"build_no" : build }
brandutils.SubstituteInFile("win32all_ver.wse.in", "win32all_ver.wse", subst_dict)
!
! if __name__=='__main__':
doit()
--- 76,102 ----
import brandutils
! subst_dict = {"build_no" : build,
! "pyver_dotted" : pyver,
! "pyver_nodot" : ''.join(pyver.split('.')),
! }
brandutils.SubstituteInFile("win32all_ver.wse.in", "win32all_ver.wse", subst_dict)
+ # and generate the installation file.
+ if defines:
+ wse_name = "win32all.wse"
+ if not os.path.isfile(wse_name):
+ print "Can not find '%s' - can not generate installation" % wse_name
+ return
+ defines_str = ""
+ for d in defines:
+ defines_str += "/D" + d + " "
+ # find the .exe for .wse files.
+ ignore, exe_name = win32api.FindExecutable(wse_name)
+ cmd = "%s %s /c %s" % (exe_name, defines_str, wse_name)
+ print "About to generate WISE installer."
+ print "Command: %s" % (cmd,)
+ print "Press ENTER to continue"
+ raw_input()
+ os.system(cmd)
! if __name__=='__main__':
doit()
Index: win32all.wse
===================================================================
RCS file: /cvsroot/pywin32/pywin32/Wise/win32all.wse,v
retrieving revision 1.26
retrieving revision 1.27
diff -C2 -d -r1.26 -r1.27
*** win32all.wse 10 Mar 2003 00:57:53 -0000 1.26
--- win32all.wse 7 Jul 2003 10:18:41 -0000 1.27
***************
*** 9,13 ****
Start Gradient=0 0 255
End Gradient=0 0 0
! Windows Flags=00000100000011010010110100011000
Log Pathname=%MAINDIR%\W32INST.LOG
Message Font=MS Sans Serif
--- 9,13 ----
Start Gradient=0 0 255
End Gradient=0 0 0
! Windows Flags=00000100000010010010110100011000
Log Pathname=%MAINDIR%\W32INST.LOG
Message Font=MS Sans Serif
***************
*** 18,22 ****
Patch Threshold=85
Patch Memory=4000
! EXE Filename=win32all-153.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-154.exe
Code Sign Name=Python Win32 combined extensions
Code Sign Info=skippinet.com.au
|
|
From: <mha...@us...> - 2003-07-04 12:14:33
|
Update of /cvsroot/pywin32/pywin32/win32/scripts/VersionStamp In directory sc8-pr-cvs1:/tmp/cvs-serv13138 Modified Files: bulkstamp.py Log Message: Remove unused import Index: bulkstamp.py =================================================================== RCS file: /cvsroot/pywin32/pywin32/win32/scripts/VersionStamp/bulkstamp.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** bulkstamp.py 5 Aug 2000 05:51:13 -0000 1.4 --- bulkstamp.py 4 Jul 2003 12:14:30 -0000 1.5 *************** *** 33,37 **** import sys import os - import regex import verstamp import fnmatch --- 33,36 ---- |
|
From: <mha...@us...> - 2003-07-03 04:25:20
|
Update of /cvsroot/pywin32/pywin32/com In directory sc8-pr-cvs1:/tmp/cvs-serv31439a Modified Files: adsi.dsp Log Message: Fixes to Python 2.1 build process. Index: adsi.dsp =================================================================== RCS file: /cvsroot/pywin32/pywin32/com/adsi.dsp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** adsi.dsp 6 Apr 2003 23:52:08 -0000 1.4 --- adsi.dsp 3 Jul 2003 04:07:07 -0000 1.5 *************** *** 165,171 **** BuildCmds= \ ! cd $(InputDir) \ ! ..\swig.bat -dnone -pythoncom -com_interface_parent IDispatch -c++ -o $(InputName).cpp $(InputName).i \ ! "$(InputDir)\$(InputName).cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" --- 165,169 ---- BuildCmds= \ ! ..\swig.bat $(InputDir) -dnone -pythoncom -com_interface_parent IDispatch -c++ -o $(InputName).cpp $(InputName).i "$(InputDir)\$(InputName).cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)" |