summaryrefslogtreecommitdiffstats
path: root/shell/source/win32/workbench
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 16:51:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 16:51:28 +0000
commit940b4d1848e8c70ab7642901a68594e8016caffc (patch)
treeeb72f344ee6c3d9b80a7ecc079ea79e9fba8676d /shell/source/win32/workbench
parentInitial commit. (diff)
downloadlibreoffice-upstream.tar.xz
libreoffice-upstream.zip
Adding upstream version 1:7.0.4.upstream/1%7.0.4upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'shell/source/win32/workbench')
-rw-r--r--shell/source/win32/workbench/TestSmplMail.cxx160
-rw-r--r--shell/source/win32/workbench/TestSysShExec.cxx132
-rw-r--r--shell/source/win32/workbench/makefile.mk79
3 files changed, 371 insertions, 0 deletions
diff --git a/shell/source/win32/workbench/TestSmplMail.cxx b/shell/source/win32/workbench/TestSmplMail.cxx
new file mode 100644
index 000000000..18b1741e8
--- /dev/null
+++ b/shell/source/win32/workbench/TestSmplMail.cxx
@@ -0,0 +1,160 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/registry/XSimpleRegistry.hpp>
+#include <com/sun/star/system/XSimpleMailClientSupplier.hpp>
+#include <cppuhelper/servicefactory.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <osl/diagnose.h>
+
+#include <stdio.h>
+
+#include <windows.h>
+
+#include <osl/file.hxx>
+
+
+// namespaces
+
+
+using namespace ::cppu ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+using namespace std ;
+using namespace com::sun::star::system;
+
+#define RDB_SYSPATH "D:\\Projects\\gsl\\shell\\wntmsci7\\bin\\applicat.rdb"
+
+
+// global variables
+
+
+Reference< XMultiServiceFactory > g_xFactory;
+
+
+// main
+
+
+// int SAL_CALL main(int nArgc, char* Argv[], char* pEnv[] )
+// make Warning free, leave out typename
+int SAL_CALL main(int , char*, char* )
+{
+
+ // get the global service-manager
+
+
+ // Get global factory for uno services.
+ OUString rdbName = OUString( RDB_SYSPATH );
+ Reference< XMultiServiceFactory > g_xFactory( createRegistryServiceFactory( rdbName ) );
+
+ // Print a message if an error occurred.
+ if ( g_xFactory.is() == sal_False )
+ {
+ OSL_FAIL("Can't create RegistryServiceFactory");
+ return(-1);
+ }
+
+ printf("Creating RegistryServiceFactory successful\n");
+
+
+ // try to get an Interface to a XFilePicker Service
+
+
+ try
+ {
+ Reference< XSimpleMailClientSupplier > xSmplMailClientSuppl(
+ g_xFactory->createInstance("com.sun.star.system.SimpleSystemMail"), UNO_QUERY );
+
+ if ( !xSmplMailClientSuppl.is() )
+ {
+ OSL_FAIL( "Error creating SimpleSystemMail Service" );
+ return(-1);
+ }
+
+ Reference< XSimpleMailClient > xSmplMailClient(
+ xSmplMailClientSuppl->querySimpleMailClient( ) );
+
+ if ( xSmplMailClient.is( ) )
+ {
+ Reference< XSimpleMailMessage > xSmplMailMsg(
+ xSmplMailClient->createSimpleMailMessage( ) );
+
+ if ( xSmplMailMsg.is( ) )
+ {
+ xSmplMailMsg->setRecipient( OUString("tino.rachui@germany.sun.com") );
+ xSmplMailMsg->setOriginator( OUString("tino.rachui@germany.sun.com") );
+
+ Sequence<OUString> ccRecips { "tino.rachui@germany.sun.com" };
+
+ xSmplMailMsg->setCcRecipient( ccRecips );
+
+ Sequence<OUString> bccRecips { "tino.rachui@germany.sun.com" };
+
+ xSmplMailMsg->setBccRecipient( bccRecips );
+
+ xSmplMailMsg->setSubject( OUString("Mapi Test") );
+
+ Sequence< OUString > attachments( 2 );
+
+ OUString aFile("D:\\Projects\\gsl\\shell\\wntmsci7\\bin\\testprx.exe");
+ OUString aFileURL;
+
+ osl::FileBase::getFileURLFromSystemPath( aFile, aFileURL );
+ attachments[0] = aFileURL;
+
+ aFile = "D:\\Projects\\gsl\\shell\\wntmsci7\\bin\\testsyssh.exe";
+ osl::FileBase::getFileURLFromSystemPath( aFile, aFileURL );
+
+ attachments[1] = aFile;
+
+ xSmplMailMsg->setAttachement( attachments );
+
+ xSmplMailClient->sendSimpleMailMessage( xSmplMailMsg, 0 );
+ }
+ }
+ }
+ catch( Exception& )
+ {
+ }
+
+
+ // shutdown
+
+
+ // Cast factory to XComponent
+ Reference< XComponent > xComponent( g_xFactory, UNO_QUERY );
+
+ // Print a message if an error occurred.
+ if ( xComponent.is() == sal_False )
+ {
+ OSL_FAIL("Error shutting down");
+ }
+
+ // Dispose and clear factory
+ xComponent->dispose();
+ g_xFactory.clear();
+
+ printf("Test successful\n");
+
+ return 0;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/shell/source/win32/workbench/TestSysShExec.cxx b/shell/source/win32/workbench/TestSysShExec.cxx
new file mode 100644
index 000000000..2dd1ba246
--- /dev/null
+++ b/shell/source/win32/workbench/TestSysShExec.cxx
@@ -0,0 +1,132 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/registry/XSimpleRegistry.hpp>
+
+#include <com/sun/star/system/XSystemShellExecute.hpp>
+#include <cppuhelper/servicefactory.hxx>
+
+#include <osl/file.hxx>
+#include <rtl/ustring.hxx>
+#include <sal/types.h>
+#include <osl/diagnose.h>
+
+#include <stdio.h>
+
+#include <windows.h>
+
+
+// namespaces
+
+
+using namespace ::cppu ;
+using namespace ::com::sun::star::uno ;
+using namespace ::com::sun::star::lang ;
+using namespace std ;
+using namespace com::sun::star::system;
+
+#define RDB_SYSPATH "D:\\Projects\\gsl\\shell\\wntmsci7\\bin\\applicat.rdb"
+
+
+// global variables
+
+
+Reference< XMultiServiceFactory > g_xFactory;
+
+
+// main
+
+
+// int SAL_CALL main(int nArgc, char* Argv[], char* Env[] )
+int SAL_CALL main(int nArgc, char* Argv[], char* )
+{
+
+ // get the global service-manager
+
+
+ if ( nArgc < 4 )
+ return 0;
+
+ // Get global factory for uno services.
+ OUString rdbName = OUString( RDB_SYSPATH );
+ Reference< XMultiServiceFactory > g_xFactory( createRegistryServiceFactory( rdbName ) );
+
+ // Print a message if an error occurred.
+ if ( g_xFactory.is() == sal_False )
+ {
+ OSL_FAIL("Can't create RegistryServiceFactory");
+ return(-1);
+ }
+
+ printf("Creating RegistryServiceFactory successful\n");
+
+
+ // try to get an Interface to a XFilePicker Service
+
+
+ Reference< XSystemShellExecute > xSysShExec(
+ g_xFactory->createInstance("com.sun.star.system.SystemShellExecute"), UNO_QUERY );
+
+ if ( !xSysShExec.is() )
+ {
+ OSL_FAIL( "Error creating SystemShellExecute Service" );
+ return(-1);
+ }
+
+ //"c:\\winnt\\notepad.exe"
+ OUString cmd = OUString::createFromAscii( Argv[1] );
+ OUString param = OUString::createFromAscii( Argv[2] ); //c:\\winnt\\iis5.log
+
+ try
+ {
+ xSysShExec->execute( cmd, param, atoi( Argv[3] ) );
+ }
+ catch( SystemShellExecuteException& )
+ {
+ OSL_FAIL( "Error executing system command" );
+ }
+ catch( IllegalArgumentException& )
+ {
+ OSL_FAIL( "Invalid parameter" );
+ }
+
+
+ // shutdown
+
+
+ // Cast factory to XComponent
+ Reference< XComponent > xComponent( g_xFactory, UNO_QUERY );
+
+ // Print a message if an error occurred.
+ if ( xComponent.is() == sal_False )
+ {
+ OSL_FAIL("Error shutting down");
+ }
+
+ // Dispose and clear factory
+ xComponent->dispose();
+ g_xFactory.clear();
+
+ printf("Test successful\n");
+
+ return 0;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/shell/source/win32/workbench/makefile.mk b/shell/source/win32/workbench/makefile.mk
new file mode 100644
index 000000000..d55a7999d
--- /dev/null
+++ b/shell/source/win32/workbench/makefile.mk
@@ -0,0 +1,79 @@
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# This file incorporates work covered by the following license notice:
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
+#
+
+PRJ=..$/..$/..
+
+PRJNAME=shell
+TARGET=testsyssh
+TARGET1=testsmplmail
+TARGET4=testfopen
+LIBTARGET=NO
+TARGETTYPE=CUI
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+# --- Files --------------------------------------------------------
+
+CFLAGS+=/GX
+
+OBJFILES1=$(OBJ)$/TestSysShExec.obj
+OBJFILES2=$(OBJ)$/TestSmplMail.obj
+OBJFILES4=$(OBJ)$/Testfopen.obj
+
+OBJFILES=$(OBJFILES1)\
+ $(OBJFILES2)
+
+APP1TARGET=$(TARGET)
+APP1OBJS=$(OBJFILES1)
+
+APP1STDLIBS+= $(CPPULIB) \
+ $(CPPUHELPERLIB) \
+ $(SALLIB) \
+ $(USER32LIB)
+
+APP1DEF= $(MISC)$/$(APP1TARGET).def
+
+
+# --- TestSmplMail ---
+
+APP2TARGET=$(TARGET1)
+APP2OBJS=$(OBJFILES2)
+
+APP2STDLIBS+= $(CPPULIB) \
+ $(CPPUHELPERLIB) \
+ $(SALLIB) \
+ $(USER32LIB)
+
+APP2DEF= $(MISC)$/$(APP2TARGET).def
+
+# --- Testfopen ---
+
+APP4TARGET=$(TARGET4)
+APP4OBJS=$(OBJFILES4)
+
+APP4STDLIBS+= $(SALLIB)
+
+APP4DEF= $(MISC)$/$(APP4TARGET).def
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : target.mk
+
+