ken_nogi/NodeJS/UiRobot確認/searchRobot.js
Kenichiro NOGI 88a402ce0f up
2026-07-10 18:13:30 +09:00

48 lines
1.6 KiB
JavaScript

const path = require('path');
const fs = require('fs');
const { execSync } = require('child_process');
async function findAndSetUiRobotPath() {
const userProfile = process.env.USERPROFILE;
const appDataPath = path.join(userProfile, 'AppData', 'Local', 'Programs');
const uiRobotExeName = 'UiRobot.exe';
let found = false;
try {
// UiRobot.exeを再帰的に検索
function searchFile(dir) {
try {
const files = fs.readdirSync(dir);
for (const file of files) {
const fullPath = path.join(dir, file);
const stat = fs.statSync(fullPath);
if (stat.isFile() && file === uiRobotExeName) {
console.log(`Found: ${fullPath}`);
execSync(`setx UiRobot "${fullPath}"`, { stdio: 'inherit' });
found = true;
return true;
} else if (stat.isDirectory()) {
if (searchFile(fullPath)) {
return true;
}
}
}
} catch (err) {
// アクセス拒否などのエラーは無視
}
return false;
}
searchFile(appDataPath);
if (found) {
console.log('Environment variable "UiRobot" has been set.');
} else {
console.log('UiRobot.exe not found in AppData\Local\Programs.');
}
} catch (err) {
console.error('Error:', err.message);
}
}
findAndSetUiRobotPath();