Re: Known issues with Win32::OLE?
Philip Prindeville <[email protected]> Fri, 24 Aug 2012 15:56:02 -0600
| Newsgroups | gmane.comp.lang.perl.active-perl |
|---|---|
| Message-ID | <[email protected]> |
On 8/24/12 2:51 PM, Francisco Zarabozo wrote:
> -----Mensaje original-----
> From: Philip Prindeville
> Sent: Friday, August 24, 2012 2:37 PM
>
>>> On 8/23/12 3:34 AM, Brian Raven wrote:
>>> I may be missing something, but if you want to test a GUI, wouldn't
>>> something like Win32::GuiTest be more useful?
>>>
>>>
>>> --
>>> Brian Raven
>> I could not get it to build on Win7-x64:
>>
>> C:\Users\philipp\Desktop\tests\Win32-GuiTest-1.60>vcvars32.bat
>> Setting environment for using Microsoft Visual Studio 2010 x86 tools.
>>
> You're initializing the x86 vars, not x64 vars. I just tried the
> installation of Win32::GuiTest from CPAN (with a script I wrote - called
> "cpan" too - to automate those things because the regular cpan app didn't
> work well for me for several reasons, but basically it downloads the latest
> version from CPAN, checks for dependencies and installs the necessary with
> MSVS vars set up and nmake). I installed Win32::GuiTest for Perl 5.16 x64.
> This is the log of my script:
>
>
> #######################
> Setting environment for using Microsoft Visual Studio 2010 x64 tools.
>
> D:\src>cpan Win32::GuiTest
>
> Looking for module Win32::GuiTest
> Win32::GuiTest is not installed. Fetching information and requirements.
> Downloaded source from CPAN to folder D:/src/Win32-GuiTest-1.60
> Checking dependencies for Win32::GuiTest (Win32::GuiTest)
>
> This module requires me to install the following modules and dependencies:
>
> Win32::GuiTest
>
>
> Deciding best install order.
> Done. Testing order:
>
> OK! Win32::GuiTest
>
> Do you want me to start the installation process? [y]
>
>
> ###############################################################################
> Changing to dir D:/src/Win32-GuiTest-1.60
> Checking if your kit is complete...
> Looks good
> Writing Makefile for Win32::GuiTest
> Writing MYMETA.yml and MYMETA.json
>
> Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
> Copyright (C) Microsoft Corporation. All rights reserved.
>
> cp lib/Win32/GuiTest/GuiTest.pc blib\lib\Win32\GuiTest\GuiTest.pc
> cp lib/Win32/GuiTest/Examples.pm blib\lib\Win32\GuiTest\Examples.pm
> cp lib/Win32/GuiTest.pm blib\lib\Win32\GuiTest.pm
> cp lib/Win32/GuiTest/Cmd.pm blib\lib\Win32\GuiTest\Cmd.pm
> D:\usr\bin\perl.exe -ID:/usr/lib -ID:/usr/lib
> D:\usr\lib\ExtUtils\xsubpp -typemap D:\usr\lib\ExtUtils\typemap -typemap
> perlobject.map -typemap typemap GuiTest.xs >xstmp.c &&
> D:\usr\bin\perl.exe -MExtUtils::Command -e mv -- xstmp.c GuiTest.cpp
> cl -c -nologo -GF -W3 -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DWIN32
> -D_CONSOLE -DNO_STRICT -DWIN64 -DCONSERVATIVE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
> -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS
> -DUSE_PERLIO -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DVERSION=\"1.60\" -DXS_VERSION=\"1.60\"
> "-ID:\usr\lib\CORE" GuiTest.cpp
> GuiTest.cpp
> GuiTest.xs(135) : warning C4267: '=' : conversion from 'size_t' to 'int',
> possible loss of data
> GuiTest.xs(153) : warning C4244: 'initializing' : conversion from 'WPARAM'
> to 'int', possible loss of data
> GuiTest.xs(154) : warning C4244: 'initializing' : conversion from 'LPARAM'
> to 'int', possible loss of data
> GuiTest.xs(159) : warning C4244: 'initializing' : conversion from 'WPARAM'
> to 'int', possible loss of data
> GuiTest.xs(160) : warning C4244: 'initializing' : conversion from 'LPARAM'
> to 'BOOL', possible loss of data
> GuiTest.xs(174) : warning C4244: 'initializing' : conversion from 'LPARAM'
> to 'BOOL', possible loss of data
> GuiTest.xs(274) : warning C4244: 'initializing' : conversion from 'WPARAM'
> to 'int', possible loss of data
> GuiTest.xs(278) : warning C4244: 'initializing' : conversion from 'WPARAM'
> to 'int', possible loss of data
> GuiTest.xs(609) : warning C4244: 'initializing' : conversion from 'LRESULT'
> to 'int', possible loss of data
> GuiTest.xs(1098) : warning C4244: 'initializing' : conversion from 'LRESULT'
> to 'int', possible loss of data
> GuiTest.xs(1115) : warning C4244: '=' : conversion from 'LRESULT' to 'int',
> possible loss of data
> GuiTest.xs(1152) : warning C4244: '=' : conversion from 'LRESULT' to 'int',
> possible loss of data
> GuiTest.xs(1410) : warning C4244: 'initializing' : conversion from 'LRESULT'
> to 'int', possible loss of data
> GuiTest.xs(1430) : warning C4244: 'initializing' : conversion from 'LRESULT'
> to 'int', possible loss of data
> GuiTest.xs(1460) : warning C4244: '=' : conversion from 'LRESULT' to 'int',
> possible loss of data
> GuiTest.xs(1473) : warning C4244: 'initializing' : conversion from 'LRESULT'
> to 'int', possible loss of data
> GuiTest.xs(1510) : warning C4267: '=' : conversion from 'size_t' to 'int',
> possible loss of data
> GuiTest.xs(1753) : warning C4244: '=' : conversion from 'IV' to 'LONG',
> possible loss of data
> cl -c -nologo -GF -W3 -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DWIN32
> -D_CONSOLE -DNO_STRICT -DWIN64 -DCONSERVATIVE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
> -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS
> -DUSE_PERLIO -MD -Zi -DNDEBUG -Ox -GL -fp:precise -DVERSION=\"1.60\" -DXS_VERSION=\"1.60\"
> "-ID:\usr\lib\CORE" DibSect.cpp
> DibSect.cpp
> DibSect.cpp(120) : warning C4334: '<<' : result of 32-bit shift implicitly
> converted to 64 bits (was 64-bit shift intended?)
> Running Mkbootstrap for Win32::GuiTest ()
> D:\usr\bin\perl.exe -MExtUtils::Command -e chmod -- 644 GuiTest.bs
> D:\usr\bin\perl.exe -MExtUtils::Mksymlists -e
> "Mksymlists('NAME'=>\"Win32::GuiTest\", 'DLBASE' => 'GuiTest', 'DL_FUNCS' =>
> { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);"
> link -out:blib\arch\auto\Win32\GuiTest\GuiTest.dll -dll -nologo -nodefaultlib
> -debug -opt:ref,icf -ltcg -libpath:"D:/usr/lib/CORE" -machine:AMD64
> "/manifestdependency:type='Win32' name='Microsoft.Windows.Common-Controls'
> version='6.0.0.0' processorArchitecture='*'
> publicKeyToken='6595b64144ccf1df' language='*'" GuiTest.obj DibSect.obj
> D:\usr\lib\CORE\perl516.lib oldnames.lib kernel32.lib user32.lib gdi32.lib
> winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib
> netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib
> odbccp32.lib comctl32.lib msvcrt.lib -def:GuiTest.def
> Creating library blib\arch\auto\Win32\GuiTest\GuiTest.lib and object
> blib\arch\auto\Win32\GuiTest\GuiTest.exp
> Generating code
> Finished generating code
> if exist blib\arch\auto\Win32\GuiTest\GuiTest.dll.manifest
> mt -nologo -manifest
> blib\arch\auto\Win32\GuiTest\GuiTest.dll.manifest -outputresource:blib\arch\auto\Win32\GuiTest\GuiTest.dll;2
> if exist blib\arch\auto\Win32\GuiTest\GuiTest.dll.manifest del
> blib\arch\auto\Win32\GuiTest\GuiTest.dll.manifest
> D:\usr\bin\perl.exe -MExtUtils::Command -e chmod -- 755
> blib\arch\auto\Win32\GuiTest\GuiTest.dll
> D:\usr\bin\perl.exe -MExtUtils::Command -e cp -- GuiTest.bs
> blib\arch\auto\Win32\GuiTest\GuiTest.bs
> D:\usr\bin\perl.exe -MExtUtils::Command -e chmod -- 644
> blib\arch\auto\Win32\GuiTest\GuiTest.bs
>
>
> ----------------------- TESTING ------------------------------
>> nmake test
>
> Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
> Copyright (C) Microsoft Corporation. All rights reserved.
>
> D:\usr\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0,
> 'blib\lib', 'blib\arch')" t/*.t
> t/01_basic.t ..... ok
> t/02_calc.t ...... skipped: this test is phased out
> t/03_cpl.t ....... ok
> t/04_std.t ....... ok
> t/05_which.t ..... ok
> t/06_sendkeys.t .. ok
> All tests successful.
> Files=6, Tests=72, 7 wallclock secs ( 0.05 usr + 0.05 sys = 0.09 CPU)
> Result: PASS
>
> Do you want me to install? [y]
>> nmake install
>
> Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
> Copyright (C) Microsoft Corporation. All rights reserved.
>
> Files found in blib\arch: installing files in blib\lib into architecture
> dependent library tree
> Installing D:\usr\site\lib\auto\Win32\GuiTest\GuiTest.bs
> Installing D:\usr\site\lib\auto\Win32\GuiTest\GuiTest.dll
> Installing D:\usr\site\lib\auto\Win32\GuiTest\GuiTest.exp
> Installing D:\usr\site\lib\auto\Win32\GuiTest\GuiTest.lib
> Installing D:\usr\site\lib\auto\Win32\GuiTest\GuiTest.pdb
> Installing D:\usr\site\lib\Win32\GuiTest.pm
> Installing D:\usr\site\lib\Win32\GuiTest\Cmd.pm
> Installing D:\usr\site\lib\Win32\GuiTest\Examples.pm
> Installing D:\usr\site\lib\Win32\GuiTest\GuiTest.pc
> Appending installation info to D:/usr/lib/perllocal.pod
>
> Done. Quiting now.
>
> ###############################
>
> HTH
>
> Francisco
>
>
>
Yup, got it working. Was running it in a X64 cross tools VS command prompt, instead of the native one.
My bad. I'm a VS neophyte.
Rather be using Cygwin but that's not an option, alas.
-Philip
_______________________________________________
ActivePerl mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs