i need to write a program that auto detects windows and unix machines in C# on a network then copy a folder from a windows shared directory to the remote machine and gather how many processors are on the machine. I don't know of any C# functions that would help with detecting machines and their ips. I don't have access to active directory or have a central server for all the machines. I can create a perl program to run on the client machines. (also I'm not sure how to access windows shares on a unix machines) general guidance and code examples would be appreciated thanks
code to auto detect machines
443 Views Asked by AudioBubble At
2
There are 2 best solutions below
0
ikegami
On
You have two very different questions.
1. Detect if a machine is a Windows or unix machine.
$^O will give you that in Perl.
$ perl -E'say $^O'
linux
>perl -E"say $^O"
MSWin32
2. Access a remote Windows file share from a unix machine.
Well, it's a SMB file share, for starters.
So all you really need is an SMB client. I quickly found Filesys::SmbClient, a Perl module that seems to fit the bill.
Related Questions in C#
- Passing arguments to main in C using Eclipse
- kernel module does not print packet info
- error C2016 (C requires that a struct or union has at least one member) and structs typedefs
- Drawing with ncurses, sockets and fork
- How to catch delay-import dll errors (missing dll or symbol) in MinGW(-w64)?
- Configured TTL for A record(s) backing CNAME records
- Allocating memory for pointers inside structures in functions
- Finding articulation point of undirected graph by DFS
- C first fgets() is being skipped while the second runs
- C std library don't appear to be linked in object file
- gcc static library compilation
- How to do a case-insensitive string comparison?
- C programming: Create and write 2D array of files as function
- How to read a file then store to array and then print?
- Function timeouts in C and thread
Related Questions in WINDOWS
- how to play a sounds in c# forms?
- Echo behaviour of Microsoft Windows Telnet Client
- Getting error while running spark-shell on my system; pyspark is running fine
- DirectX 9 With No SDK Installed - How To Translate a D3DMATRIX?
- Gradle 8.7 cannot find installed JDK 22 in IntelliJ
- 'IOException: The cloud file provider is not running', when trying to delete 'cloud' folder
- Cannot load modules/mod_dav_svn.so into server
- Issue with launching application after updating ElectronJs to version 28.0.0 on Windows and Linux
- 32-bit applications do not display some files in Windows 10
- 'bun' is not recognized as an internal or external command
- mkssecreenshotmgr taking a screenshot
- Next js installation in windows 7 os
- Can't resize a partition using Mini Tool?
- Is there any way to set a printer as default according with Active Directory Policy Security Group and PC hostname?
- Electron Printing not working on Windows (Works on Mac)
Related Questions in PERL
- Perl Regex for converting query strings
- Cross compiling perl for Android ld.lld: error: unable to find library -lpthread
- Regexp to remove small numbers and leave large ones
- `df` command not capturing entire output in perl
- Webmin CentOS7 AWS backup errors - perl(S3::AWSAuthConnection) can't be installed
- How to ignore perm errors with Path::Tiny 'visit'? (Windows)
- Why does setting `*\` to a scalar (string) reference not result in auto printing
- Regex for deconstructing SQL where statement
- Random characters in DS record from Net::DNS:RR when calling print/string
- Perl with Selenium: cannot save the Web page with Ctrl+S
- openssl pbkdf2 and perl
- Strawberry Perl using a separate winlibs distro
- Perl / Undefined value as a HASH reference when running SNMP queries
- Timestamp with timezone: works with isql but not with DBD::Firebird
- Slurping a file ... syntax error - example from perldoc
Related Questions in UNIX
- Reading & Writing to the same file from terminal
- `df` command not capturing entire output in perl
- Why is it that when I pass certain directory names to `ls`, sometimes it does not list their contents?
- Detect Mouse Clicks; Terminate Program on Scroll Wheel Movement
- grep expression behaving weird (unix/mac) while reading a conf file
- Unix sub path creation and copy files
- Ignoring folders in The Silver Searcher `ag`
- struct nameidata-Linux Kernel Module
- telegraf service not able to retrieve data using the journalctl commands
- Order of options in Unix sed for editing files in-place
- Trying to echo line variable along with another variable inside a while read loop
- failed to handshake with xxx: authentication error?
- UDP socket client not able to receive data
- Invalid SCA token in unix
- How can I keep randomized UNIX timestamp in specific hour range in SQL?
Related Questions in REMOTE-MANAGEMENT
- Check to see if computer is on
- Uninstall MS Teams with Powershell script trough N-Able RMM doesn't work while locally it does work. Why is that? What can i do to fix it?
- Hyper V Remote Manage Windows 2012 Server R2 from Windows 10 otuside domain not working
- Connect to Windows 10 Hyper-V from Windows 7 (remote management)
- How to access WinRM in C#
- JMX scalabilty: can it be used to manage 400+ instances?
- How can I upgrade the Android OS programmatically on a device with root access?
- Powershell Script Variables
- Why Windows event forwarding works in “Collector initiated” and not in “source computer initiated”?
- code to auto detect machines
- how to programmatically enable remote management under sharing in Mac OS X 10.8
- Unable to use PowerShell Enter-PSSession to connect to remote server
- Connect to remote server using winrm without adding the server to TrustedHosts
- Comparing a String Variable via PowerShell
- The RPC server is unavailable. when calling ManagementScope.Connect
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
You can use Nmap in order to discover network machines, it is client-less and with the -O parameter it will tell you if the machine is running a Windows OS or a Linux one. You can then use SNMP or WMI to retrieve the number of CPUs even though that requires machines to have SNMP or WMI installed. However with a client running on the remote machine everything would be much easier, expecially if you have to copy files.