Вопрос № 74553: Какие параметры нужно написать в функции ShellExecute(), чтобы запустить web сайт, например www.mail.ru. И какие параметры для запуска любой программы?...Вопрос № 74609: Добрый день Уважаемые эксперты!
Пишу приложение, которое вызывается из другого приложения. В родительском приложении существует параметры (имя пользователя и права), которые мне необходимо получить в дочернем.
Каким образом я могу это сделать...Вопрос № 74655: Уважаемые эксперты помогите в написании функции которая получает в качестве параметров целое число и систему счисления в которую его нужно перевести.Например 14 в 5-ю -24, 28 в 16-ю 1С. Систем счисления 32. При прямом переводе число получается наобор...Вопрос № 74675: Привет !
Не решить след. задачу
Даны вещественные массивы A[5][6], B[6]. Опpеделить значения вещественного массива C[6] по правилу:
C[j]=сумме j-го столбца массива A при B[j]>0
C[j]=0 при B[j]=0
C[j]=A[0][j]+A[4][j] при B[j]&l...
Вопрос № 74.553
Какие параметры нужно написать в функции ShellExecute(), чтобы запустить web сайт, например www.mail.ru. И какие параметры для запуска любой программы?
Отвечает: Tek
Здравствуйте, Костенко Игорь Викторович!
ShellExecute(NULL, "open", "www.mail.ru", NULL, NULL, SW_SHOWNORMAL);
>>И какие параметры для запуска любой программы?
А что MSDN с утра отменили или закрыли? А мужики то не знают (С)
--------- WinApi - жутко неудобные костыли, MFC и VCL - немногим полезнее, но ничего лучше еще не создано (C)Почти Уинстон Черчилль :)
Ответ отправил: Tek (статус: 9-ый класс)
Ответ отправлен: 07.02.2007, 11:48 Оценка за ответ: 5
Отвечает: Базанов Иван Александрович
Здравствуйте, Костенко Игорь Викторович!
ShellExecute(NULL, "open", "iexplore.exe","www.mail.ru", NULL, SW_NORMAL)
Насчет "любой программы" - не понял.
--------- Программист ошибается дважды: первый раз при рождении, второй при выборе профессии
Ответ отправил: Базанов Иван Александрович (статус: 4-ый класс)
Ответ отправлен: 07.02.2007, 11:53 Оценка за ответ: 5
Отвечает: Tamashev Denis M
Здравствуйте, Костенко Игорь Викторович!
String doc= "http://www.softholm.com";
ShellExecute ( Handle, "open" , doc.c_str(), NULL, NULL, SW_SHOW );
или поставить на запуск программу =) Вот и всё.
Ответ отправил: Tamashev Denis M (статус: 3-ий класс)
Ответ отправлен: 07.02.2007, 12:34 Оценка за ответ: 5
Отвечает: kool
Здравствуйте, Костенко Игорь Викторович!
Например так: (см. приложение)
Для других программ другие параметры.
Удачи!
Приложение:
--------- I am.
Ответ отправил: kool (статус: 7-ой класс)
Ответ отправлен: 07.02.2007, 18:59 Оценка за ответ: 5
Вопрос № 74.609
Добрый день Уважаемые эксперты!
Пишу приложение, которое вызывается из другого приложения. В родительском приложении существует параметры (имя пользователя и права), которые мне необходимо получить в дочернем.
Каким образом я могу это сделать? Если возможно с небольшими примерами.
PS: Работаю в Builder5.
Заранее благодарен.
Отвечает: Tek
Здравствуйте, Goretsky Anton!
Вариантов много все-таки.
Но привожу те что сходу пришли в голову:
1. Передача через файл-обменник
2. Передача в параметрах приложения
3. Использование общего хранилища данных (БД например)
4. Получение собственно из окон родительского (если эти данные отображены)
5. Использовать COM-соединение - ну это уже изврат крайней степени :)
--------- WinApi - жутко неудобные костыли, MFC и VCL - немногим полезнее, но ничего лучше еще не создано (C)Почти Уинстон Черчилль :)
Ответ отправил: Tek (статус: 9-ый класс)
Ответ отправлен: 07.02.2007, 17:49 Оценка за ответ: 5 Комментарий оценки: Спасибо! Я даже не представлял, что существует столько вариантов решения! :)
Отвечает: Mitya86
Здравствуйте, Goretsky Anton!
передавай параметры в коммандной строке(см.приложение)
Приложение:
Ответ отправил: Mitya86 (статус: 3-ий класс)
Ответ отправлен: 07.02.2007, 18:19 Оценка за ответ: 5 Комментарий оценки: Спасибо за помощь! Пример строки очень помог!
Отвечает: kool
Здравствуйте, Goretsky Anton!
Дочерний процесс нужно вызывать как
порожденный с наследованием от родительского
его свойст (см. ф-цию CreateProcess) и
передавать необходмые параметры, например через командную строку.
Удачи!
--------- I am.
Ответ отправил: kool (статус: 7-ой класс)
Ответ отправлен: 07.02.2007, 18:40 Оценка за ответ: 5 Комментарий оценки: Спасибо! Именно то что мне нужно!
Отвечает: ramok
Здравствуйте, Goretsky Anton!
традиционно такая задача решается с помощью переменных окружения.
работа с ними осуществляется через стандартные функции C putenv()/setenv()/getenv()
особенность в том что переменные окружение родительского приложения наследуются в потомке.
вот если бы вам требовалось передать данные из дочернего приложения в родительское - то пришлось бы прибегать к другим сложным способам которые вам уже рассказали.
пример в приложении.
примеры из интернета:
http://www.cprogramming.com/fod/putenv.html
http://www.cprogramming.com/fod/getenv.html
Приложение:
Ответ отправил: ramok (статус: Студент)
Ответ отправлен: 07.02.2007, 18:41 Оценка за ответ: 5 Комментарий оценки: Спасибо! интересный вариант. Но в моем случае не совсем подойдет. У меня приложение может запускаться очень часто и с разными параметрами. И наверное не очень целесообразно их будет хранить в переменных окружения. Но все равно большое спасибо за ответ!
Вопрос № 74.655
Уважаемые эксперты помогите в написании функции которая получает в качестве параметров целое число и систему счисления в которую его нужно перевести.Например 14 в 5-ю -24, 28 в 16-ю 1С. Систем счисления 32. При прямом переводе число получается наоборот, есть идея использовать динамический массив, но может есть более простой путь.Программирую под консолью.
Отправлен: 07.02.2007, 21:41
Вопрос задал: Krush (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Терсков Сергей
Здравствуйте, Krush!
Вот, например, перевод систем исчисления при помощи строк. Код в приложении. Функция
string change_calc_system(const string& number, int base_sys, int dest_sys, const string& digits_set);
принимает число в виде строки const string& number в системе исчисления int base_sys и переводит его в систему int dest_sys. При переводе используется набор символов const string& digits_set.
Приложение:
Ответ отправил: Терсков Сергей (статус: 5-ый класс)
Ответ отправлен: 08.02.2007, 06:37 Оценка за ответ: 4
Отвечает: wils0n
Здравствуйте, Krush!
#include<iostream>
#include<string>
using std::string;
const char*
dec2any(unsigned long n, short base)
{
string rep;
if ((base < 2) || (base > 32)) return 0;
while (n > 0) {
char m = (char)(n % base);
m += (m>9) ? 55 : 48;
rep.insert(rep.begin(),1,m);
n = n / base;
}
return rep.c_str();
}
int main()
{
unsigned long n;
short base;
std::cout << "Input n and base: ";
std::cin >> n >> base;
std::cout << dec2any(n,base) << std::endl;
return 0;
}
--------- Life is like a box with chocolate. You never know what you're gonna get. (c) Forrest Gump's mom
Ответ отправил: wils0n (статус: 6-ой класс)
Ответ отправлен: 08.02.2007, 12:04 Оценка за ответ: 3
Отвечает: Ross
Здравствуйте, Krush!
#include <conio.h>
bool dec_to_base(unsigned int dec,unsigned char base)
{
if (base<2 || base >32) return false;
char digits[] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
if (dec/base) dec_to_base(dec/base,base);
putch(digits[dec%base]);
return true;
}
void main()
{
dec_to_base(254,16);
}
Ответ отправил: Ross (статус: 5-ый класс)
Ответ отправлен: 09.02.2007, 21:29 Оценка за ответ: 5
Вопрос № 74.675
Привет !
Не решить след. задачу
Даны вещественные массивы A[5][6], B[6]. Опpеделить значения вещественного массива C[6] по правилу:
C[j]=сумме j-го столбца массива A при B[j]>0
C[j]=0 при B[j]=0
C[j]=A[0][j]+A[4][j] при B[j]<0
Значение переменной i изменяется от 0 до 5.
помогите плиз!!
Отправлен: 08.02.2007, 01:01
Вопрос задал: Eayhiv (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Терсков Сергей
Здравствуйте, Eayhiv!
Попробуйте вариант приведенный в приложении...
Приложение:
Ответ отправил: Терсков Сергей (статус: 5-ый класс)
Ответ отправлен: 08.02.2007, 03:19