Здравствуйте, поставил себе рефлектор от redGate, захотел удалить, да вот не знаю где его мне найти, в "параметры и компоненты" его нету, пользуюсь VS 2015 community, при запуске инсталятора программа сразу установилась как расширение. Спасибо
» Программирование в среде .NET (ASP.NET,ADO.NET) на C#/VB.NET
Подскажите, как в C# сделать setup.exe из исходников?
т.е. есть папка
"d-sound"
в ней исполняемый файл d-sound.exe
и файлы .сs
их несколько
как все это закомпилировать в setup.exe
т.е. есть папка
"d-sound"
в ней исполняемый файл d-sound.exe
и файлы .сs
их несколько
как все это закомпилировать в setup.exe
Futurism
Цитата:
Напр. есть стандартное средство: Windows Installer
Цитата:
Подскажите, как в C# сделать setup.exe из исходников?
Напр. есть стандартное средство: Windows Installer
Futurism
Всмотрись в Wix : http://wixtoolset.org/ конкретнее в Burn : http://wixtoolset.org/documentation/manual/v3/bundle/
ну или NSIS : http://nsis.sourceforge.net/Main_Page
Всмотрись в Wix : http://wixtoolset.org/ конкретнее в Burn : http://wixtoolset.org/documentation/manual/v3/bundle/
ну или NSIS : http://nsis.sourceforge.net/Main_Page
Igorr
а нет ли для win 7 x 64 и как и пользоваться?
а нет ли для win 7 x 64 и как и пользоваться?
Futurism
Цитата:
Там же (в ссылке моего предыдущего поста) в "Purpose" есть ссылка "Platform Support of Advertisement.":
Цитата:
Цитата:
См. MSDN и поиск (Google).
Цитата:
а нет ли для win 7 x 64
Там же (в ссылке моего предыдущего поста) в "Purpose" есть ссылка "Platform Support of Advertisement.":
Цитата:
The following advertisement capabilities are available on Windows Server 2008 R2, Windows 7, ...
Цитата:
как и пользоваться?
См. MSDN и поиск (Google).
Нужна помощь с программой.
По умолчанию для работы утилиты используется dism и pkgmgr.exe из системной папки.
Помогите пожалуйста переделать код, чтобы он использовал dism и pkgmgr.exe из той же папки в которой находится сам.
исходник - http://rghost.ru/6CftKpxcW
пробовал связаться с автором, но указанный адрес почты недоступен.
По умолчанию для работы утилиты используется dism и pkgmgr.exe из системной папки.
Помогите пожалуйста переделать код, чтобы он использовал dism и pkgmgr.exe из той же папки в которой находится сам.
исходник - http://rghost.ru/6CftKpxcW
пробовал связаться с автором, но указанный адрес почты недоступен.
superman md
dism в исходниках не упоминается.
pkgmgr.exe запускается без указания пути и соответственно поиск pkgmgr.exe должен начинаться с рабочей папки утилиты.
В Process Monitor можно посмотреть как ищутся и задействуются сторонние файлы.
dism в исходниках не упоминается.
pkgmgr.exe запускается без указания пути и соответственно поиск pkgmgr.exe должен начинаться с рабочей папки утилиты.
В Process Monitor можно посмотреть как ищутся и задействуются сторонние файлы.
Товарищи помогите ребенку прогу написать для зачета. сам на шарпе с 2011 года не пользуюсь а вспоминать некогда срок поджимают завтра нужно сдавать
условие:
-использовать как минимум 1 абстрактный класс
-данные в файле хранить в бинарном формате
-использоваь 1 универсальный метод для пунктов e, f,g
-запись в файл организовать в отдельном потоке, не используя асинхронные делегаты
Разработать информационную систему учета аудиторного фонда университета, которая содержит данные:
1) об аудиторном фонде университета
2)о подразделении университета
Задание: Разработать консольное приложение, обладающее следующим функционалом:
а)выбор файла для работы с данными
b)считывание из файла списка аудиторий в память компьютера
с)запись в файл списка аудиторий из памяти компьтера
d) ввод информации с клавиатуры о новой аудитории
e) вывод на экран спмска всех аудиторий с упорядочианием их по подразделениям университета, за которым закреплена, а при совпадении наименования подразделения-дополнительно по номеру аудитории
g)вывод на экран списка всех аудиторий с упорядочиванием их по назначению
h) выход из приложения с возможностью выбора сохранения(или не сохранения) данных в памяти компьютера в файл.
а также приложение должно содержать меню для выбора возможных действий пользователя(2a-2h)
условие:
-использовать как минимум 1 абстрактный класс
-данные в файле хранить в бинарном формате
-использоваь 1 универсальный метод для пунктов e, f,g
-запись в файл организовать в отдельном потоке, не используя асинхронные делегаты
Разработать информационную систему учета аудиторного фонда университета, которая содержит данные:
1) об аудиторном фонде университета
2)о подразделении университета
Задание: Разработать консольное приложение, обладающее следующим функционалом:
а)выбор файла для работы с данными
b)считывание из файла списка аудиторий в память компьютера
с)запись в файл списка аудиторий из памяти компьтера
d) ввод информации с клавиатуры о новой аудитории
e) вывод на экран спмска всех аудиторий с упорядочианием их по подразделениям университета, за которым закреплена, а при совпадении наименования подразделения-дополнительно по номеру аудитории
g)вывод на экран списка всех аудиторий с упорядочиванием их по назначению
h) выход из приложения с возможностью выбора сохранения(или не сохранения) данных в памяти компьютера в файл.
а также приложение должно содержать меню для выбора возможных действий пользователя(2a-2h)
SIgor33
В армию!..
В армию!..
Alexzzy
Цитата:
Дело такое, пока те ткнул его носом в pkgmgr.exe, используется из живой системы.
Код: RC.StartInfo.FileName = "E:\\AIO\\DISM\\pkgmgr.exe";
Цитата:
pkgmgr.exe запускается без указания пути и соответственно поиск pkgmgr.exe должен начинаться с рабочей папки утилиты.
Дело такое, пока те ткнул его носом в pkgmgr.exe, используется из живой системы.
Код: RC.StartInfo.FileName = "E:\\AIO\\DISM\\pkgmgr.exe";
superman md
Так наверное:
Код: RC.StartInfo.FileName = Path.GetDirectoryName(Environment.GetCommandLineArgs()[0]) + \\pkgmgr.exe";
Так наверное:
Код: RC.StartInfo.FileName = Path.GetDirectoryName(Environment.GetCommandLineArgs()[0]) + \\pkgmgr.exe";
Alexzzy
в первом случае VS жалуется на ошибку в коде, во втором вот такая история - http://i.imgur.com/EN5Rebr.png
если подменить оригиналом то отрабатывает, видно на скрине.
брошу я наверное эту затею, положу всё в одну папку и буду оттуда запускать постоянно.
в первом случае VS жалуется на ошибку в коде, во втором вот такая история - http://i.imgur.com/EN5Rebr.png
если подменить оригиналом то отрабатывает, видно на скрине.
брошу я наверное эту затею, положу всё в одну папку и буду оттуда запускать постоянно.
Цитата:
...
может добавить ключ командной строки, например /x E:\AIO\DISM\
Код: //...
class Program
{
static string _pathToPkgmgr = "pkgmgr.exe"; //+
const string HIVE_MOUNT_DIR = "windows6_x_software";
//...
try
{
_cmdLineArgs = ProcessCmdArgs(args, new char[] { 'p', '?', 'c', 'o', 'l', 'r', 'n', 'h', 'd', 'x'}); //+x
if (_cmdLineArgs.ContainsKey('x')) //+
{
if (!string.IsNullOrEmpty(_cmdLineArgs['x']))
{
_pathToPkgmgr = Path.Combine(_cmdLineArgs['x'], "");
}
}
if (_cmdLineArgs.ContainsKey('?'))
{
//...
//...
RC.StartInfo.FileName = _pathToPkgmgr; //"pkgmgr.exe" -> _pathToPkgmgr
//...
Цитата:
в первом случае VS жалуется на ошибку в коде
Кавычку пропустил. "\\pkgmgr.exe"
Здравствуйте, решил сделать программу на подобие скайпа (мэсэнджэр). Но не знаю какую литературу почитать. Мне нужно научиться выходить в сеть, в общем работать с Интернетом, я думаю вы поняли. Прошу вас подсказать мне книжечку, желательно конечно, что бы она была на примере C#. Спасибо!
ne_viens
Alexzzy
Спасибо еще раз, вы мне очень помогли. Я вот тут решил, а не начать ли мне изучать это дело.
Все уроки которые есть и интернете, нудные какие то, все примеры, математика, я её и в школе то не любил.
О чем это я, ах да, посоветуйте литературу может какую почитать или видео.
Ну а теперь то, из за чего я тут. Нашел в интернете пример таймера и захотел прикрутить к нему NumericUpDown чтобы можно было указать время.
Сам так и не смог разобраться как подставить данные из NumericUpDown в таймер, помогите пожалуйста.
тут исходник - http://rghost.ru/657K8ScDj разобрался сам.
Alexzzy
Спасибо еще раз, вы мне очень помогли. Я вот тут решил, а не начать ли мне изучать это дело.
Все уроки которые есть и интернете, нудные какие то, все примеры, математика, я её и в школе то не любил.
О чем это я, ах да, посоветуйте литературу может какую почитать или видео.
Ну а теперь то, из за чего я тут. Нашел в интернете пример таймера и захотел прикрутить к нему NumericUpDown чтобы можно было указать время.
Сам так и не смог разобраться как подставить данные из NumericUpDown в таймер, помогите пожалуйста.
тут исходник - http://rghost.ru/657K8ScDj разобрался сам.
superman md
Цитата:
Попрбуйте Троелсена - Язык программирования C# 5.0 и платформа .NET 4.5 (6-е издание).
Цитата:
посоветуйте литературу может какую почитать
Попрбуйте Троелсена - Язык программирования C# 5.0 и платформа .NET 4.5 (6-е издание).
Кто-нибудь может помочь найти решение проблемы? Я новичок в Visual и C#, осваиваю.
Создал проект, обычную форму Windows, создал базу данных, как я понимаю в LocalSQLDB, таблицы создал. Файл базы данных в наличии. Заполнил таблицы контрольными данными. Добавил источник данных. Перенёс на форму в DataGrigView. Управление редактированием данных через BindingNavigator. Запускаю, всё хорошо, кроме одного. При нажатие на кнопку сохранить данные вновь введенные не сохраняются в базе данных.
Метод сохранения данных;
private void namesOfEquipmentBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
this.Validate();
this.namesOfEquipmentBindingSource.EndEdit();
this.tableAdapterManager.UpdateAll(this.baseOfDataUMTOMODataSet);
}
Что я делаю не так? Надеюсь на помощь опытных товарищей, с надеждой....
Создал проект, обычную форму Windows, создал базу данных, как я понимаю в LocalSQLDB, таблицы создал. Файл базы данных в наличии. Заполнил таблицы контрольными данными. Добавил источник данных. Перенёс на форму в DataGrigView. Управление редактированием данных через BindingNavigator. Запускаю, всё хорошо, кроме одного. При нажатие на кнопку сохранить данные вновь введенные не сохраняются в базе данных.
Метод сохранения данных;
private void namesOfEquipmentBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
this.Validate();
this.namesOfEquipmentBindingSource.EndEdit();
this.tableAdapterManager.UpdateAll(this.baseOfDataUMTOMODataSet);
}
Что я делаю не так? Надеюсь на помощь опытных товарищей, с надеждой....
Приветствую всех!
В C# новичок, поэтому вопрос наверняка наивный.
Есть вот такой код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication11
{
class ProdSum
{
static void Main(string[] args)
{
double prod;
double sum;
double i;
sum = 0;
prod = 1;
for (i = 1; i <= 10; i*2) // Почему не работает i+2, i*2 и т.д.?
{
sum = sum + i;
prod = prod * i;
}
Console.WriteLine("Сумма равна " + sum);
Console.WriteLine("Произведение равно " + prod);
}
}
}
Вопрос в следующем. Почему, когда я пишу интерацию в цикле for, работает только интерация типа i++ и i-- ? А если, допустим, мне нужно задать цикл повторения i*2, i+2 и т.д., то компилятор выдает ошибку CS0201. Как задать повторение i+2?
В C# новичок, поэтому вопрос наверняка наивный.
Есть вот такой код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication11
{
class ProdSum
{
static void Main(string[] args)
{
double prod;
double sum;
double i;
sum = 0;
prod = 1;
for (i = 1; i <= 10; i*2) // Почему не работает i+2, i*2 и т.д.?
{
sum = sum + i;
prod = prod * i;
}
Console.WriteLine("Сумма равна " + sum);
Console.WriteLine("Произведение равно " + prod);
}
}
}
Вопрос в следующем. Почему, когда я пишу интерацию в цикле for, работает только интерация типа i++ и i-- ? А если, допустим, мне нужно задать цикл повторения i*2, i+2 и т.д., то компилятор выдает ошибку CS0201. Как задать повторение i+2?
Auberdin, потому что третий раздел цикла for содержит действия, которые необходимо выполнить после каждой итерации, а там разрешены только операции присваивания, инкримента, декримента и создание объекта, т.е. конкретно в данном случае i необходимо присвоить какое-либо значение, т.е. i = i * 2.
Выражение i * 2 можно рассматривать как:
* получить значение, которое хранится в i
* умножить его на 2
Обрати внимание, что дальше ничего не происходит, получил ты какое-то число, но оно не сохранено никуда и вообще ничего с ним не происходит.
Выражение i * 2 можно рассматривать как:
* получить значение, которое хранится в i
* умножить его на 2
Обрати внимание, что дальше ничего не происходит, получил ты какое-то число, но оно не сохранено никуда и вообще ничего с ним не происходит.
NeoAnomaly
Спасибо. Это как пример, я тут программирование пытаюсь освоить.
Попробовал по твоему совету и опять ничего не понял.
Код модернизировал вот таким образом:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FOR
{
class ProdSum
{
static void Main()
{
double prod;
double sum;
double i;
sum = 0;
prod = 1;
for (i = 1; i <= 10;)
{
i = i + 1; // изменяю i
sum = sum + i;
prod = prod * i;
}
Console.WriteLine("Сумма равна " + sum);
Console.WriteLine("Произведение равно " + prod);
}
}
}
Как я понял, этот код должен работать аналогично предыдущему, только в строке с комментарием //изменяю i, я по идее могу изменять значение переменной как угодно - делить, умножать и т.д.
Но этот код не работает аналогично предыдущему! При выполнении программа выдает иное значение. Если в первом варианте (с инкрементом) программа выдавала результат: "Сумма равна 55. Произведение равно 3628800.", то во втором варианте программа выдает: "Сумма равна 65. Произведение равно 39916800".
Почему так? Ведь с точки зрения математики цикл одинаков. Начальное значение i=1, пока i не достигнет 10, к i прибавлять значение 1.
Спасибо. Это как пример, я тут программирование пытаюсь освоить.
Попробовал по твоему совету и опять ничего не понял.
Код модернизировал вот таким образом:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FOR
{
class ProdSum
{
static void Main()
{
double prod;
double sum;
double i;
sum = 0;
prod = 1;
for (i = 1; i <= 10;)
{
i = i + 1; // изменяю i
sum = sum + i;
prod = prod * i;
}
Console.WriteLine("Сумма равна " + sum);
Console.WriteLine("Произведение равно " + prod);
}
}
}
Как я понял, этот код должен работать аналогично предыдущему, только в строке с комментарием //изменяю i, я по идее могу изменять значение переменной как угодно - делить, умножать и т.д.
Но этот код не работает аналогично предыдущему! При выполнении программа выдает иное значение. Если в первом варианте (с инкрементом) программа выдавала результат: "Сумма равна 55. Произведение равно 3628800.", то во втором варианте программа выдает: "Сумма равна 65. Произведение равно 39916800".
Почему так? Ведь с точки зрения математики цикл одинаков. Начальное значение i=1, пока i не достигнет 10, к i прибавлять значение 1.
Auberdin почитай более внимательно про цикл for, а конкретно в какой момент времени выполняется каждый из блоков этого цикла.
Добавлено:
И попробуй такой код:
for (i = 1; i <= 10;)
{
sum = sum + i;
prod = prod * i;
i = i + 1; // изменяю i
}
У тебя есть возможность запустить программу под отладкой и выполнять её пошагово, смотри меню Debug(Отладка) в Visual Studio
Добавлено:
И попробуй такой код:
for (i = 1; i <= 10;)
{
sum = sum + i;
prod = prod * i;
i = i + 1; // изменяю i
}
У тебя есть возможность запустить программу под отладкой и выполнять её пошагово, смотри меню Debug(Отладка) в Visual Studio
Спасибо, помогло.
Приветствую всех.
Разбираю очередной пример программирования и не могу догнать как именно работает эта программа:
{
bool p = false, q = false;
int i, j;
for (i = 0; i<2; i++)
{
for (j = 0; j <2; j++)
{
if (i == 0) p = true;
if (i ==1) p = false;
if (j == 0) q = true;
if (j == 1) q = false;
Console.WriteLine("p равно " + p + ", q равно " + q);
if (!p | q)
Console.WriteLine("Результат импликации " + p + " и " + q + " равен " + true);
Console.WriteLine();
}
}
}
Вывод программы:
p равно True, q равно True
Результат импликации True и True равен True
p равно True, q равно False
p равно False, q равно True
Результат импликации False и True равен True
p равно False, q равно False
Результат импликации False и False равен True
Здесь встроен цикл в цикле. Ну первый цикл я понял как проходит - i=0, j=0, соответственно значения p и q = true.
Потом, судя по тому, что p=true, q = false, выполняется только "внутренний" цикл. В результате i=0, j=1.
Потом идет третий цикл. Почему q становится true? Ведь j уже равен единице, т.е. q должен быть false. Когда j успел стать нулем?
И как понять вот эту запись: if (!p | q)? Этот оператор срабатывает каждый цикл. Зачем он тогда нужен?
Разбираю очередной пример программирования и не могу догнать как именно работает эта программа:
{
bool p = false, q = false;
int i, j;
for (i = 0; i<2; i++)
{
for (j = 0; j <2; j++)
{
if (i == 0) p = true;
if (i ==1) p = false;
if (j == 0) q = true;
if (j == 1) q = false;
Console.WriteLine("p равно " + p + ", q равно " + q);
if (!p | q)
Console.WriteLine("Результат импликации " + p + " и " + q + " равен " + true);
Console.WriteLine();
}
}
}
Вывод программы:
p равно True, q равно True
Результат импликации True и True равен True
p равно True, q равно False
p равно False, q равно True
Результат импликации False и True равен True
p равно False, q равно False
Результат импликации False и False равен True
Здесь встроен цикл в цикле. Ну первый цикл я понял как проходит - i=0, j=0, соответственно значения p и q = true.
Потом, судя по тому, что p=true, q = false, выполняется только "внутренний" цикл. В результате i=0, j=1.
Потом идет третий цикл. Почему q становится true? Ведь j уже равен единице, т.е. q должен быть false. Когда j успел стать нулем?
И как понять вот эту запись: if (!p | q)? Этот оператор срабатывает каждый цикл. Зачем он тогда нужен?
Auberdin
Еще раз
Цитата:
Не о циклах надо говорить, а об итерациях цикла. Нет никакого третьего цикла, есть два цикла по две итерации в каждом. Внутри каждой итерации первого цикла выполняется второй цикл с двумя итерациями. i и j:
0, 0
0, 1
1, 0
1, 1
Цитата:
Не понятно что не понятно. Всё же очевидно, для вывода сообщения когда результат импликации равен true.
Еще раз
Цитата:
У тебя есть возможность запустить программу под отладкой и выполнять её пошагово, смотри меню Debug(Отладка) в Visual Studio
Не о циклах надо говорить, а об итерациях цикла. Нет никакого третьего цикла, есть два цикла по две итерации в каждом. Внутри каждой итерации первого цикла выполняется второй цикл с двумя итерациями. i и j:
0, 0
0, 1
1, 0
1, 1
Цитата:
И как понять вот эту запись: if (!p | q)? Этот оператор срабатывает каждый цикл. Зачем он тогда нужен?
Не понятно что не понятно. Всё же очевидно, для вывода сообщения когда результат импликации равен true.
Спасибо. Разобрался.
Auberdin, если в книжке, которую читаешь нет про битовые операции(хотя странно, зачем дан этот пример), то достаточно почитать ту же википедию: Битовые операции
NeoAnomaly
Битовые операции как раз в следующей главе встретились. Читаю "Герберт Шилдт - C# 4.0. Полное руководство - 2011"
И, как мне кажется, битовые операции это самый адЪ.
Битовые операции как раз в следующей главе встретились. Читаю "Герберт Шилдт - C# 4.0. Полное руководство - 2011"
И, как мне кажется, битовые операции это самый адЪ.
Подскажите, а в Visual Studio можно как-нибудь отследить в какой последовательности исполняется программа и исполнять ее пошагово?
Программа работает без ошибок, просто я не понимаю последовательность ее работы.
Программа работает без ошибок, просто я не понимаю последовательность ее работы.
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
Предыдущая тема: Как удалить/добавить/отключить/включить устройство?
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.