473,670 Members | 2,228 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

writing an external function in std c++

I've been pecking away at writing a program that will calculate the inner
product of two double-width four-vectors.

Larry thinks I'm well started with the following source to populate a
vector:
#include <vector>
#include <algorithm>
#include <iterator>
#include <iostream>
#include <math.h>

int main() {
std::vector<dou blefour_vector;

for (double i=0.0; i<4.0; i++)
four_vector.pus h_back(sqrt(i)) ;

std::cout.preci sion(16);

std::copy(four_ vector.begin(), four_vector.end (),
std::ostream_it erator<double>( std::cout, "\n"));
return 0;
}

How do I imitate the following fortran source:
program vector2
implicit none
integer index, i
integer, parameter :: some_kind_numbe r = selected_real_k ind (p=16)
real (kind = some_kind_numbe r), dimension(4):: vec_a, vec_b
real (kind = some_kind_numbe r) :: res
index = 4

do i = 1, index
vec_a(i)= i**.5

vec_b(i)= (-1)*(i**2)

end do

res = dot_product(vec _a, vec_b)
write (*,*) vec_a, vec_b
write (*,*) res
end program vector2

! gfortran2 -o vector2 vector2.f95
! vector2 >text55.txt 2>text56.txt
//end source continue comment
, except making the inner product calculated externally. I have zero chance
of getting it correct, so I'll spare you the flailing attempt. Screenshot
here: http://zaxfuuq.net/c++5.jpg

To imitate it, I believe the appropriate c++ inner product would be around
negative 25.

--
Gerry Ford

"Er hat sich georgiert." Der Spiegel, 2008, sich auf Chimpy Eins komma null
beziehend.
Feb 18 '08 #1
19 2439
Gerry Ford wrote:
I've been pecking away at writing a program that will calculate the inner
product of two double-width four-vectors.

Larry thinks I'm well started with the following source to populate a
vector:
#include <vector>
#include <algorithm>
#include <iterator>
#include <iostream>
#include <math.h>

int main() {
std::vector<dou blefour_vector;

for (double i=0.0; i<4.0; i++)
four_vector.pus h_back(sqrt(i)) ;

std::cout.preci sion(16);

std::copy(four_ vector.begin(), four_vector.end (),
std::ostream_it erator<double>( std::cout, "\n"));
return 0;
}

How do I imitate the following fortran source:
program vector2
implicit none
integer index, i
integer, parameter :: some_kind_numbe r = selected_real_k ind (p=16)
real (kind = some_kind_numbe r), dimension(4):: vec_a, vec_b
real (kind = some_kind_numbe r) :: res
index = 4

do i = 1, index
vec_a(i)= i**.5

vec_b(i)= (-1)*(i**2)

end do

res = dot_product(vec _a, vec_b)
write (*,*) vec_a, vec_b
write (*,*) res
end program vector2

! gfortran2 -o vector2 vector2.f95
! vector2 >text55.txt 2>text56.txt
//end source continue comment
, except making the inner product calculated externally. I have zero
chance
of getting it correct, so I'll spare you the flailing attempt. Screenshot
here: http://zaxfuuq.net/c++5.jpg

To imitate it, I believe the appropriate c++ inner product would be around
negative 25.
What about using

std::inner_prod uct( vec_a.begin(), vec_a.end(), vec_b.begin(), double() );

from the <numericheade r?
Best

Kai-Uwe Bux

Feb 18 '08 #2
Gerry Ford wrote:
I've been pecking away at writing a program that will calculate the
inner product of two double-width four-vectors.

Larry thinks I'm well started with the following source to populate a
vector:
#include <vector>
#include <algorithm>
#include <iterator>
#include <iostream>
#include <math.h>

int main() {
std::vector<dou blefour_vector;

for (double i=0.0; i<4.0; i++)
four_vector.pus h_back(sqrt(i)) ;

std::cout.preci sion(16);

std::copy(four_ vector.begin(), four_vector.end (),
std::ostream_it erator<double>( std::cout, "\n"));
return 0;
}

How do I imitate the following fortran source:
program vector2
implicit none
integer index, i
integer, parameter :: some_kind_numbe r = selected_real_k ind (p=16)
real (kind = some_kind_numbe r), dimension(4):: vec_a, vec_b
real (kind = some_kind_numbe r) :: res
index = 4

do i = 1, index
vec_a(i)= i**.5

vec_b(i)= (-1)*(i**2)

end do

res = dot_product(vec _a, vec_b)
write (*,*) vec_a, vec_b
write (*,*) res
end program vector2

! gfortran2 -o vector2 vector2.f95
! vector2 >text55.txt 2>text56.txt
//end source continue comment
, except making the inner product calculated externally. I have zero
chance of getting it correct, so I'll spare you the flailing attempt.
Screenshot here: http://zaxfuuq.net/c++5.jpg

To imitate it, I believe the appropriate c++ inner product would be
around negative 25.
You are not actually showing the fortran function that calculates the dot
product. That fortran source code simply populates 2 arrays of 4 elements
then calls the function dot_product(). It is the function dot_product you
want to code, but you aren't showing the souce for that.

In fortran ** is the power symbol, in C and C++ you can use the pow
function. Although some number raised to the power of 2 it's just as simple
to multiply the number by itself. Raising a number to the power of .5 is
taking the square root of it. So basically all that fortran code is filling
one array of 4 elements with the square roots of 1 to 4, the second 4
element array with the squares of 1 to 4, then calling the function
dot_product on them which returns a single number.
--
Jim Langston
ta*******@rocke tmail.com
Feb 18 '08 #3

"Jim Langston" <ta*******@rock etmail.comwrote in message
news:Jw******** ******@newsfe05 .lga...
Gerry Ford wrote:
>To imitate it, I believe the appropriate c++ inner product would be
around negative 25.

You are not actually showing the fortran function that calculates the dot
product. That fortran source code simply populates 2 arrays of 4 elements
then calls the function dot_product(). It is the function dot_product you
want to code, but you aren't showing the souce for that.

In fortran ** is the power symbol, in C and C++ you can use the pow
function. Although some number raised to the power of 2 it's just as
simple to multiply the number by itself. Raising a number to the power of
.5 is taking the square root of it. So basically all that fortran code is
filling one array of 4 elements with the square roots of 1 to 4, the
second 4 element array with the squares of 1 to 4, then calling the
function dot_product on them which returns a single number.
You're prettymuch right on all this. I appreciate you talking through this
source for the benefit of those less familiar with my common C extension of
choice.

There isn't fortran code for dot_product, as it comes with the food over
there. That shocked the heck out of me the first time I realized it. I was
given to understand that c++ had likewise, but not to worry. With what we
have for headers, we can write it from scratch.

double float c++_dot_product (array vec_a , array vec_b, integer index)
{
// declare local vars
res = 0;
term=0;
sum=0;
for (i = 0; i < index; ++ i)
{
term=vec_a(i)*v _b(i);
sum = sum + term;

}
res = powl(sum, .5);

return res;
}

How does one correctly code the caller for this and the external function
itself?

--
Gerry Ford

"Er hat sich georgiert." Der Spiegel, 2008, sich auf Chimpy Eins komma null
beziehend.
Feb 18 '08 #4
Gerry Ford wrote:
"Jim Langston" <ta*******@rock etmail.comwrote in message
news:Jw******** ******@newsfe05 .lga...
>Gerry Ford wrote:
>>To imitate it, I believe the appropriate c++ inner product would be
around negative 25.

You are not actually showing the fortran function that calculates
the dot product. That fortran source code simply populates 2 arrays
of 4 elements then calls the function dot_product(). It is the
function dot_product you want to code, but you aren't showing the
souce for that. In fortran ** is the power symbol, in C and C++ you can
use the pow
function. Although some number raised to the power of 2 it's just as
simple to multiply the number by itself. Raising a number to the
power of .5 is taking the square root of it. So basically all that
fortran code is filling one array of 4 elements with the square
roots of 1 to 4, the second 4 element array with the squares of 1 to
4, then calling the function dot_product on them which returns a
single number.
You're prettymuch right on all this. I appreciate you talking
through this source for the benefit of those less familiar with my
common C extension of choice.

There isn't fortran code for dot_product, as it comes with the food
over there. That shocked the heck out of me the first time I
realized it. I was given to understand that c++ had likewise, but
not to worry. With what we have for headers, we can write it from
scratch.
double float c++_dot_product (array vec_a , array vec_b, integer
index) {
// declare local vars
res = 0;
term=0;
sum=0;
for (i = 0; i < index; ++ i)
{
term=vec_a(i)*v _b(i);
sum = sum + term;

}
res = powl(sum, .5);

return res;
}

How does one correctly code the caller for this and the external
function itself?
Output of the follow program is:
0
1
1.4142135623730 95
1.7320508075688 77
0
1
4
9
Dot Product: 4.7164935617058 02

#include <cmath>
#include <vector>
#include <iostream>

double dot_product (const std::vector<dou ble>& vec_a, const
std::vector<dou ble>& vec_b)
{
if ( vec_a.size() != vec_b.size() )
{
std::cerr << "Vectors for dot product are not same size!\n";
return 0.0;
}

double sum = 0;
for ( std::size_t i = 0; i < vec_a.size(); ++i )
{
sum += vec_a[i] * vec_b[i];
}
return std::pow(sum, .5);
}

// Following prototype is not needed in this program since
// the definition is above, but would be used in another
// source file without the previous definition.
double dot_product (const std::vector<dou ble>& vec_a, const
std::vector<dou ble>& vec_b);

int main()
{
std::vector<dou blevec_a;
std::vector<dou blevec_b;

for ( int i = 0; i < 4; ++i )
{
vec_a.push_back ( std::sqrt( static_cast<dou ble>( i )) );
vec_b.push_back ( i * i );
}

std::cout.preci sion(16);

std::copy(vec_a .begin(), vec_a.end(),
std::ostream_it erator<double>( std::cout, "\n"));
std::copy(vec_b .begin(), vec_b.end(),
std::ostream_it erator<double>( std::cout, "\n"));

std::cout << "Dot Product: " << dot_product(vec _a, vec_b) << "\n";
return 0;
}

An alternative to the static_cast<dou ble>( i ) is chaning the for loop with
a double.

for ( double i = 0; i < 4.0; i += 1.0 )
{
vec_a.push_back ( std::sqrt( i ) );
vec_b.push_back ( i * i );
}

--
Jim Langston
ta*******@rocke tmail.com
Feb 18 '08 #5
Jim Langston a écrit :
Gerry Ford wrote:
>"Jim Langston" <ta*******@rock etmail.comwrote in message
news:Jw******* *******@newsfe0 5.lga...
>>Gerry Ford wrote:
To imitate it, I believe the appropriate c++ inner product would be
around negative 25.
You are not actually showing the fortran function that calculates
the dot product. That fortran source code simply populates 2 arrays
of 4 elements then calls the function dot_product(). It is the
function dot_product you want to code, but you aren't showing the
souce for that. In fortran ** is the power symbol, in C and C++ you can
use the pow
function. Although some number raised to the power of 2 it's just as
simple to multiply the number by itself. Raising a number to the
power of .5 is taking the square root of it. So basically all that
fortran code is filling one array of 4 elements with the square
roots of 1 to 4, the second 4 element array with the squares of 1 to
4, then calling the function dot_product on them which returns a
single number.
You're prettymuch right on all this. I appreciate you talking
through this source for the benefit of those less familiar with my
common C extension of choice.

There isn't fortran code for dot_product, as it comes with the food
over there. That shocked the heck out of me the first time I
realized it. I was given to understand that c++ had likewise, but
not to worry. With what we have for headers, we can write it from
scratch.
double float c++_dot_product (array vec_a , array vec_b, integer
index) {
// declare local vars
res = 0;
term=0;
sum=0;
for (i = 0; i < index; ++ i)
{
term=vec_a(i)* v_b(i);
sum = sum + term;

}
res = powl(sum, .5);

return res;
}

How does one correctly code the caller for this and the external
function itself?

Output of the follow program is:
0
1
1.4142135623730 95
1.7320508075688 77
0
1
4
9
Dot Product: 4.7164935617058 02

#include <cmath>
#include <vector>
#include <iostream>

double dot_product (const std::vector<dou ble>& vec_a, const
std::vector<dou ble>& vec_b)
{
if ( vec_a.size() != vec_b.size() )
{
std::cerr << "Vectors for dot product are not same size!\n";
return 0.0;
}

double sum = 0;
for ( std::size_t i = 0; i < vec_a.size(); ++i )
{
sum += vec_a[i] * vec_b[i];
}
return std::pow(sum, .5);
}

// Following prototype is not needed in this program since
// the definition is above, but would be used in another
// source file without the previous definition.
double dot_product (const std::vector<dou ble>& vec_a, const
std::vector<dou ble>& vec_b);

int main()
{
std::vector<dou blevec_a;
std::vector<dou blevec_b;

for ( int i = 0; i < 4; ++i )
{
vec_a.push_back ( std::sqrt( static_cast<dou ble>( i )) );
vec_b.push_back ( i * i );
}

std::cout.preci sion(16);

std::copy(vec_a .begin(), vec_a.end(),
std::ostream_it erator<double>( std::cout, "\n"));
std::copy(vec_b .begin(), vec_b.end(),
std::ostream_it erator<double>( std::cout, "\n"));

std::cout << "Dot Product: " << dot_product(vec _a, vec_b) << "\n";
return 0;
}

An alternative to the static_cast<dou ble>( i ) is chaning the for loop with
a double.

for ( double i = 0; i < 4.0; i += 1.0 )
{
vec_a.push_back ( std::sqrt( i ) );
vec_b.push_back ( i * i );
}
In fact, in C++, the only version of std::sqrt() is double sqrt(double);
the other variants with float and long double are C99 additions. In the
standard case, the integer should be promoted to double and the
static_cast<dou ble>() is not necessary.
for ( int i = 0; i < 4; ++i )
{
vec_a.push_back ( std::sqrt( i ) );
vec_b.push_back ( i * i );
}

I guess that in the case of C99 extension, an integer in parameter is
forwarded to the double flavor otherwise, there would be an ambiguity.

Michael
Feb 18 '08 #6
On Feb 18, 1:49 pm, Michael DOUBEZ <michael.dou... @free.frwrote:

[...]
In fact, in C++, the only version of std::sqrt() is double
sqrt(double); the other variants with float and long double
are C99 additions.
Overloads for float and long have been present in C++ at least
since the 1998 version of the standard.
In the standard case, the integer should be promoted to double
and the static_cast<dou ble>() is not necessary.
for ( int i = 0; i < 4; ++i )
{
vec_a.push_back ( std::sqrt( i ) );
vec_b.push_back ( i * i );
}
I guess that in the case of C99 extension, an integer in
parameter is forwarded to the double flavor otherwise, there
would be an ambiguity.
Why? I think that there will be an ambiguity if std::sqrt() is
called with an int. That's what the standard (and Sun CC) say,
anyway.

--
James Kanze (GABI Software) email:ja******* **@gmail.com
Conseils en informatique orientée objet/
Beratung in objektorientier ter Datenverarbeitu ng
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Feb 18 '08 #7
On 18 Feb., 06:41, "Gerry Ford" <inva...@invali d.netwrote:
I've been pecking away at writing a program that will calculate the inner
product of two double-width four-vectors.
Why? There are libraries that do this better than you or I could
reasonably hope to do unless we really took the time (and perhaps even
then! ;-)).
I am quite sure of that even if I don't really know what double-width
and four-vector is. These are neither terms of C++ nor of mathematics.
>
Larry thinks I'm well started with the following source to populate a
vector:
#include <vector>
#include <algorithm>
#include <iterator>
#include <iostream>
#include <math.h>

int main() {
std::vector<dou blefour_vector;

for (double i=0.0; i<4.0; i++)
four_vector.pus h_back(sqrt(i)) ;
This loop is really dangerous. You risk having five elements in your
vector. Also it is inefficient as you (presumably!) know that there
should be four elements in the vector.
Use reserve or prefer a fixed-size vector which imo is the best
solution provided that you will always have a fixed number of elements
in your vector.
>
std::cout.preci sion(16);

std::copy(four_ vector.begin(), four_vector.end (),
std::ostream_it erator<double>( std::cout, "\n"));
return 0;

}

How do I imitate the following fortran source:
program vector2
implicit none
integer index, i
integer, parameter :: some_kind_numbe r = selected_real_k ind (p=16)
real (kind = some_kind_numbe r), dimension(4):: vec_a, vec_b
real (kind = some_kind_numbe r) :: res

index = 4

do i = 1, index
* vec_a(i)= i**.5

* vec_b(i)= (-1)*(i**2)
this would be something like

for (size_t i(0); i < 4; ++i)
{
a[i] = sqrt(i);
b[i] = -i*i;
}
>
end do

res = dot_product(vec _a, vec_b)

write (*,*) vec_a, vec_b
write (*,*) res
I can't imagine you having problems with the dot-product and I do not
understand the fortran output formats.
>
end program vector2
/Peter
Feb 18 '08 #8


"Jim Langston" <ta*******@rock etmail.comwrote in message
news:_e******** ***@newsfe02.lg a...
Gerry Ford wrote:

Thanks, Jim. In particular I appreciate the absence of disparaging remarks
concerning the god-awful syntax on my first function in c++ in a decade.
std::copy(vec_a .begin(), vec_a.end(),
std::ostream_it erator<double>( std::cout, "\n"));
std::copy(vec_b .begin(), vec_b.end(),
std::ostream_it erator<double>( std::cout, "\n"));
I've got 2 compilers that object to the above, to wit:
42 C:\Program Files\gfortran\ fortran source\vector3. cpp `ostream_iterat or'
is not a member of `std'
,with dev cpp and
vector3.cpp:52: 12: warning: no newline at end of file
vector3.cpp: In function 'int main()':
vector3.cpp:42: error: 'ostream_iterat or' is not a member of 'std'
vector3.cpp:42: error: expected primary-expression before 'double'
vector3.cpp:44: error: 'ostream_iterat or' is not a member of 'std'
vector3.cpp:44: error: expected primary-expression before 'double'
with g++.

What gives?
--
Gerry Ford

"Er hat sich georgiert." Der Spiegel, 2008, sich auf Chimpy Eins komma null
beziehend.
Feb 19 '08 #9

"peter koch" <pe************ ***@gmail.comwr ote in message
news:bc******** *************** ***********@s13 g2000prd.google groups.com...
On 18 Feb., 06:41, "Gerry Ford" <inva...@invali d.netwrote:
I've been pecking away at writing a program that will calculate the inner
product of two double-width four-vectors.
Why? There are libraries that do this better than you or I could
reasonably hope to do unless we really took the time (and perhaps even
then! ;-)).
I am quite sure of that even if I don't really know what double-width
and four-vector is. These are neither terms of C++ nor of mathematics.

--->Do you know how to get these libraries hooked into a garden-variety
console app?

As to the rest, you sound german, so I'll address you so. Ein Vierervektor
soll etwa nicht in der Mathematik sein? Sie ercheinen im ersten Paragraph
in Einstein 1916 Mathematische Hilfsmittel fuer die Aufstellung allgemein
kovarianter Gleichungen.

Double width is twice the width of a float.

--
Gerry Ford

"Er hat sich georgiert." Der Spiegel, 2008, sich auf Chimpy Eins komma null
beziehend.
Feb 19 '08 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
2010
by: Jeff Thies | last post by:
I've been thinking about writing CSS that's easy to read and adjust at a later date (often by someone else). Here's where I seem to be headed: Breaking the page down into container divs, setting a class for each of them like: ..header, .left_column, .main_content ,.right_column, .footer, .nav
0
2796
by: Ida | last post by:
Hi, I am trying to build an dll with Microsoft Visual C++ but during the linking phase I get linking errors. Script.obj : error LNK2019: unresolved external symbol __imp__PyString_AsString referenced in function "public: static struct _object * __cdecl SomeFunctionName Script.obj : error LNK2019: unresolved external symbol __imp__PyObject_Repr referenced in function "public: static struct _object * __cdecl
47
3853
by: Richard Hayden | last post by:
Hi, I have the following code: /******************************** file1.c #include <iostream> extern void dummy(); inline int testfunc() {
1
8403
by: Aravind | last post by:
we have two files: 1. rc4.c (defines one function "create_pin()") 2. MyImpl.c(calling the function "create_pin()"),This implements JNI method. 1.When I am trying to create .dll file with one file rc4.obj(rc4.c),it is creating the .dll file without any error. Command : ILINK32 rc4.obj 2.But,when we are trying to create .dll file with two .obj files with following errors.
1
1500
by: Chuck Mendell | last post by:
I am having problem with external javascripts. My OS is XP Pro. I am told to create an external javascript using a .js extension. (I did that) The external .js is very simple, containing: function a_message() { alert('I came from an external script! Ha, Ha, Ha!!!!'); } I am told to create an HTML page that accesses the .js script. (I did that).
2
5319
by: f rom | last post by:
----- Forwarded Message ---- From: Josiah Carlson <jcarlson@uci.edu> To: f rom <etaoinbe@yahoo.com>; wxpython-users@lists.wxwidgets.org Sent: Monday, December 4, 2006 10:03:28 PM Subject: Re: 1>make_buildinfo.obj : error LNK2019: unresolved external symbol __imp__RegQueryValueExA@24 referenced in function _make_buildinfo2 Ask on python-list@python.org . - Josiah
1
7256
by: AM | last post by:
What I am trying to do is write raw data to a USB to parallel adapter to control an external device (as I dont have a parallel port) using VC++.net or C# The adapter is not a true parallel port and is hence treated as a USB device. How would I be able to write raw data or ASCII data to this adapter? Can I use the WritePort...
2
2713
by: =?Utf-8?B?YmFzaA==?= | last post by:
Hello, I am compiling a CPP code using Visual studion .net 2003. I get the following error, despite having windldap.h and wldap32.dll in my include and lib paths. Here is the error. uuid.lib rpcrt4.lib ole32.lib oleaut32.lib uuid.lib Creating library libsq00.lib and object libsq00.exp libq00.lib(ootb.obj) : error LNK2019: unresolved external symbol _ldap_unbind@4
0
1246
by: xahlee | last post by:
Here's a little tutorial that lets you write emacs commands for processing the current text selection in emacs in your favorite lang. Elisp Wrapper For Perl Scripts http://xahlee.org/emacs/elisp_perl_wrapper.html plain text version follows. ------------------------------------- Elisp Wrapper For Perl Scripts
0
8469
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8903
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8814
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
8661
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
7419
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
5684
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4391
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2800
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
1794
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.