【マック】Macintoshプログラミング質問箱

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2005/04/09(土) 23:47:34
   三|三
  イ `<             ,..-──- 、         _|_
   ̄             /. : : : : : : : : : \        |_ ヽ
   ∧           /.: : : : : : : : : : : : : : ヽ      (j  )
   /  \        ,!::: : : :,-…-…-ミ: : : : :',
              {:: : : : :i '⌒'  '⌒' i: : : : :}     _ヽ_∠
  └┼┘          {:: : : : | ェェ  ェェ |: : : : :}       lニl l |
.   |_|_|  , 、      { : : : :|   ,.、   |:: : : :;!      l─| l 亅
   __   ヽ ヽ.  _ .ヾ: :: :i r‐-ニ-┐ | : : :ノ        _
    /     }  >'´.-!、 ゞイ! ヽ 二゙ノ イゞ‐′      l  `ヽ
   ´⌒)    |    −!   \` ー一'´丿 \       l/⌒ヽ
    -'    ノ    ,二!\   \___/   /`丶、      _ノ
        /\  /    \   /~ト、   /    l \
       / 、 `ソ!      \/l::::|ハ/     l-7 _ヽ
      /\  ,へi    ⊂ニ''ー-ゝ_`ヽ、    |_厂 _゙:、
      ∧   ̄ ,ト|    >‐- ̄`    \.  | .r'´  ヽ、
     ,ヘ \_,. ' | |    丁二_     7\、|イ _/ ̄ \
2011/01/03(月) 12:58:31
直接プログラミングと関係無い話かも知れませんが、
osxで動くターミナルでおすすめのものってありますか?
標準のターミナルも悪くないんですが、
唯一の問題がcommandをALTとして使えない、というところ
これさえクリアできれば乗り換えたいなと思っているんですが
2011/01/03(月) 21:58:42
>>403
OS9なら
起動項目に入れればいい。
406デフォルトの名無しさん
垢版 |
2011/01/04(火) 00:10:26
>>403
手元のSnow Leopardでみたら
システム環境設定→アカウント→ログイン項目

>>404
互換ってiTermぐらいしか知らないがAlt使ってなにするのかな
407デフォルトの名無しさん
垢版 |
2011/01/04(火) 01:37:15
http://code.google.com/p/chipmunk-physics/
これをxcodeとcmakeでそれぞれコンパイルと実行してみたのだが
明らかにxcodeでコンパイルしたのよりmakeしたほうが実行速度が速いのです
その差が出る理由が知りたいのですが。。
2011/01/04(火) 15:57:45
>>407
さあ?
どうせXcodeのはDebugのままでビルドしたんでしょ?
2011/01/04(火) 18:20:17
>>406
主にカーソル移動なんですが、ALT+Bで単語分後退とか、ALT+Fで単語分前進、
ALT+Dで単語分キル、ALT+>で入力履歴の最後へ移動とか、そういう感じです
この辺指が覚えちゃってるものでその通りの挙動にならないと凄くイライラするのです
2011/01/08(土) 02:14:45
emacs
2011/01/08(土) 03:26:04
>>409
X11のxterm使えば?
コンソールから日本語入れられないけどCommandキーをMetaにはできるよ
2011/02/23(水) 00:56:49.87
iPadでPDFを見るアプリを作っているのですが、
PDF内に埋め込んだリンクを動作させるにはどうすればいいでしょうか。
2011/03/06(日) 09:09:22.76
link.enable(true);
2011/04/18(月) 07:52:41.28
インストーラ(Install Helper.app)の左に出ている縦に並んだ工程リストみたいなのって
どうやればいいんでしょうか?
インストーラのリソース覗いてみましたが左半分のリソースは無いんですよね。
プログラムで作っているようですが、あの見た目の部品を作るAPIってちょっと調べた限りで
見つかりませんでした。
ご存知あればお願いします。
2011/04/19(火) 18:14:35.24
もっと調べる
2011/04/19(火) 18:40:18.93
実はフルスクラッチで各々そっくりに作ってるだけと予想。
2011/04/19(火) 18:43:12.55
>もっと調べる
何か見落としか調べ方が悪いのでしょうか?
cocoaのドキュメントは最新版を全部読んでいます。
2011/04/20(水) 05:34:56.05
Install Helper.appを見ていましたけど、Installer.appを見落としていました。
この中にリソースがあって、工程リストのようなものはリストビューから作っているようでした。
419デフォルトの名無しさん
垢版 |
2011/04/20(水) 19:41:28.29
Objective-Cの『遅さ』を計測したら、JavaやC++の5倍も遅かった
http://www.anlyznews.com/2011/02/objective-c.html

Javaの方が生産性が高いし、C++の方が速度が出るとすると、
Objective-Cは駄目な子に思える
動的言語だという特徴も、一般的なプログラマに魅力があるようではないようだ。
PerlやRubyよりも人気言語になったとは言え、
iPhoneやiPadの普及によるところが大きい。
Objective-Cは事実上のApple社製品専用言語として今後も生き残っていくしか無い
2011/04/20(水) 21:35:42.94
>>419
保守乙。

つ パレートの法則
2011/04/30(土) 12:46:56.33
DeveloperのCocoa Application Tutorialに沿って作ってみようとしたら躓きました
このサンプルはxcode3.2.6でそのまま真似て作れるんでしょうか?
ダメだとしたら、他にxcode3.2.6で動くサンプル(チュートリアル)とか無いでしょうか?
知識はPHPとSQLで遊んだことがある程度です。
2011/04/30(土) 12:59:39.74
どこで躓いたん?

3.2 がターゲットと書いてあるから 3.2.6 でも動きそうだけど・・・
2011/04/30(土) 13:25:35.49
Bridging the Model and View: The Controllerの中程
http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjCTutorial/06Controller/06Controller.html
Add the ConverterController Class to Your Nib Fileで、新しいobject作って
ConverterControllerのクラスを選んだらIdentity tabでこうなってるよね?ね?
と書いてるみたいだけど、真っ白。
直前にConverterController.h開いた時点で、クラス無いけど?とエラー吐いてる
2011/04/30(土) 14:15:13.16
>>423
ウチでもそうなりました(XCode 3.2.6 on Mac OS X 10.6)。

そこは無視して次のステップに進んだら outlet の接続が出来たので
そのまま進んでみたら良いんじゃないかな。
2011/07/18(月) 14:17:40.00
最近MACを始めたのですが
C言語またはObjective-Cを使い
MACでLinuxの/proc/uptimeやiTronのget_timeのように
システム起動時間を取るにはどのようにしたらいいのでしょうか?
2011/07/18(月) 14:45:54.21
>>425
UNIX/C 的には sysctl を使うのが普通かな
(ObjC 的な解法も別にあると思います)

http://www.opensource.apple.com/source/shell_cmds/shell_cmds-56/w/w.c

Mac OS X のかなりの部分はソースコードが公開されていますので、
参考にされると良いと思います
2011/07/18(月) 22:41:22.94
gccの達人おる?
ud2aが埋め込まれて困っとる。
なんの変哲もない四則演算とif分岐の途中で突然現れる。
ググったらなんかBUG();何ちゃらでたけどよーわからん。
なんぞこれ??
2011/07/19(火) 21:17:34.65
>>426
丁寧にありがとうございました

教えていただいたソースコードを参考に調べた結果
システム起動時刻と現在時刻の差分で経過時間は取れるようですね

ただ、この方法だと時刻が変更になった場合対応できないので
また、sysctlのmanページ見ても取れそうにないので
もう少し調べないとだめですが・・・
429デフォルトの名無しさん
垢版 |
2011/07/19(火) 22:36:42.70
>>428
そっから先は自分で調べなさいな
ネットで人に教えてもらうことと自分で調べることは大違いだよ
2011/07/19(火) 22:54:50.37
>>428
他の方法だと、clock_get_uptime() という関数があるみたいね

http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KernelProgramming/services/services.html

実装は追い掛けていないので、使えるかどうかは分かりませんが
431ななし。
垢版 |
2011/07/27(水) 15:05:41.79
カ オ ス ラ ウ ン ジ ゆ る せ な ぁ い ー
432デフォルトの名無しさん
垢版 |
2011/10/13(木) 14:25:08.28
OSXで、ほかのプロセスの環境変数を覗く方法って存在しますか?
2011/10/19(水) 13:11:53.97
まずコアをはかせます
434デフォルトの名無しさん
垢版 |
2011/10/25(火) 21:02:26.34
macのノート買おうと思ってます。今だとAirかProかの選択肢ですが
どちらを選ぶかでプログラミングに不都合あるもんでしょうか。

例えばなんですが、WindowsではIISの制限がグレードによって異なり、
開発時には開発ツールのサーバを利用できるものの、
ちょっとした実運用をという段階では支障が出てしまうなど、あり得ると思います。
プログラム開発目的ならProにしとけとか、もしあるようなら教えてください。
2011/10/25(火) 21:12:51.38
>>434
そんな違いはないよ。自分は Air 13 インチ使ってるけど、何の問題もない。
Air は後からメモリやディスクの増設はできないから、最初から 4GB にすることを勧める。
436434
垢版 |
2011/10/25(火) 23:23:40.38
>>435
ありがとうございます。すっきりしました!
2011/10/29(土) 21:52:00.66
マックは何もかも初になるのだけど、
winで言うところのレジストリ操作(値の登録や取得)って何に置き換わるのかな
2011/10/29(土) 22:05:22.13
>>437
自アプリの設定とかなら NSUserDefaults
2011/10/29(土) 22:11:49.12
>>438
ありがとう
2011/12/08(木) 14:28:59.67
thx
2011/12/23(金) 12:00:29.48

プログラムから、アプリケーションの
パッケージをアンインストールする処理を
書きたいのですが、何かAPIのようなものは
ありますか。

Mac OS X 10.5 以降で使えるもので
お願いしたいと思います。

それとも、/Application フォルダーの中の、
.app フォルダを捜し出して消去するほか
ないのでしょうか?

よろしくお願いします。
442デフォルトの名無しさん
垢版 |
2011/12/27(火) 18:17:22.39
俺が作ったアプリ以外は認めない 全て削除する

ってこと?
2012/01/07(土) 08:31:41.79
c言語で初期設定ファイルってどう扱うの?
winから着たばかりでさっぱり。

objective-cは無しの方向で。
2012/01/07(土) 08:48:35.05
は?
2012/01/07(土) 08:50:54.96
レジストリって概念がないじゃない?
.plist ってのがアプリごと固有で作れるみたいなんだけど
それの作り方とかが知りたい
446445
垢版 |
2012/01/07(土) 08:57:18.20
http://www.itmedia.co.jp/enterprise/articles/0705/30/news011.html
これでいけるのかな
2012/01/07(土) 09:54:31.22
>>443
Xcode使ってないの?
2012/01/07(土) 10:37:15.72
自分で適当な名前のファイル作って、そこの変数のデータを書き込むだけ。
2012/01/07(土) 16:11:11.80
CFPreferencesというのがありますですよ
http://developer.apple.com/library/mac/#documentation/CoreFoundation/Reference/CFPreferencesUtils/Reference/reference.html
450445
垢版 |
2012/01/07(土) 16:29:05.19
>>447
Xcode 3 つかってるよ。

>>448
適当にというのは、ファイルストリームつかってということかな。

>>449
ありがとう、みてみます
2012/01/07(土) 16:37:21.14
いいから最初はNSUserDefaultsを使いなさい
452445
垢版 |
2012/01/07(土) 16:43:32.80
NS系って、C言語と共存できるの?
Adobe系のプラグインのWindows移植をしないといけないから
開発言語はCかC++になるのだよね
2012/01/07(土) 16:56:33.21
C言語のスーパーセットだからそら共存できるよ

たとえば文字列を扱うNSStringはstringWithCStringって初期化メソッドでconst charから作れるし
そのインスタンスにcStringメッセージを送ればconst charを吐き出すし

Objective-Cを覚えたくないなら使わないで好きにファイル作って設定保存すればいいけど
454445
垢版 |
2012/01/07(土) 17:43:37.37
Xcodeってフレームワーク追加したらプロジェクトの種類(cocoaとかiOS)きにせず
そのフレームワークのライブラリが使えるようになるってこと?

Objective-Cを使えるなら使いたいけど、Adobe用のプラグイン(.plugin)を吐き出す形で
どうやるのかが分からない状態。

既存のCプロジェクトに何を追加すれば、objective-cのコードで記述できるようになるのかな。


455445
垢版 |
2012/01/07(土) 18:19:40.22
あれ、ファイル名を .mm にして、FoundationをインポートしたらObjective-Cでかけるようになったけど
あってるかな。
2012/01/07(土) 21:25:30.00
CommandLineベースのプロジェクトでNSUserDefaultsを使うことに成功したんだけど
これで保存した値ってどこにあるplistに保存されるの?
2012/01/09(月) 18:44:34.10
コマンドラインベースのプログラムから
ポップアップウィンドウを表示する方法ってある?
或る場合、参考になるサイトなど教えていただければうれしい。
2012/01/09(月) 19:21:14.23
普通にGUIベースで書き直したらあかんの?
2012/01/09(月) 20:11:32.37
あかんのです
2012/01/10(火) 20:57:20.31
>>455
あってる
C言語でstdio.hを読み込むように、Cocoaを使うには
#import <Foundation/Foundation.h>
するだけ

>>456
プログラムのデータはMacならユーザフォルダ内の不可視フォルダ、Libraryにだいたい保存される
2012/01/10(火) 21:07:47.00
>>455
拡張子 .mm は Objective-C++ と言って、Objective-C と C++ の両方使えるよ。
2012/01/11(水) 01:05:34.62
>>460
>>461

ありがとうー。順調です。
2012/01/11(水) 16:29:33.37
テーブルビューの、セルをデキューって具体的に何をしてるのでしょうか?

セルをキャッシュして再利用するのはわかるんですけど、セルのどこからどこまでを再利用してるのかわかりません。
セルに書いた文字まで全てキャッシュされているのでしょうか。
よくわかっていないので質問文も曖昧です・・・すいません。
2012/01/17(火) 16:17:06.20
プロジェクトを新規作成して、xibファイルがなかったのでそれもつくって、
Interface builderで背景を置いたんですが、実行しても表示されません…

どうやったら表示されるんでしょうか…?
2012/01/17(火) 16:35:15.17
すみません事故解決しました。

4.2からはstoryboardから出来るんですね。
2012/01/18(水) 00:04:02.62
ここは Mac プログラミングのスレなんだが。
iPhone プログラミングのスレは Mac 板にあるよ。
2012/01/31(火) 10:54:05.71
ユーザーがアプリのインストールするフォルダを変えてしまう場合を
想定した質問です。

Macにはレジストリがありませんが、インストーラを起動したとき、
インストーラが「既に自アプリがインストールされているかどうか」
を判断して動作を変更する方法はあるのでしょうか?(既にインス
トールされていますと表示したり、本体を起動したりする)

大抵のアプリはApplicationsの下にインストールされますが、
少ないながらも開発系のツールなどは、デフォ以外にユーザー
がインストールする場所を変える例もあるので。
2012/01/31(火) 11:02:05.73
-[NSWorkspace absolutePathForAppBundleWithIdentifier:]
で探す。
アプリの名前を変えられていても見つけられます

バンドルIDが登録されるタイミングが良く分からないので
もしかすると一度も起動されていない場合は見つからないかも。
469466
垢版 |
2012/01/31(火) 13:22:32.18
>>468
どうもありがとうございました
470467
垢版 |
2012/01/31(火) 13:24:06.79
>>469
467でした。スレ汚し申し訳ない
2012/02/19(日) 00:30:19.39
最初にMainMenu.xibが作られるが、ここのmenuのdelegateを設定しても、
menuWillOpenとかdelegateが呼ばれない。
なんでだ・・・
2012/02/19(日) 01:15:35.44
メニューの階層構造は

Main Menu
 Menu Item - MyApp
  Menu - MyApp
   Menu Item - About MyApp
   ...
 Menu Item - File
  Menu - File
   ...
 Menu Item - Edit
  Menu - Edit
   ...

みたいになってるけど、Main Menu じゃなくて Menu - MyApp とか Menu - File とかの
delegate を設定したら menuWillOpen: 呼ばれたよ。
473471
垢版 |
2012/02/19(日) 02:38:01.24
>>472
うまくいった!
なんか過疎スレっぽいからあきらめてたのに即レスうれしい。
マジで困ってたので・・・ありがとう(´;ω;`)ブワッ
474471
垢版 |
2012/02/19(日) 02:42:27.03
あ、あともう1点
[NSApp runForModal:modalWindow]
[mainWindow close] or [mainWindow orderOut:nil];
みたいにモーダルダイアログを表示して、それが閉じられたらメインのウィンドウを閉じる。
メインウィンドウは最後の1枚になるウィンドウで閉じられるとアプリ終了する。

このようにしてるんだけど、画面にclose呼んだ後もウィンドウが残ってしまう。
ウィンドウをクリックすると消える。その後、アプリも終了する。
イベントループと絡んでるのかな。
perfomSelector afterDelay使ってcloseしてもダメ・・・解決方法がわからない。
2012/02/19(日) 11:00:55.60
>>473
新mac板にもプログラミングのスレッドあるよ。cocoaはさっぱりとか。

>>474
runModalForWindow: はモーダル処理が終わるまで処理が戻ってこない。
クローズボタンが押された時点ではまだモーダルウインドウは閉じずに stopModalでモーダル処理を終了させて、
モーダルウインドウを閉じるのは runModalForWindow: から帰ってきてからにするといいっぽい。
ってか、runModalForWindow: よりも beginModalSessionForWindow: とか beginSheet:modalForWindow:... の方がいいんじゃない?
476471
垢版 |
2012/02/21(火) 16:18:21.33
>>475
>>474の件もbeginModalSessionForWindow使ったらうまくいった。
重ね重ねありがとう。
iOSは3年くらいやってて熟知してるんだけど、
CocoaはiOSの劣化版SDKに見えるね・・・仕方ないけど。
477営利利用に関するLR審議中@詳細は自治スレへ
垢版 |
2012/03/29(木) 01:24:20.28
xcode って .hに宣言書いたらワンタッチで .mに写してくれたりしないの?
2012/03/29(木) 12:57:50.94
>>477
何に使うんだよ
2012/04/01(日) 12:05:48.87
.
2012/05/07(月) 14:20:31.57
GKに関してなんだけど、プログラム起動するとき、開発者コードと署名をチェックする為に、起動の
たびにアップルのサーバーに問い合わせるのだろうか?
2012/05/13(日) 01:31:35.06
NSImageってどうやって使うの?
Xcode 3.2.6なんだけど、何故か表示できない。
xibでcustom view追加しないで表示したいんだけど出来ない。
コレできないとゲーム作れないよー(´・ω・`)ショボーン

-(void)drawInRect:(NSRect)dirtyRect{
NSImage *outPutImage = [NSImage imageNamed:@"sample.jpg"];

[outPutImage drawAtPoint:NSMakePoint(0, 0)
fromRect:NSMakeRect(0,0,100,100)
operation:NSCompositeSourceOver
fraction:1.0];
}

誰か教えてー
482デフォルトの名無しさん
垢版 |
2012/05/13(日) 18:45:50.58
>>481
drawInRect:??
drawRect:じゃないのか?
483デフォルトの名無しさん
垢版 |
2012/06/28(木) 18:36:57.26
質問です。
Objective-CでMacOS Xアプリの作成をしようとしている初心者です。

プログラムの実行中に、タイトルバーの文字を状態などに応じて変更したい
のですが、やり方を教えてください。
2012/06/28(木) 18:40:45.82
NSWindow の -setTitle: じゃ駄目なの?
485デフォルトの名無しさん
垢版 |
2012/06/28(木) 18:59:55.48
おお、早速の回答ありがとうございます。
やってみます、ありがとうございました。
2012/06/29(金) 15:51:12.44
ファイルアクセスについて質問です。

1.WindowsAPIの CreateFile()で指定できる下記属性について、Macでは代わりになる
手段はありますか?
・FILE_FLAG_NO_BUFFERING
・FILE_FLAG_RANDOM_ACCESS
・FILE_FLAG_SEQUENTIAL_SCAN

2.WindowsAPIの CreateFile()では、属性にFILE_FLAG_OVERLAPPEDを指定することで、
非同期アクセスができるのですが、Macではファイルの非同期アクセスを行う方法
はありますか?

2012/06/29(金) 16:06:32.81
CFStream や NSStream で出来る。
2012/06/30(土) 18:20:24.57
>>486
UNIXなんだから相当する機能はPOSIX APIにあるよ。
WindowsAPIなんて特殊APIの考え方は捨てな。
2012/07/02(月) 13:14:32.60
> 487,488
回答ありがとうございます。
POSIX APIを調査してみました。

open()に設定するフラグで、
FILE_FLAG_NO_BUFFERING → O_DIRECT
FILE_FLAG_OVERLAPPED → O_ASYNC( fcntl()で設定する )

でOKですか?

・FILE_FLAG_RANDOM_ACCESS
・FILE_FLAG_SEQUENTIAL_SCAN
これらについては、まだ見当たるものが見つかっていません。
2012/07/02(月) 15:51:09.65
O_RANDOMとO_SEQUENTIALというフラグがあったけど、MacOS Xに対応しているのか不明
です。
2012/07/02(月) 22:52:49.50
キャッシュのバイパスや先読みの使用はfcntl()で指示できる。
非同期I/OはPOSIX AIO等でもできるけど、thread使うべきでしょ。
2012/07/14(土) 07:22:21.22
今dev centerにログインできない?
493デフォルトの名無しさん
垢版 |
2012/08/11(土) 02:19:07.35
PHPでCocoaAPIへアクセスしたいのですが
現在そのようなブリッジが存在しません。

ないなら作ってみようかと思いPyObjcのソースコードを眺めていたのですが
全体像がなかなか掴めません。

グーグルでMacRubyやPyObjcを検索してもブリッジ間の仕組みを詳しく解説しているような情報も存在しません。

もしご存知の方がいらっしゃいましたら教えて頂きたいのですが、

こういったライブラリーは最終的にobjective-cのソースコードを吐き出すジェネレータのような仕組みになっているのでしょうか?
もっとスマートな別の方法が存在するのでしょうか?

ヨロシクお願いします。
2012/08/11(土) 04:33:44.81
普通C関数呼び出しのインターフェースがある。
PHP なら PHP Extension 使え。

つーかスレチ。PHP のスレで訊け
495デフォルトの名無しさん
垢版 |
2012/08/11(土) 10:59:15.31
>>494
ありがとうございます
2012/08/11(土) 11:24:12.55
いえいえ
2012/08/15(水) 10:23:34.26
今、Lion+Xcode4.3.3で開発しています。
Mountain Lionがリリースされましたが、私のiMacは7/24購入なので8/24まで
の無償アップグレード対象なのですが、アップグレードしても開発に影響は
ありませんか?アップグレードすべきですか?
2012/08/15(水) 13:17:40.67
じゃあ、いつやるか?
2012/08/15(水) 15:22:50.43
>>498
今開発中のプロジェクトファイルが使えなくなったり、作ったプログラムが
Lionで動かなかったりしたら困るので、躊躇してるんです。
何せMac初めてなので、ビクビクしてるんですけど、大丈夫ってことですか?
2012/08/15(水) 15:27:21.62
アップデート試して、それで駄目なら Time Machine 使って戻ればいいじゃん。
2012/08/15(水) 15:56:01.13
TimeMachineというのがあるのですね、調べてみます。
ありがとうございました。
2012/08/16(木) 18:29:25.34
ML別ボリュームに入れればいいじゃん
2012/08/17(金) 17:12:08.34
499です。MountainLionのコンテンツコードを入手できました。
Appleサポートに問い合わせたら、コンテンツコードさえ入手できていれば、
期限はないそうなので、今の開発が一段落したらゆっくりアップデートする
ことにします。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況